Skip to content

Commit 26c5cf4

Browse files
committed
Fixed bug in skx subconfig related to bdd46f9.
Details: - Fixed code in the skx subconfiguration that became a bug after committing bdd46f9. Specifically, the bli_cntx_init_skx() function was overwriting default blocksizes for the scomplex and dcomplex microkernels despite the fact that only single and double real microkernels were being registered. This was not a problem prior to bdd46f9 since all microkernels used dynamically-queried (at runtime) register blocksizes for loop bounds. However, post-bdd46f9, this became a bug because the reference ukernels for scomplex and dcomplex were written with their register blocksizes hard-coded as constant loop bounds, which conflicted the the erroneous scomplex and dcomplex values that bli_cntx_init_skx() was setting in the context. The lesson here is that going forward, all subconfigurations must not set any blocksizes for datatypes corresponding to default/reference microkernels. (Note that a blocksize is left unchanged by the bli_cntx_set_blkszs() function if it was set to -1.)
1 parent 180f8e4 commit 26c5cf4

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

config/skx/bli_cntx_init_skx.c

+6-6
Original file line numberDiff line numberDiff line change
@@ -101,12 +101,12 @@ void bli_cntx_init_skx( cntx_t* cntx )
101101

102102
// Initialize level-3 blocksize objects with architecture-specific values.
103103
// s d c z
104-
bli_blksz_init_easy( &blkszs[ BLIS_MR ], 32, 16, 3, 3 );
105-
bli_blksz_init_easy( &blkszs[ BLIS_NR ], 12, 14, 8, 4 );
106-
bli_blksz_init_easy( &blkszs[ BLIS_MC ], 480, 240, 144, 72 );
107-
bli_blksz_init ( &blkszs[ BLIS_KC ], 384, 384, 256, 256,
108-
480, 480, 256, 256 );
109-
bli_blksz_init_easy( &blkszs[ BLIS_NC ], 3072, 3752, 4080, 4080 );
104+
bli_blksz_init_easy( &blkszs[ BLIS_MR ], 32, 16, -1, -1 );
105+
bli_blksz_init_easy( &blkszs[ BLIS_NR ], 12, 14, -1, -1 );
106+
bli_blksz_init_easy( &blkszs[ BLIS_MC ], 480, 240, -1, -1 );
107+
bli_blksz_init ( &blkszs[ BLIS_KC ], 384, 384, -1, -1,
108+
480, 480, -1, -1 );
109+
bli_blksz_init_easy( &blkszs[ BLIS_NC ], 3072, 3752, -1, -1 );
110110
bli_blksz_init_easy( &blkszs[ BLIS_AF ], 8, 8, -1, -1 );
111111
bli_blksz_init_easy( &blkszs[ BLIS_DF ], 8, 8, -1, -1 );
112112

0 commit comments

Comments
 (0)