File: Contents.m

package info (click to toggle)
suitesparse 1%3A5.8.1%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 152,716 kB
  • sloc: ansic: 774,385; cpp: 24,213; makefile: 6,310; fortran: 1,927; java: 1,826; csh: 1,686; ruby: 725; sh: 535; perl: 225; python: 209; sed: 164; awk: 60
file content (310 lines) | stat: -rw-r--r-- 15,302 bytes parent folder | download
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
% GraphBLAS Test/ folder: test GraphBLAS in MATLAB
% See the README.txt file for more details.

% Primary functiuns

%   make          - compiles the MATLAB interface to GraphBLAS (for testing only)
%   testall       - run all GraphBLAS tests
%   nthreads_get  - get # of threads and chunk to use in GraphBLAS
%   nthreads_set  - set # of threads and chunk to use in GraphBLAS

% MATLAB mimics of GraphBLAS operations:
%
%   GB_spec_Col_assign            - a MATLAB mimic of GrB_Col_assign
%   GB_spec_Col_extract           - a MATLAB mimic of GrB_Col_extract
%   GB_spec_Matrix_extract        - a MATLAB mimic of GrB_Matrix_extract
%   GB_spec_Matrix_extractElement - a MATLAB mimic of GrB_Matrix_extractElement
%   GB_spec_Row_assign            - a MATLAB mimic of GrB_Row_assign
%   GB_spec_Vector_extract        - a MATLAB mimic of GrB_Vector_extract
%   GB_spec_Vector_extractElement - a MATLAB mimic of GrB_Matrix_extractElement
%   GB_spec_accum                 - MATLAB mimic of the Z=accum(C,T) operation in GraphBLAS
%   GB_spec_accum_mask            - apply the accumulator and mask
%   GB_spec_apply                 - a MATLAB mimic of GrB_apply
%   GB_spec_assign                - a MATLAB mimic of GrB_assign (but not Row or Col variants)
%   GB_spec_build                 - a MATLAB version of GrB_Matrix_build and GrB_vector_build
%   GB_spec_compare               - compare MATLAB mimic result with GraphBLAS result
%   GB_spec_descriptor            - return components of a descriptor
%   GB_spec_Matrix_eWiseAdd       - a MATLAB mimic of GrB_Matrix_eWiseAdd
%   GB_spec_Vector_eWiseAdd       - a MATLAB mimic of GrB_Vector_eWiseAdd
%   GB_spec_Matrix_eWiseMult      - a MATLAB mimic of GrB_Matrix_eWiseMult
%   GB_spec_Vector_eWiseMult      - a MATLAB mimic of GrB_Vector_eWiseMult
%   GB_spec_extractTuples         - a MATLAB mimic of GrB_*_extractTuples
%   GB_spec_identity              - the additive identity of a monoid
%   GB_spec_kron                  - a MATLAB mimic of GrB_kronecker
%   GB_spec_mask                  - a pure MATLAB implementation of GrB_mask
%   GB_spec_matrix                - a MATLAB mimic that conforms a matrix to the GraphBLAS spec
%   GB_spec_mxm                   - a MATLAB mimic of GrB_mxm
%   GB_spec_mxv                   - a MATLAB mimic of GrB_mxv
%   GB_spec_op                    - apply a unary or binary operator
%   GB_spec_operator              - get the contents of an operator
%   GB_spec_opsall                - return a list of all operators, types, and semirings
%   GB_spec_random                - generate random matrix
%   GB_spec_reduce_to_scalar      - a MATLAB mimic of GrB_reduce (to scalar)
%   GB_spec_reduce_to_vector      - a MATLAB mimic of GrB_reduce (to vector)
%   GB_spec_resize                - a MATLAB mimic of GxB_resize
%   GB_spec_select                - a MATLAB mimic of GxB_select
%   GB_spec_semiring              - create a semiring
%   GB_spec_subassign             - a MATLAB mimic of GxB_subassign
%   GB_spec_transpose             - a MATLAB mimic of GrB_transpose
%   GB_spec_vxm                   - a MATLAB mimic of GrB_vxm
%   GB_complex_compare            - compare GraphBLAS results for complex types
%   GB_user_op                    - apply a complex binary and unary operator
%   GB_user_opsall                - return list of complex operators
%   accum_mask                    - apply the mask
%   accum_mask2                   - a simpler version of GB_spec_accum_mask
%   GB_random_mask                - Mask = GB_random_mask (m, n, d, M_is_csc, M_is_hyper)
%   GB_spec_getmask               - return the mask, typecasted to logical

% Test scripts:

%   test00   - test GB_mex_mis
%   test01   - test GraphBLAS error handling
%   test02   - test GrB_*_dup
%   test03   - test GB_*_check functions
%   test04   - test and demo for accumulator/mask and transpose
%   test05   - test GrB_*_setElement
%   test06   - test GrB_mxm on all semirings
%   test07   - test GxB_subassign with a single pending tuple
%   test07b  - test GrB_assign with a single pending tuple
%   test08   - test GxB_subassign
%   test08b  - test GrB_assign
%   test09   - test GxB_subassign
%   test09b  - test GrB_assign
%   test10   - test GrB_apply
%   test11   - test GrB_*_extractTuples
%   test12   - test Wathen matrix generation
%   test13   - test GrB_tranpsose
%   test14   - test GrB_reduce
%   test15   - test AxB and AdotB internal functions
%   test16   - test user-defined complex type (runs all testc*.m)
%   test17   - test GrB_*_extractElement
%   test18   - test GrB_eWiseAdd and GrB_eWiseMult
%   test19   - test GxB_subassign and GrB_*_setElement with many pending operations
%   test19b  - test GrB_assign and GrB_*_setElement with many pending operations
%   test20   - test GrB_mxm, mxv, and vxm
%   test21   - test GxB_subassign
%   test21b  - test GrB_assign
%   test22   - test GrB_transpose
%   test23   - test GrB_*_build
%   test24   - test GrB_reduce
%   test25   - test GxB_select
%   test26   - performance test for GxB_select
%   test27   - test GxB_select with user-defined select op (LoHi_band)
%   test28   - test mxm with aliased inputs, C<C> = accum(C,C*C)
%   test29   - GrB_reduce with zombies
%   test30   - test GxB_subassign
%   test30b  - performance test GB_mex_assign, scalar expansionb
%   test31   - test GrB_transpose
%   test32   - test GrB_mxm
%   test33   - test a semiring
%   test34   - test GrB_eWiseAdd
%   test35   - test GrB_*_extractTuples
%   test36   - performance test of matrix subref
%   test37   - performance test of qsort
%   test38   - test GrB_transpose
%   test39   - performance test for GrB_transpose
%   test40   - test GrB_Matrix_extractElement
%   test41   - test AxB
%   test42   - test GrB_Matrix_build
%   test43   - test subref
%   test44   - test qsort
%   test45   - test GrB_*_setElement and GrB_*_*build
%   test46   - performance test of GxB_subassign
%   test46b  - performance test of GrB_assign
%   test47   - prformance test of GrB_vxm
%   test48   - performance test of GrB_mxm
%   test49   - performance test of GrB_mxm (dot product method, A'*B)
%   test50   - test AxB numeric and symbolic
%   test51   - test GxB_subassign, multiply operations
%   test51b  - test GrB_assign, multiply operations
%   test52   - test AdotB vs AxB
%   test53   - test GrB_Matrix_extract
%   test54   - test GB_subref (numeric case) with I=lo:hi, J=lo:hi
%   test55   - test GxB_subassign, illustrate duplicate indices, MATLAB vs GraphBLAS
%   test55b  - test GrB_assign, illustrate duplicate indices, MATLAB vs GraphBLAS
%   test56   - test GrB_*_build
%   test57   - test operator on large uint32 values
%   test58   - test GrB_eWiseAdd
%   test59   - test GrB_mxm
%   test60   - test min and max operators with NaNs
%   test61   - performance test of GrB_eWiseMult
%   test62   - test GrB_apply
%   test63   - test GraphBLAS binary operators
%   test64   - test GxB_*_subassign, scalar expansion, with and without duplicates
%   test64b  - test GrB_*_assign, scalar expansion, with and without duplicates
%   test65   - test type casting
%   test66   - test GrB_reduce
%   test67   - test GrB_apply
%   test68   - performance tests for eWiseMult
%   test69   - test GrB_assign with aliased inputs, C<C>(:,:) = accum(C(:,:),C)
%   test72   - special cases for mxm, ewise, ...
%   test73   - performance of C = A*B, with mask
%   test74   - test GrB_mxm: all built-in semirings
%   test75   - test GrB_mxm and GrB_vxm on all semirings
%   test75b  - GrB_mxm and GrB_vxm on all semirings (shorter test than test75)
%   test76   - test GxB_resize
%   test77   - test GrB_kronecker
%   test78   - test subref
%   test79   - run all matrices with test06
%   test80   - rerun test06 with different matrices
%   test81   - test GrB_Matrix_extract with index range, stride, & backwards
%   test82   - test GrB_Matrix_extract with index range (hypersparse)
%   test83   - test GrB_assign with J=lo:0:hi, an empty list, and C_replace true
%   test84   - test GrB_assign (row and column with C in CSR format)
%   test85   - test GrB_transpose: 1-by-n with typecasting
%   test86   - performance test of of GrB_Matrix_extract
%   test87   - performance test of GrB_mxm
%   test88   - test hypersparse matrices with heap-based method
%   test89   - performance test of complex A*B
%   test90   - test AxB with user-defined semirings: plus_rdiv and plus_rdiv2
%   test91   - test subref performance on dense vectors
%   test92   - test GB_subref (symbolic case)
%   test93   - test dpagerank and ipagerank
%   test93b  - test dpagerank and ipagerank
%   test94   - test pagerank
%   test95   - performance test for GrB_transpose
%   test96   - test dot product
%   test97   - test GB_assign, scalar expansion and zombies
%   test98   - test GrB_mxm, typecasting on the fly
%   test99   - test GB_mex_transpose with explicit zeros in the Mask
%   test100  - test GB_mex_isequal
%   test101  - test import/export
%   test102  - test GB_AxB_flopcount
%   test103  - test aliases in GrB_transpose
%   test104  - export/import
%   test105  - eWiseAdd with hypersparse matrices
%   test106  - GxB_subassign with alias
%   test107  - user-defined terminal monoid
%   test108  - test boolean monoids
%   test109  - terminal monoid with user-defined type
%   test110  - test accum/mask (binary search of M(:,j))
%   test111  - performance test for eWiseAdd
%   test112  - test row/col scale
%   test113  - performance tests for GrB_kron
%   test114  - performance of reduce-to-scalar
%   test115  - test GB_assign, scalar expansion and zombies, with duplicates
%   test116  - performance tests for GrB_assign
%   test117  - performance tests for GrB_assign
%   test118  - performance tests for GrB_assign
%   test119  - performance tests for GrB_assign
%   test120  - performance tests for GrB_assign
%   test121  - performance tests for GrB_assign
%   test122  - performance tests for GrB_assign
%   test123  - test MIS on large matrix
%   test124  - GrB_extract, trigger case 6
%   test125  - test GrB_mxm: row and column scaling
%   test126  - test GrB_reduce to vector on a very sparse matrix 
%   test127  - test GrB_eWiseAdd and GrB_eWiseMult (all types and operators)
%   test128  - test eWiseMult and eWiseAdd, special cases
%   test129  - test GxB_select (tril and nonzero, hypersparse)
%   test130  - test GrB_apply (hypersparse cases)
%   test131  - test GrB_Matrix_clear
%   test132  - test GrB_*_setElement and GrB_*_*build
%   test133  - test mask operations (GB_masker)
%   test134  - test GxB_select
%   test135  - reduce-to-scalar, built-in monoids with terminal values
%   test136  - GxB_subassign, method 08, 09, 11
%   test137  - GrB_eWiseMult with FIRST and SECOND operators
%   test138  - test assign, with coarse-only tasks in IxJ slice
%   test139  - merge sort, special cases
%   test140  - test assign with duplicates
%   test141  - test GrB_eWiseAdd (all types and operators) for dense matrices
%   test142  - test GrB_assign for dense matrices
%   test143  - test special cases for C<!M>=A*B and C<M>=A*B
%   test144  - test GB_cumsum
%   test145  - test dot4
%   test146  - test C<M,struct> = scalar
%   test147  - test C<M>A*B with very sparse M
%   test148  - eWiseAdd with aliases
%   test149  - test fine hash method for C<!M>=A*B
%   test150  - test GrB_mxm with typecasting and zombies (dot3 and saxpy)
%   test151  - test bitwise operators
%   test152  - test C = A+B for dense A, B, and C
%   test153  - list all possible semirings
%   test154  - test GrB_apply with scalar binding
%   test155  - test GrB_*_setElement and GrB_*_removeElement
%   test156  - test assign C=A with typecasting

%   testc1   - test complex operators
%   testc2   - test complex A*B, A'*B, A*B', A'*B', A+B
%   testc3   - test complex GrB_extract
%   testc4   - test complex extractElement and setElement
%   testc5   - test complex subref
%   testc6   - test complex apply
%   testc7   - test complex assign
%   testc8   - test complex eWiseAdd and eWiseMult
%   testc9   - test complex extractTuples
%   testca   - test complex mxm, mxv, and vxm
%   testcb   - test complex reduce
%   testcc   - test complex transpose

% Other tests:

%   t74       - run test20 and test74
%   testperf  - run all performance tests
%   atest     - test GrB_assign and GxB_subassign
%   atest11   - test GrB_assign and GxB_subassign
%   btest     - test GrB_build
%   etest     - test eWise
%   ee        - eWiseMult and eWiseAdd performance tests
%   grbinfo   - print info about the GraphBLAS version
%   mtest     - test mxm
%   longtests - very long tests

%   rtest     - test GrB_reduce to vector and scalar
%   ss        - test GxB_select
%   stest     - test GxB_select
%   testall2  - run testall with different # of threads
%   testall3  - run testall with different # of threads
%   tt        - test eWiseMult and A+B
%   ttest     - test GrB_extractTuples
%   ttt       - various tests
%   xtest     - test GrB_extract
%   ztest     - test zombie deletion
%   testsort  - test qsort and msort

% Helper functions

%   debug_off        - turn off malloc debugging
%   debug_on         - turn on malloc debugging

%   irand            - construct a random integer matrix 
%   logstat          - run a GraphBLAS test and log the results to log.txt 
%   runtest          - run a single GraphBLAS test
%   stat             - report status of statement coverage and malloc debugging
%   GB_define        - create C source code for GraphBLAS.h

%   grbresults       - return time taken by last GraphBLAS function, and AxB method
%   isequal_roundoff - compare two matrices, allowing for roundoff errors

%   test_other       - installs all packages needed for extensive tests

%   grb_clear_coverage - clear current statement coverage
%   grb_get_coverage   - return current statement coverage

%   bfs_book         - run BFS on a small graph
%   bfs_matlab       - a simple breadth-first-search in MATLAB
%   bfs_test         - compares bfs_matlab and GB_mex_bfs
%   flopcount        - cumulative sum of flop counts for A*B, C<M>=A*B, C<!M>=A*B
%   floptest         - compare flopcount with GB_mex_mxm_flops

% Triangle counting:

%   ../Demo/MATLAB/tricount       - count the number of triangles in an undirected unweighted graph
%   ../Demo/MATLAB/adj_to_edges   - create an edge incidence matrix from an adjacency matrix
%   ../Demo/MATLAB/check_adj      - ensure A is a valid adjacency matrix
%   ../Demo/MATLAB/edges_to_adj   - create an adjacency matrix from an edge incidence matrix
%   ../Demo/MATLAB/tri_matlab     - run tricount tests in MATLAB
%   test70                        - performance comparison of triangle counting methods
%   test70_plot                   - plot the results from test70
%   test71                        - performance comparison of triangle counting methods
%   test71_plot                   - plot the results from test71
%   test71_table                  - print the table for triangle counting results

% Other demos

%   ../Demo/MATLAB/kron_demo      - test Program/kron_demo.c and compare with MATLAB kron
%   ../Demo/MATLAB/kron_test      - test kron_demo.m

% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2020, All Rights Reserved.
% http://suitesparse.com   See GraphBLAS/Doc/License.txt for license.