예제 #1
0
파일: test_gemm.c 프로젝트: flame/blis
void libblis_test_gemm_impl
     (
       iface_t   iface,
       obj_t*    alpha,
       obj_t*    a,
       obj_t*    b,
       obj_t*    beta,
       obj_t*    c
     )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
#if 0
//bli_printm( "alpha", alpha, "%5.2f", "" );
//bli_printm( "beta", beta, "%5.2f", "" );
bli_printm( "a", a, "%5.2f", "" );
bli_printm( "b", b, "%5.2f", "" );
bli_printm( "c", c, "%5.2f", "" );
#endif
//if ( bli_obj_length( b ) == 16 &&
//     bli_obj_stor3_from_strides( c, a, b ) == BLIS_CRR )
//bli_printm( "c before", c, "%6.3f", "" );
		bli_gemm( alpha, a, b, beta, c );
#if 0
if ( bli_obj_length( c ) == 12 &&
     bli_obj_stor3_from_strides( c, a, b ) == BLIS_RRR )
bli_printm( "c after", c, "%6.3f", "" );
#endif
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #2
0
파일: test_trsm.c 프로젝트: figual/blis
void libblis_test_trsm_impl
     (
       iface_t   iface,
       side_t    side,
       obj_t*    alpha,
       obj_t*    a,
       obj_t*    b
     )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
#if 0
bli_printm( "a", a, "%5.2f", "" );
bli_printm( "b", b, "%5.2f", "" );
//bli_printm( "alpha", alpha, "%5.2f", "" );
#endif
		bli_trsm( side, alpha, a, b );
#if 0
bli_printm( "b after", b, "%5.2f", "" );
#endif
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #3
0
void libblis_test_randm_impl( mt_impl_t impl,
                              obj_t*    x )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_randm( x );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #4
0
void libblis_test_scalm_impl( iface_t   iface,
                              obj_t*    beta,
                              obj_t*    y )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_scalm( beta, y );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #5
0
void libblis_test_normfm_impl( iface_t   iface,
                               obj_t*    x,
                               obj_t*    norm )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_normfm( x, norm );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #6
0
void libblis_test_fnormv_impl( mt_impl_t impl,
                               obj_t*    x,
                               obj_t*    norm )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_fnormv( x, norm );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #7
0
void libblis_test_syr_impl( mt_impl_t impl,
                            obj_t*    alpha,
                            obj_t*    x,
                            obj_t*    a )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_syr( alpha, x, a );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #8
0
파일: test_her.c 프로젝트: ShawnLess/blis
void libblis_test_her_impl( iface_t   iface,
                            obj_t*    alpha,
                            obj_t*    x,
                            obj_t*    a )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_her( alpha, x, a );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #9
0
파일: test_axpyf.c 프로젝트: elemental/blis
void libblis_test_axpyf_impl( iface_t   iface,
                              obj_t*    alpha,
                              obj_t*    a,
                              obj_t*    x,
                              obj_t*    y )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_axpyf_kernel( alpha, a, x, y );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #10
0
void libblis_test_herk_impl( mt_impl_t impl,
                             obj_t*    alpha,
                             obj_t*    a,
                             obj_t*    beta,
                             obj_t*    c )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_herk( alpha, a, beta, c );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #11
0
void libblis_test_randv_impl
     (
       iface_t   iface,
       obj_t*    x
     )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_randv( x );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #12
0
void libblis_test_axpy2v_impl( mt_impl_t impl,
                               obj_t*    alpha1,
                               obj_t*    alpha2,
                               obj_t*    x,
                               obj_t*    y,
                               obj_t*    z )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_axpy2v_ker( alpha1, alpha2, x, y, z );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #13
0
void libblis_test_axpy2v_impl( iface_t   iface,
                               obj_t*    alpha1,
                               obj_t*    alpha2,
                               obj_t*    x,
                               obj_t*    y,
                               obj_t*    z,
                               cntx_t*   cntx )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_axpy2v_ex( alpha1, alpha2, x, y, z, cntx );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #14
0
void libblis_test_dotaxpyv_impl( iface_t   iface,
                                 obj_t*    alpha,
                                 obj_t*    xt,
                                 obj_t*    x,
                                 obj_t*    y,
                                 obj_t*    rho,
                                 obj_t*    z )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_dotaxpyv_kernel( alpha, xt, x, y, rho, z );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #15
0
void libblis_test_gemmtrsm_ukr_impl( mt_impl_t impl,
                                     side_t    side,
                                     obj_t*    alpha,
                                     obj_t*    a1x,
                                     obj_t*    a11,
                                     obj_t*    bx1,
                                     obj_t*    b11,
                                     obj_t*    c11 )
{
	switch ( impl )
	{
		case BLIS_TEST_SEQ_UKERNEL:
		bli_gemmtrsm_ukr( alpha, a1x, a11, bx1, b11, c11 );
		break;

		default:
		libblis_test_printf_error( "Invalid implementation type.\n" );
	}
}
예제 #16
0
파일: test_gemm.c 프로젝트: ipolkovn/blis
void libblis_test_gemm_impl( iface_t   iface,
                             obj_t*    alpha,
                             obj_t*    a,
                             obj_t*    b,
                             obj_t*    beta,
                             obj_t*    c )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_gemm( alpha, a, b, beta, c );
		//bli_gemm4m( alpha, a, b, beta, c );
		//bli_gemm3m( alpha, a, b, beta, c );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #17
0
void libblis_test_trsm_impl
     (
       iface_t   iface,
       side_t    side,
       obj_t*    alpha,
       obj_t*    a,
       obj_t*    b
     )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_trsm( side, alpha, a, b );
		//bli_trsm4m( side, alpha, a, b );
		//bli_trsm3m( side, alpha, a, b );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}
예제 #18
0
void libblis_test_dotxaxpyf_impl
     (
       iface_t   iface,
       obj_t*    alpha,
       obj_t*    at,
       obj_t*    a,
       obj_t*    w,
       obj_t*    x,
       obj_t*    beta,
       obj_t*    y,
       obj_t*    z,
       cntx_t*   cntx
     )
{
	switch ( iface )
	{
		case BLIS_TEST_SEQ_FRONT_END:
		bli_dotxaxpyf_ex( alpha, at, a, w, x, beta, y, z, cntx );
		break;

		default:
		libblis_test_printf_error( "Invalid interface type.\n" );
	}
}