@@ -113,13 +113,19 @@ main (int argc, char *argv[])
113
113
114
114
for (j = 0 ; j < m ; j ++ )
115
115
{
116
- for (i = 0 ; i < n ; i ++ )
116
+ for (i = 0 ; i < k ; i ++ )
117
117
{
118
118
A [j * k + i ] = ((FLOAT ) rand () / (FLOAT ) RAND_MAX ) + 0.5 ;
119
- B [j * k + i ] = ((FLOAT ) rand () / (FLOAT ) RAND_MAX ) + 0.5 ;
120
119
sbstobf16_ (& one , & A [j * k + i ], & one , & atmp , & one );
121
- sbstobf16_ (& one , & B [j * k + i ], & one , & btmp , & one );
122
120
AA [j * k + i ].v = atmp ;
121
+ }
122
+ }
123
+ for (j = 0 ; j < n ; j ++ )
124
+ {
125
+ for (i = 0 ; i < k ; i ++ )
126
+ {
127
+ B [j * k + i ] = ((FLOAT ) rand () / (FLOAT ) RAND_MAX ) + 0.5 ;
128
+ sbstobf16_ (& one , & B [j * k + i ], & one , & btmp , & one );
123
129
BB [j * k + i ].v = btmp ;
124
130
}
125
131
}
@@ -147,10 +153,7 @@ main (int argc, char *argv[])
147
153
148
154
for (i = 0 ; i < n ; i ++ )
149
155
for (j = 0 ; j < m ; j ++ )
150
- if (fabs (CC [i * m + j ] - C [i * m + j ]) > 1.0 )
151
- ret ++ ;
152
- for (i = 0 ; i < n ; i ++ )
153
- for (j = 0 ; j < m ; j ++ )
156
+ {
154
157
for (l = 0 ; l < k ; l ++ )
155
158
if (transA == 'N' && transB == 'N' )
156
159
{
@@ -169,10 +172,11 @@ main (int argc, char *argv[])
169
172
DD [i * m + j ] +=
170
173
float16to32 (AA [k * j + l ]) * float16to32 (BB [i + l * n ]);
171
174
}
172
- for ( i = 0 ; i < n ; i ++ )
173
- for ( j = 0 ; j < m ; j ++ )
175
+ if ( fabs ( CC [ i * m + j ] - C [ i * m + j ]) > 1.0 )
176
+ ret ++ ;
174
177
if (fabs (CC [i * m + j ] - DD [i * m + j ]) > 1.0 )
175
178
ret ++ ;
179
+ }
176
180
}
177
181
free (A );
178
182
free (B );
0 commit comments