Skip to content

Commit 57d4088

Browse files
farazghanikgrytePlaneshifter
authored
bench: refactor to use dynamic memory allocation in blas/base/ddot
PR-URL: #8713 Ref: #8643 Co-authored-by: Athan Reines <kgryte@gmail.com> Reviewed-by: Athan Reines <kgryte@gmail.com> Co-authored-by: Philipp Burckhardt <pburckhardt@outlook.com> Reviewed-by: Philipp Burckhardt <pburckhardt@outlook.com>
1 parent 6c66165 commit 57d4088

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

lib/node_modules/@stdlib/blas/base/ddot/benchmark/c/benchmark.length.c

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,14 @@ static double rand_double( void ) {
9696
*/
9797
static double benchmark1( int iterations, int len ) {
9898
double elapsed;
99-
double x[ len ];
100-
double y[ len ];
99+
double *x;
100+
double *y;
101101
double z;
102102
double t;
103103
int i;
104104

105+
x = (double *) malloc( len * sizeof( double ) );
106+
y = (double *) malloc( len * sizeof( double ) );
105107
for ( i = 0; i < len; i++ ) {
106108
x[ i ] = ( rand_double()*20000.0 ) - 10000.0;
107109
y[ i ] = ( rand_double()*20000.0 ) - 10000.0;
@@ -119,6 +121,8 @@ static double benchmark1( int iterations, int len ) {
119121
if ( z != z ) {
120122
printf( "should not return NaN\n" );
121123
}
124+
free( x );
125+
free( y );
122126
return elapsed;
123127
}
124128

@@ -131,12 +135,14 @@ static double benchmark1( int iterations, int len ) {
131135
*/
132136
static double benchmark2( int iterations, int len ) {
133137
double elapsed;
134-
double x[ len ];
135-
double y[ len ];
138+
double *x;
139+
double *y;
136140
double z;
137141
double t;
138142
int i;
139143

144+
x = (double *) malloc( len * sizeof( double ) );
145+
y = (double *) malloc( len * sizeof( double ) );
140146
for ( i = 0; i < len; i++ ) {
141147
x[ i ] = ( rand_double()*20000.0 ) - 10000.0;
142148
y[ i ] = ( rand_double()*20000.0 ) - 10000.0;
@@ -154,6 +160,8 @@ static double benchmark2( int iterations, int len ) {
154160
if ( z != z ) {
155161
printf( "should not return NaN\n" );
156162
}
163+
free( x );
164+
free( y );
157165
return elapsed;
158166
}
159167

0 commit comments

Comments
 (0)