PPC64 & CUDA Support


I am trying to run TVM on a Power9 system, targeting its Tesla V100 GPUs, but TVMs compilation process fails with:

No available targets are compatible with triple "powerpc64le-unknown-linux-gnu" target_triple=powerpc64le-unknown-linux-gnu

I have loaded LLVM, but am unsure, if it is an environment or TVM error.

Has anybody tried TVM on PPC64 before?

it looks like llvm doesn’t recognize the target triple powerpc64le-unknown-linux-gnu maybe check your llvm installation?

1 Like

Thank you very much, you were right, the default LLVM module was built incorrectly and could only target x86 platforms.

However, I was able to build TVM on Power9 with CUDA10, but if I want to run anything it fails with this error: error: /software/ml/GCCcore/8.3.0/include/c++/8.3.0/type_traits(335): error: identifier "__ieee128" is undefined

Do you have a suggestion or a hint on where to look, as I am quite confused regarding Power9…

You might want to check compiler flags like -mno-float128 to nvcc. You can override CUDA callback here to pass custom compiler options to nvcc tvm/measure_methods.py at main · apache/tvm · GitHub by using @tvm._ffi.register_fun(override=True)