Multiple Kernel Libraries

GC_KERNEL_PATH defines multiple libraries, separated by a colon. For example:

export GC_KERNEL_PATH=/home/labuser/workspace/Habana_Custom_Kernel/build/src/
libcustom_tpc_perf_lib.so:/usr/lib/habanalabs/libtpc_kernels.so
  • If you intend to use a kernel not written by you, augment Intel Gaudi’s perf lib with your proprietary kernel.

  • When several identical GUIDs are available in the perf-lib list, the Graph Compiler picks the first one it finds, according to the order of libs in GC_KERNEL_PATH.

For example, if you want to override our implementation define:

export GC_KERNEL_PATH=/home/labuser/workspace/Habana_Custom_Kernel/build/src/
libcustom_tpc_perf_lib.so:/usr/lib/habanalabs/libtpc_kernels.so

If not:

export GC_KERNEL_PATH=/usr/lib/habanalabs/libtpc_kernels.so:
/home/labuser/workspace/Habana_Custom_Kernel/build/src/
libcustom_tpc_perf_lib.so
  • If a specific data type is not found, the Graph Compiler will inject cast nodes to the model to F32 and search again.