2 (in-package :clem-benchmark
)
4 (let ((m (make-instance 'double-float-matrix
:dimensions
'(1024 1024) :initial-element
1d0
))
5 (n (make-instance 'double-float-matrix
:dimensions
'(1024 1024) :initial-element
2d0
)))
6 (with-matrix-benchmark (:add-1024-1024
/double-float
)
9 (let ((m (make-instance 'double-float-matrix
:dimensions
'(1024 1024) :initial-element
1d0
))
10 (n (make-instance 'double-float-matrix
:dimensions
'(1024 1024) :initial-element
2d0
)))
11 (with-matrix-benchmark (:add-in-place-1024-1024
/double-float
)
12 (mat-add m n
:in-place t
)))
14 (let ((m (make-instance 'single-float-matrix
:dimensions
'(1024 1024) :initial-element
1s0
))
15 (n (make-instance 'single-float-matrix
:dimensions
'(1024 1024) :initial-element
2s0
)))
16 (with-matrix-benchmark (:add-1024-1024
/single-float
)
19 (let ((m (make-instance 'single-float-matrix
:dimensions
'(1024 1024) :initial-element
1s0
))
20 (n (make-instance 'single-float-matrix
:dimensions
'(1024 1024) :initial-element
2s0
)))
21 (with-matrix-benchmark (:add-in-place-1024-1024
/single-float
)
22 (mat-add m n
:in-place t
)))
24 (let ((m (make-instance 'sb8-matrix
:dimensions
'(1024 1024) :initial-element
1))
25 (n (make-instance 'sb8-matrix
:dimensions
'(1024 1024) :initial-element
2)))
26 (with-matrix-benchmark (:add-1024-1024
/sb8
)
29 (let ((m (make-instance 'sb8-matrix
:dimensions
'(1024 1024) :initial-element
1))
30 (n (make-instance 'sb8-matrix
:dimensions
'(1024 1024) :initial-element
2)))
31 (with-matrix-benchmark (:add-in-place-1024-1024
/sb8
)
32 (mat-add m n
:in-place t
)))
34 (let ((m (make-instance 'sb16-matrix
:dimensions
'(1024 1024) :initial-element
1))
35 (n (make-instance 'sb16-matrix
:dimensions
'(1024 1024) :initial-element
2)))
36 (with-matrix-benchmark (:add-1024-1024
/sb16
)
39 (let ((m (make-instance 'sb16-matrix
:dimensions
'(1024 1024) :initial-element
1))
40 (n (make-instance 'sb16-matrix
:dimensions
'(1024 1024) :initial-element
2)))
41 (with-matrix-benchmark (:add-in-place-1024-1024
/sb16
)
42 (mat-add m n
:in-place t
)))
44 (let ((m (make-instance 'sb32-matrix
:dimensions
'(1024 1024) :initial-element
1))
45 (n (make-instance 'sb32-matrix
:dimensions
'(1024 1024) :initial-element
2)))
46 (with-matrix-benchmark (:add-1024-1024
/sb32
)
49 (let ((m (make-instance 'sb32-matrix
:dimensions
'(1024 1024) :initial-element
1))
50 (n (make-instance 'sb32-matrix
:dimensions
'(1024 1024) :initial-element
2)))
51 (with-matrix-benchmark (:add-in-place-1024-1024
/sb32
)
52 (mat-add m n
:in-place t
)))
54 (let ((m (make-instance 'ub8-matrix
:dimensions
'(1024 1024) :initial-element
1))
55 (n (make-instance 'ub8-matrix
:dimensions
'(1024 1024) :initial-element
2)))
56 (with-matrix-benchmark (:add-1024-1024
/ub8
)
59 (let ((m (make-instance 'ub8-matrix
:dimensions
'(1024 1024) :initial-element
1))
60 (n (make-instance 'ub8-matrix
:dimensions
'(1024 1024) :initial-element
2)))
61 (with-matrix-benchmark (:add-in-place-1024-1024
/ub8
)
62 (mat-add m n
:in-place t
)))
64 (let ((m (make-instance 'ub16-matrix
:dimensions
'(1024 1024) :initial-element
1))
65 (n (make-instance 'ub16-matrix
:dimensions
'(1024 1024) :initial-element
2)))
66 (with-matrix-benchmark (:add-1024-1024
/ub16
)
69 (let ((m (make-instance 'ub16-matrix
:dimensions
'(1024 1024) :initial-element
1))
70 (n (make-instance 'ub16-matrix
:dimensions
'(1024 1024) :initial-element
2)))
71 (with-matrix-benchmark (:add-in-place-1024-1024
/ub16
)
72 (mat-add m n
:in-place t
)))
74 (let ((m (make-instance 'ub32-matrix
:dimensions
'(1024 1024) :initial-element
1))
75 (n (make-instance 'ub32-matrix
:dimensions
'(1024 1024) :initial-element
2)))
76 (with-matrix-benchmark (:add-1024-1024
/ub32
)
79 (let ((m (make-instance 'ub32-matrix
:dimensions
'(1024 1024) :initial-element
1))
80 (n (make-instance 'ub32-matrix
:dimensions
'(1024 1024) :initial-element
2)))
81 (with-matrix-benchmark (:add-in-place-1024-1024
/ub32
)
82 (mat-add m n
:in-place t
)))