DBM: Fix support for zero sized blocks

This commit is contained in:
Ole Schütt 2023-09-15 23:21:00 +02:00 committed by Ole Schütt
parent 00bd377ddf
commit aacccca480
4 changed files with 53 additions and 1 deletions

View file

@ -260,7 +260,7 @@ static void multiply_packs(const bool transa, const bool transb,
}
// Count flops.
assert(m * n * k > 0);
assert(m * n * k >= 0);
flop_sum += 2 * m * n * k;
dbm_library_counter_increment(m, n, k);

View file

@ -20,6 +20,7 @@ dbcsr_blocks_02.inp 58 1.0E-14
dbcsr_blocks_03.inp 58 1.0E-14 21561533688.640675
dbcsr_blocks_04.inp 58 1.0E-14 21304439095.77774
dbcsr_blocks_05.inp 58 1.0E-14 21455488291.450737
dbcsr_blocks_06.inp 58 1.0E-14 165599.60719889530
dbcsr_types_01.inp 58 1.0E-14 272584373.29241335
dbcsr_types_02.inp 58 1.0E-14 272584373.29241335
dbcsr_types_03.inp 58 1.0E-14 272584373.29241335
@ -33,6 +34,7 @@ dbm_blocks_02.inp 58 5.0E-14
dbm_blocks_03.inp 58 5.0E-14 21561533688.640675
dbm_blocks_04.inp 58 5.0E-14 21304439095.77774
dbm_blocks_05.inp 58 5.0E-14 21455488291.450737
dbm_blocks_06.inp 58 5.0E-14 165599.60719889530
dbm_order_N.inp 58 5.0E-14 1910924.8949438382
test_eri_mme_accuracy.inp 0

View file

@ -0,0 +1,25 @@
&GLOBAL
PRINT_LEVEL MEDIUM
PROGRAM_NAME TEST
RUN_TYPE NONE
&TIMINGS
THRESHOLD 0.00000000001
&END
&END GLOBAL
&TEST
&CP_DBCSR
K 80
M 80
N 80
TRANSA FALSE
TRANSB TRUE
N_LOOP 2
ASPARSITY 0.5
BSPARSITY 0.5
CSPARSITY 0.5
FILTER_EPS 0.0
bs_m 1 0 1 1 1 2 1 3
bs_k 1 0 1 1 1 2 1 3
bs_n 1 0 1 1 1 2 1 3
&END
&END TEST

View file

@ -0,0 +1,25 @@
&GLOBAL
PRINT_LEVEL MEDIUM
PROGRAM_NAME TEST
RUN_TYPE NONE
&TIMINGS
THRESHOLD 0.00000000001
&END
&END GLOBAL
&TEST
&DBM
K 80
M 80
N 80
TRANSA FALSE
TRANSB TRUE
N_LOOP 2
ASPARSITY 0.5
BSPARSITY 0.5
CSPARSITY 0.5
FILTER_EPS 0.0
bs_m 1 0 1 1 1 2 1 3
bs_k 1 0 1 1 1 2 1 3
bs_n 1 0 1 1 1 2 1 3
&END
&END TEST