C API Remarks

Note: C Library will be searched using ctypes.

If you would like to force a certain shared library to be loaded, set the HEBI_C_LIB environment variable to the location of the binary.

Environment Variables

HEBI_DEBUG will enable lots of debugging messages. You will be able to view all internal C API calls made. This can be useful if your program segfaults or crashes for some strange reason. Note that the C API also uses this variable to print mini core dumps on a crash. If you are to report a bug to HEBI developers, please reproduce your bug with HEBI_DEBUG enabled and provide the output when the mini core dump is printed to stderr.

HEBI_PROFILE will enable profiling of internal C API calls on all threads. This can be used in addition to a Python profiler such as yappi or cProfile. Enabling this enables a good bit of overhead, especially in addition to a Python profiler. This is an alpha feature and is still considered an internal API subject to change in future releases without further notice. To dump the current thread’s C API statistics, you can use hebi._internal.raw._dump_c_api_stats(path) to output results to a csv file.

HEBI_C_LIB enables you to select which HEBI C API file to load to use for the Python API. This allows you to use a specialized version or different version of the API than what is provided with this package.