Coverage for gpaw/test/linalg/test_gemm.py: 100%
20 statements
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-14 00:18 +0000
« prev ^ index » next coverage.py v7.7.1, created at 2025-07-14 00:18 +0000
1from time import time
3import numpy as np
4import pytest
6from gpaw.utilities.blas import mmm
9@pytest.mark.ci
10def test_linalg_gemm():
11 n = 1000
12 a1 = np.eye(n)
13 a1 += 0.0001
14 a2 = 2 * a1
16 b = np.zeros((n, n))
17 t0 = time()
18 mmm(1.0, a1, 'N', a2, 'N', 0.0, b)
19 tgpaw = time() - t0
20 print('gpaw.gemm ', tgpaw)
22 t0 = time()
23 np.dot(a1, a2)
24 tnumpy = time() - t0
25 print('numpy.dot ', tnumpy)
27 """
28 SLID:
29 gpaw.gemm 0.41842508316
30 numpy.dot 11.26800704
32 p019:
33 gpaw.gemm 0.444674015045
34 numpy.dot 11.8213479519
36 m022:
37 gpaw.gemm 0.446084022522
38 numpy.dot 11.9757530689
40 u091:
41 gpaw.gemm 0.377645015717
42 numpy.dot 0.389540910721
44 CASIMIR:
45 gpaw.gemm 2.19097900391
46 numpy.dot 8.21617603302
48 THUL:
49 gpaw.gemm 0.520259857178
50 numpy.dot 0.505489110947
51 """