Intel® oneAPI DPC++/C++ Compiler
Talk to fellow users of Intel® oneAPI DPC++/C++ Compiler and companion tools like Intel® oneAPI DPC++ Library, Intel® DPC++ Compatibility Tool, and Intel® Distribution for GDB*

Problems in Dpc++ build

tneval
Beginner
329 Views

I cloned open source Dpc++ from https://github.com/intel/llvm.

(From commit 29044ff10b0a1a0ce6c5a8369d847ed20621cfca)

and I'm following these instructions:
https://intel.github.io/llvm/GetStartedGuide.html

python llvm/buildbot/configure.py -o ../build
python llvm/buildbot/compile.py -o ../build

It compiles fine, but llvm-spirv related tests seem to fail:

python llvm/buildbot/check.py -o ../build

********************
********************
Failed Tests (41):
  LLVM_SPIRV :: AtomicBuiltinsFloat.ll
  LLVM_SPIRV :: AtomicCompareExchange.ll
  LLVM_SPIRV :: AtomicCompareExchange_cl20.ll
  LLVM_SPIRV :: CXX/global-ctor.cl
  LLVM_SPIRV :: EnqueueEmptyKernel.ll
  LLVM_SPIRV :: SpecConstants/spec-constant-length-array.ll
  LLVM_SPIRV :: array-alloca.ll
  LLVM_SPIRV :: atomic-load-store.ll
  LLVM_SPIRV :: atomicrmw.ll
  LLVM_SPIRV :: entry-point-interfaces.ll
  LLVM_SPIRV :: extensions/EXT/SPV_EXT_relaxed_printf_string_address_space/builtin_printf.ll
  LLVM_SPIRV :: extensions/INTEL/SPV_INTEL_cache_controls/decorate-prefetch-w-cache-controls.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_cooperative_matrix/access_store.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_cooperative_matrix/access_store_untyped.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_untyped_pointers/infinite-phi.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_untyped_pointers/store.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_untyped_pointers/untyped_ptr_access_chain.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_untyped_pointers/untyped_ptr_type.ll
  LLVM_SPIRV :: extensions/KHR/SPV_KHR_untyped_pointers/untyped_var.spvasm
  LLVM_SPIRV :: group_non_uniform_shuffle_down.ll
  LLVM_SPIRV :: link-attribute.ll
  LLVM_SPIRV :: llvm-intrinsics/lifetime.ll
  LLVM_SPIRV :: llvm-intrinsics/memmove.ll
  LLVM_SPIRV :: llvm-intrinsics/memset-opaque.ll
  LLVM_SPIRV :: spirv_global_variable_decoration.ll
  LLVM_SPIRV :: transcoding/AtomicCompareExchangeExplicit_cl20.cl
  LLVM_SPIRV :: transcoding/AtomicCompareExchange_cl20.ll
  LLVM_SPIRV :: transcoding/BuiltinPrintf.cl
  LLVM_SPIRV :: transcoding/OpenCL/atomic_cmpxchg.cl
  LLVM_SPIRV :: transcoding/OpenCL/atomic_legacy.cl
  LLVM_SPIRV :: transcoding/OpenCL/atomic_syncscope_test.ll
  LLVM_SPIRV :: transcoding/Printf.cl
  LLVM_SPIRV :: transcoding/atomic_load_store.ll
  LLVM_SPIRV :: transcoding/builtin_calls.ll
  LLVM_SPIRV :: transcoding/builtin_vars.ll
  LLVM_SPIRV :: transcoding/enqueue_marker.cl
  LLVM_SPIRV :: transcoding/get_image_num_mip_levels.ll
  LLVM_SPIRV :: transcoding/multiple_user_semantic.ll
  LLVM_SPIRV :: transcoding/ptr_diff.ll
  LLVM_SPIRV :: transcoding/ptr_not_equal.ll
  LLVM_SPIRV :: transcoding/undef-gv.ll

It works on some level: I can compile and run some simple SYCL programs with it but
when trying to compile Gromacs with it, I get:

llvm-foreach: 
RequiresExtension: Feature requires the following SPIR-V extension:
 SPV_INTEL_fp_max_error

llvm-foreach: 
RequiresExtension: Feature requires the following SPIR-V extension:
 SPV_INTEL_fp_max_error

llvm-foreach: 
clang++: error: llvm-spirv command failed with exit code 18 (use -v to see invocation)

I also tried downloading pre-built release from Github page, but Gromacs installation gave same error.

Any idea where this could stem from?

0 Kudos
1 Reply
tneval
Beginner
249 Views

Managed to overcome the issue by using non - open source version instead.

0 Kudos
Reply