1 //------------------------------------------------------------------------------
2 // GB_dev.h: definitions for code development
3 //------------------------------------------------------------------------------
4 
5 // SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
6 // SPDX-License-Identifier: Apache-2.0
7 
8 //------------------------------------------------------------------------------
9 
10 #ifndef GB_DEV_H
11 #define GB_DEV_H
12 
13 //------------------------------------------------------------------------------
14 // code development settings
15 //------------------------------------------------------------------------------
16 
17 // to turn on Debug for a single file of GraphBLAS, add '#define GB_DEBUG'
18 // just before the statement '#include "GB.h"'
19 
20 // set GB_BURBLE to 0 to disable diagnostic output, or compile with
21 // -DGB_BURBLE=0.
22 #ifndef GB_BURBLE
23 #define GB_BURBLE 1
24 #endif
25 
26 // to turn on Debug for all of GraphBLAS, uncomment this line:
27 // #define GB_DEBUG
28 
29 // to reduce code size and for faster time to compile, uncomment this line;
30 // GraphBLAS will be slower.  Alternatively, use cmake with -DGBCOMPACT=1
31 // #define GBCOMPACT 1
32 
33 //------------------------------------------------------------------------------
34 // notes on future work
35 //------------------------------------------------------------------------------
36 
37 // FUTURE: can handle transpose of full or bitmap input matrices just by
38 // changing how they are accessed
39 //
40 // FUTURE: add matrix I/O in binary format (see draft LAGraph_binread/binwrite)
41 //
42 // For PageRank:
43 //
44 //  FUTURE: constant-valued matrices/vectors (for r(:)=teleport)
45 //      probably coupled with lazy malloc/free of A->x when converting from
46 //      full (non-constant) to constant-valued.
47 //      need aggressive exploit of non-blocking mode, for x = sum (abs (t-r)),
48 //      or GrB_vxv dot product, with PLUS_ABSDIFF semiring
49 //
50 // For BC:
51 //  FUTURE: BC: constructing S will be faster with uniform-valued matrices,
52 //  once they are added to SuiteSparse:GraphBLAS.
53 
54 #endif
55 
56