Compile-time fix to bgq l1f kernels.

Details:
- Fixed an old reference to bli_daxpyf_fusefac, which no longer exists,
  by replacing it with the axpyf fusing factor (8), and cleaned up the
  relevant section of config/bgq/bli_kernel.h.
- Removed most of the details of the level-3 kernels from the template
  kernel code in config/template/kernels/3 and replaced it with a
  reference to the relevant kernel wiki maintained on the BLIS github
  website.
This commit is contained in:
Field G. Van Zee
2016-04-15 11:15:41 -05:00
parent d5a915dd8d
commit dd62080cea
7 changed files with 22 additions and 498 deletions

View File

@@ -48,18 +48,20 @@ void bli_daxpyf_opt_var1
cntx_t* cntx
)
{
const dim_t fusefac = 8;
if ( bli_zero_dim2( m, b_n ) ) return;
bool_t use_ref = FALSE;
// printf("%d\t%d\t%d\t%d\t%d\t%d\t%d\n", b_n, PASTEMAC(d, axpyf_fusefac), inca, incx, incy, bli_is_unaligned_to(a, 32), bli_is_unaligned_to( y, 32));
// printf("%d\t%d\t%d\t%d\t%d\t%d\t%d\n", b_n, fusefac, inca, incx, incy, bli_is_unaligned_to(a, 32), bli_is_unaligned_to( y, 32));
// If there is anything that would interfere with our use of aligned
// vector loads/stores, call the reference implementation.
if ( b_n < PASTEMAC(d,axpyf_fusefac) || inca != 1 || incx != 1 || incy != 1 || bli_is_unaligned_to( a, 32 ) || bli_is_unaligned_to( y, 32 ) )
if ( b_n < fusefac) || inca != 1 || incx != 1 || incy != 1 || bli_is_unaligned_to( a, 32 ) || bli_is_unaligned_to( y, 32 ) )
use_ref = TRUE;
// Call the reference implementation if needed.
if ( use_ref == TRUE )
{
// printf("%d\t%d\t%d\t%d\t%d\t%d\n", PASTEMAC(d, axpyf_fusefac), inca, incx, incy, bli_is_unaligned_to(a, 32), bli_is_unaligned_to( y, 32));
// printf("%d\t%d\t%d\t%d\t%d\t%d\n", fusefac, inca, incx, incy, bli_is_unaligned_to(a, 32), bli_is_unaligned_to( y, 32));
// printf("DEFAULTING TO REFERENCE IMPLEMENTATION\n");
BLIS_DAXPYF_KERNEL_REF( conja, conjx, m, b_n, alpha, a, inca, lda, x, incx, y, incy );
return;