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
  
     | 
    
      //------------------------------------------------------------------------------
// GB_Global.h: definitions for global data
//------------------------------------------------------------------------------
// SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2025, All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
//------------------------------------------------------------------------------
// These definitions are not visible to the user.  They are used only inside
// GraphBLAS itself.  Note that the GB_Global struct does not appear here.
// It is accessible only by the functions in GB_Global.c.
#ifndef GB_GLOBAL_H
#define GB_GLOBAL_H
void     GB_Global_cpu_features_query (void) ;
bool     GB_Global_cpu_features_avx2 (void) ;
bool     GB_Global_cpu_features_avx512f (void) ;
bool     GB_Global_cpu_features_rvv_1_0 (void) ;
void     GB_Global_mode_set (int mode) ;
int      GB_Global_mode_get (void) ;
void     GB_Global_sort_set (int sort) ;
int      GB_Global_sort_get (void) ;
void     GB_Global_GrB_init_called_set (bool init_called) ;
bool     GB_Global_GrB_init_called_get (void) ;
void     GB_Global_hyper_switch_set (float hyper_switch) ;
float    GB_Global_hyper_switch_get (void) ;
void     GB_Global_hyper_hash_set (int64_t hyper_hash) ;
int64_t  GB_Global_hyper_hash_get (void) ;
void     GB_Global_bitmap_switch_set (int k, float b) ;
float    GB_Global_bitmap_switch_get (int k) ;
float    GB_Global_bitmap_switch_matrix_get
                        (int64_t vlen, int64_t vdim) ;
void     GB_Global_bitmap_switch_default (void) ;
void     GB_Global_is_csc_set (bool is_csc) ;
bool     GB_Global_is_csc_get (void) ;
void     GB_Global_abort_set (void (* abort_function) (void)) ;
void     GB_Global_abort (void) ;
void     GB_Global_malloc_function_set (void * (* malloc_function) (size_t)) ;
void  *  GB_Global_malloc_function (size_t size) ;
void     GB_Global_realloc_function_set
            (void * (* realloc_function) (void *, size_t)) ;
void  *  GB_Global_realloc_function (void *p, size_t size) ;
bool     GB_Global_have_realloc_function (void) ;
void     GB_Global_calloc_function_set
            (void * (* calloc_function) (size_t, size_t)) ;
void     GB_Global_free_function_set (void (* free_function) (void *)) ;
void     GB_Global_free_function (void *p) ;
void     GB_Global_malloc_is_thread_safe_set (bool malloc_is_thread_safe) ;
bool     GB_Global_malloc_is_thread_safe_get (void) ;
void     GB_Global_malloc_tracking_set (bool malloc_tracking) ;
bool     GB_Global_malloc_tracking_get (void) ;
void     GB_Global_nmalloc_clear (void) ;
int64_t  GB_Global_nmalloc_get (void) ;
void     GB_Global_malloc_debug_set (bool malloc_debug) ;
bool     GB_Global_malloc_debug_get (void) ;
void     GB_Global_malloc_debug_count_set (int64_t malloc_debug_count) ;
bool     GB_Global_malloc_debug_count_decrement (void) ;
void *   GB_Global_persistent_malloc (size_t size) ;
void     GB_Global_make_persistent (void *p) ;
void     GB_Global_persistent_set (void (* persistent_function) (void *)) ;
void     GB_Global_persistent_free (void **p) ;
void     GB_Global_hack_set (int k, int64_t hack) ;
int64_t  GB_Global_hack_get (int k) ;
void     GB_Global_burble_set (bool burble) ;
bool     GB_Global_burble_get (void) ;
void     GB_Global_print_one_based_set (bool onebased) ;
bool     GB_Global_print_one_based_get (void) ;
void     GB_Global_stats_mem_shallow_set (bool mem_shallow) ;
bool     GB_Global_stats_mem_shallow_get (void) ;
bool     GB_Global_gpu_count_set (bool enable_cuda) ;
int      GB_Global_gpu_count_get (void) ;
size_t   GB_Global_gpu_memorysize_get (int device) ;
int      GB_Global_gpu_sm_get (int device) ;
bool     GB_Global_gpu_device_pool_size_set (int device, size_t size) ;
bool     GB_Global_gpu_device_max_pool_size_set (int device, size_t size) ;
bool     GB_Global_gpu_device_memory_resource_set (int device, void *resource) ;
void*    GB_Global_gpu_device_memory_resource_get (int device) ;
bool     GB_Global_gpu_device_properties_get (int device) ;
int      GB_Global_gpu_compute_capability_major_get (int device) ;
int      GB_Global_gpu_compute_capability_minor_get (int device) ;
void     GB_Global_timing_clear_all (void) ;
void     GB_Global_timing_clear (int k) ;
void     GB_Global_timing_set (int k, double t) ;
void     GB_Global_timing_add (int k, double t) ;
double   GB_Global_timing_get (int k) ;
int      GB_Global_memtable_n (void) ;
void     GB_Global_memtable_dump (void) ;
void     GB_Global_memtable_clear (void) ;
void     GB_Global_memtable_add (void *p, size_t size) ;
size_t   GB_Global_memtable_size (void *p) ;
void     GB_Global_memtable_remove (void *p) ;
bool     GB_Global_memtable_find (void *p) ;
typedef int (* GB_flush_function_t) (void) ;
typedef int (* GB_printf_function_t) (const char *restrict format, ...) ;
GB_printf_function_t GB_Global_printf_get (void) ;
void     GB_Global_printf_set (GB_printf_function_t p) ;
GB_flush_function_t GB_Global_flush_get (void) ;
void     GB_Global_flush_set (GB_flush_function_t p) ;
void  *  GB_Global_malloc_function_get (void) ;
void  *  GB_Global_calloc_function_get (void) ;
void  *  GB_Global_realloc_function_get (void) ;
void  *  GB_Global_free_function_get (void) ;
void     GB_Global_p_control_set (int8_t p_control) ;
int8_t   GB_Global_p_control_get (void) ;
void     GB_Global_j_control_set (int8_t j_control) ;
int8_t   GB_Global_j_control_get (void) ;
void     GB_Global_i_control_set (int8_t i_control) ;
int8_t   GB_Global_i_control_get (void) ;
void     GB_Global_lock_init (void) ;
void     GB_Global_lock_destroy (void) ;
void     GB_Global_lock_set (int k) ;
void     GB_Global_lock_unset (int k) ;
#endif
 
     |