mirror of
https://github.com/amd/blis.git
synced 2026-05-11 01:30:00 +00:00
Fixed outdated fusing factor macros in 1f kernels.
Details:
- Updated level-1f kernels for x86_64 and bgq to use renamed fusing factor
macros. Meant to include this in 5e54f46c. Thanks to Fran for pointing
this out.
This commit is contained in:
@@ -174,15 +174,15 @@ void bli_dddaxpyf_opt_var1(
|
||||
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_fuse_fac), 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, PASTEMAC(d, axpyf_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_fuse_fac) || inca != 1 || incx != 1 || incy != 1 || bli_is_unaligned_to( a, 32 ) || bli_is_unaligned_to( y, 32 ) )
|
||||
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 ) )
|
||||
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_fuse_fac), 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", PASTEMAC(d, axpyf_fusefac), inca, incx, incy, bli_is_unaligned_to(a, 32), bli_is_unaligned_to( y, 32));
|
||||
// printf("DEFAULTING TO REFERENCE IMPLEMENTATION\n");
|
||||
PASTEMAC3(d,d,d,axpyf_unb_var1)( conja, conjx, m, b_n, alpha_cast, a_cast, inca, lda, x_cast, incx, y_cast, incy );
|
||||
return;
|
||||
|
||||
@@ -26,39 +26,28 @@
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
*/
|
||||
|
||||
/*
|
||||
void bli_axpyf_opt_var1( obj_t* alpha,
|
||||
obj_t* x,
|
||||
obj_t* y );
|
||||
*/
|
||||
|
||||
//
|
||||
// Define fusing factors.
|
||||
// Prototype axpyf kernel interfaces.
|
||||
//
|
||||
#define bli_saxpyf_fuse_fac BLIS_DEFAULT_FUSING_FACTOR_S
|
||||
#define bli_daxpyf_fuse_fac BLIS_DEFAULT_FUSING_FACTOR_D
|
||||
#define bli_caxpyf_fuse_fac BLIS_DEFAULT_FUSING_FACTOR_C
|
||||
#define bli_zaxpyf_fuse_fac BLIS_DEFAULT_FUSING_FACTOR_Z
|
||||
|
||||
|
||||
#undef GENTPROT3U12
|
||||
#define GENTPROT3U12( ctype_a, ctype_x, ctype_y, ctype_ax, cha, chx, chy, chax, varname ) \
|
||||
\
|
||||
void PASTEMAC3(cha,chx,chy,varname)( \
|
||||
conj_t conja, \
|
||||
conj_t conjx, \
|
||||
dim_t m, \
|
||||
dim_t n, \
|
||||
void* alpha, \
|
||||
void* a, inc_t inca, inc_t lda, \
|
||||
void* x, inc_t incx, \
|
||||
void* y, inc_t incy \
|
||||
conj_t conja, \
|
||||
conj_t conjx, \
|
||||
dim_t m, \
|
||||
dim_t b_n, \
|
||||
ctype_ax* restrict alpha, \
|
||||
ctype_a* restrict a, inc_t inca, inc_t lda, \
|
||||
ctype_x* restrict x, inc_t incx, \
|
||||
ctype_y* restrict y, inc_t incy \
|
||||
);
|
||||
|
||||
INSERT_GENTPROT3U12_BASIC( axpyf_opt_var1 )
|
||||
|
||||
Reference in New Issue
Block a user