ALP User Documentation 0.7.0
Algebraic Programming User Documentation
Namespaces | Macros
graphblas.hpp File Reference

The main header to include in order to use the ALP/GraphBLAS API. More...

Go to the source code of this file.

Namespaces

namespace  grb
 The ALP/GraphBLAS namespace.
 
namespace  grb::algorithms
 The namespace for ALP/GraphBLAS algorithms.
 
namespace  grb::algorithms::pregel
 The namespace for ALP/Pregel algorithms.
 
namespace  grb::interfaces
 The namespace for programming APIs that automatically translate to ALP/GraphBLAS.
 

Macros

#define _GRB_BSP1D_BACKEND
 Which ALP/GraphBLAS backend the BSP1D backend should use for computations within a single user process. More...
 
#define _GRB_NO_EXCEPTIONS
 Define this macro to turn off reliance on standard C++ exceptions. More...
 
#define _GRB_NO_LIBNUMA
 Define this macro to disable the dependence on libnuma. More...
 
#define _GRB_NO_STDIO
 Define this macro to turn off standard input/output support. More...
 
#define _GRB_WITH_LPF
 Define this macro to compile with LPF support. More...
 

Detailed Description

The main header to include in order to use the ALP/GraphBLAS API.

Author
A. N. Yzelman.
Date
8th of August, 2016.

Macro Definition Documentation

◆ _GRB_BSP1D_BACKEND

#define _GRB_BSP1D_BACKEND

Which ALP/GraphBLAS backend the BSP1D backend should use for computations within a single user process.

The ALP/GraphBLAS compiler wrapper sets this value automatically depending on the choice of backend– compare, e.g., the grb::BSP1D backend versus the grb::hybrid backend.

◆ _GRB_NO_EXCEPTIONS

#define _GRB_NO_EXCEPTIONS

Define this macro to turn off reliance on standard C++ exceptions.

Deprecated:
Support for this macro is being phased out.
Note
Its intended use is to support ALP/GraphBLAS deployments on platforms that do not support C++ exceptions, such as some older Android SDK applications.
Warning
The safe usage of ALP/GraphBLAS while exceptions are disabled relies, at present, on the inspection of internal states and the usage of internal functions. We have no standardised exception-free way of using ALP/GraphBLAS at present and have no plans to (continue and/or extend) support for it.

◆ _GRB_NO_LIBNUMA

#define _GRB_NO_LIBNUMA

Define this macro to disable the dependence on libnuma.

Warning
Defining this macro is discouraged and not tested thoroughly.
Note
The CMake bootstrap treats libnuma as a non-optional dependence.

◆ _GRB_NO_STDIO

#define _GRB_NO_STDIO

Define this macro to turn off standard input/output support.

Warning
This macro has only been fully supported within the grb::banshee backend, where neither standard iostream nor stdio.h were available. If support through the full ALP implementation would be useful, please raise an issue through GitHub or Gitee so that we may consider and plan for supporting this macro more fully.

◆ _GRB_WITH_LPF

#define _GRB_WITH_LPF

Define this macro to compile with LPF support.

Note
The CMake bootstrap automatically defines this flag when a valid LPF installation is found. This flag is also defined by the ALP/GraphBLAS compiler wrapper whenever an LPF-enabled backend is selected.