File: tt.m

package info (click to toggle)
suitesparse-graphblas 7.4.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 67,112 kB
  • sloc: ansic: 1,072,243; cpp: 8,081; sh: 512; makefile: 506; asm: 369; python: 125; awk: 10
file content (35 lines) | stat: -rw-r--r-- 768 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
%TT test eWiseMult and A+B

% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2022, All Rights Reserved.
% SPDX-License-Identifier: Apache-2.0

tic ;
C = A + B ;
t = toc ;
fprintf ('built-in C=A+B time: %g\n\n', t) ;

for k = 1:40
    nthreads_set (k) ;
    tic ;
    C2 = GB_mex_AplusB (A,B,'plus') ;
    ts (k) = toc ;
    fprintf ('threads %d time %10.4f speedup %10.2f\n', k, ts(k), ts(1)/ts(k)) ;
end

tic ;
C = A .* B ;
t = toc ;
fprintf ('built-in C=A.*B time: %g\n\n', t) ;

[m n] = size (A) ;
Z = sparse (m,n) ;

for k = 1:40
    nthreads_set (k) ;
    tic ;
    C2 = GB_mex_Matrix_eWiseMult (Z, [ ], [ ], 'times', A,B) ;
    ts (k) = toc ;
    fprintf ('threads %d time %10.4f speedup %10.2f\n', k, ts(k), ts(1)/ts(k)) ;
end

err = norm (C - C2.matrix, 1)