19 #include "common/common.h"
21 #include "kernels_trace.h"
56 static inline pastix_fixdbl_t
71 pastix_fixdbl_t flops = 0.;
75 assert( !(cblkA->
cblktype & CBLK_COMPRESSED) );
76 assert( cblkB->
cblktype & CBLK_COMPRESSED );
77 assert( cblkA->
cblktype & CBLK_LAYOUT_2D );
111 for (; blokA < lblokA; blokA++) {
166 static inline pastix_fixdbl_t
180 pastix_fixdbl_t flops = 0.;
183 assert( (cblkA->
cblktype & CBLK_COMPRESSED) );
184 assert( (cblkB->
cblktype & CBLK_COMPRESSED) );
192 params.
alpha = alpha;
197 params.
lwork = lwork;
206 for (; blokA < lblokA; blokA++) {
256 static inline pastix_fixdbl_t
264 pastix_int_t m = cblkA->
stride;
265 pastix_fixdbl_t flops = m * n;
267 assert( !(cblkA->
cblktype & CBLK_COMPRESSED) );
268 assert( !(cblkB->
cblktype & CBLK_COMPRESSED) );
279 assert( (A != NULL) && (B != NULL) );
285 pastix_cblk_lock( cblkB );
289 pastix_cblk_unlock( cblkB );
297 pastix_int_t lda, ldb;
300 assert( cblkA->
cblktype & CBLK_LAYOUT_2D );
301 assert( cblkB->
cblktype & CBLK_LAYOUT_2D );
303 for (; blokA < lblokA; blokA++) {
320 pastix_cblk_lock( cblkB );
324 pastix_cblk_unlock( cblkB );
364 pastix_ktype_t ktype = PastixKernelGEADDCblkFRFR;
365 pastix_fixdbl_t time, flops = 0.0;
366 pastix_int_t m = cblkA->
stride;
373 if ( cblkB->
cblktype & CBLK_COMPRESSED ) {
374 if ( cblkA->
cblktype & CBLK_COMPRESSED ) {
375 ktype = PastixKernelGEADDCblkLRLR;
376 time = kernel_trace_start( ktype );
381 ktype = PastixKernelGEADDCblkFRLR;
382 time = kernel_trace_start( ktype );
388 if ( cblkA->
cblktype & CBLK_COMPRESSED ) {
390 time = kernel_trace_start( ktype );
393 ktype = PastixKernelGEADDCblkFRFR;
394 time = kernel_trace_start( ktype );
399 kernel_trace_stop( cblkB->
fblokptr->
inlast, ktype, m, n, 0, flops, time );