xmr-stak-amd icon indicating copy to clipboard operation
xmr-stak-amd copied to clipboard

Error UNKNOWN_ERROR when calling clGetPlatformIDs for number of platforms.

Open ghost opened this issue 6 years ago • 32 comments

I have read through the previous mentions of this error but didn't really see anything that was helpful. Here are the steps to reproduce:

Install Ubuntu 16.04 sudo apt update sudo apt full-upgrade reboot Download AMD Drivers from here: http://support.amd.com/en-us/download/linux Follow install instructions from here: http://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Install.aspx After reboot, I view About This Computer and see that my video card is listed, RX 550

git clone https://github.com/fireice-uk/xmr-stak-amd.git sudo apt-get install ocl-icd-opencl-dev libmicrohttpd-dev libssl-dev cmake build-essential cmake . make

cp config.txt /bin/ cd bin ./xmr-stak-amd

Which produces the following error: Error UNKNOWN_ERROR when calling clGetPlatformIDs for number of platforms.

clinfo shows platforms as 0.

What am I missing here? This is a completely fresh install of Ubuntu 16.04 with the only things done to it are update and AMD Drivers.

ghost avatar Sep 21 '17 13:09 ghost

please run clinfo in the terminal it looks like driver issues.

Am 21.09.2017 15:39 schrieb "CryptoCurrencyFreak" <[email protected]

:

I have read through the previous mentions of this error but didn't really see anything that was helpful. Here are the steps to reproduce:

Install Ubuntu 16.04 sudo apt update sudo apt full-upgrade reboot Download AMD Drivers from here: http://support.amd.com/en-us/ download/linux Follow install instructions from here: http://support.amd.com/en-us/ kb-articles/Pages/AMDGPU-PRO-Install.aspx After reboot, I view About This Computer and see that my video card is listed, RX 550

git clone https://github.com/fireice-uk/xmr-stak-amd.git sudo apt-get install ocl-icd-opencl-dev libmicrohttpd-dev libssl-dev cmake build-essential cmake . make

cp config.txt /bin/ cd bin ./xmr-stak-amd

Which produces the following error: Error UNKNOWN_ERROR when calling clGetPlatformIDs for number of platforms.

clinfo shows platforms as 0.

What am I missing here? This is a completely fresh install of Ubuntu 16.04 with the only things done to it are update and AMD Drivers.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/fireice-uk/xmr-stak-amd/issues/115, or mute the thread https://github.com/notifications/unsubscribe-auth/AYsxtrFIRcE0wkqLZpaHK1s2_-goftmrks5skmcIgaJpZM4PfVXv .

psychocrypt avatar Sep 21 '17 18:09 psychocrypt

Same problem here. a clinfo only shows

Number of platforms                               0

Using amdgpu driver on a Radeon Vega Rx 64

nerdoc avatar Sep 25 '17 22:09 nerdoc

If clinfo shows 0 platforms than there is an issu with your driver.

Am 26.09.2017 12:40 Vorm. schrieb "Christian González" < [email protected]>:

Same problem here. a clinfo only shows

Number of platforms 0

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/fireice-uk/xmr-stak-amd/issues/115#issuecomment-332034425, or mute the thread https://github.com/notifications/unsubscribe-auth/AYsxtn2idlOsFb4gn1DxdRjfTeSQIbhzks5smCvqgaJpZM4PfVXv .

psychocrypt avatar Sep 26 '17 05:09 psychocrypt

what about if clinfo returns.

Error UNKNOWN_ERROR when calling clGetPlatformIDs for number of platforms. root@Stark-005:/opt/xmr/miner00# clinfo terminate called after throwing an instance of 'cl::Error' what(): clGetPlatformIDs Aborted (core dumped)

Running 16.04 with 17.30 AMD drivers.

joaogoldrocha avatar Sep 27 '17 16:09 joaogoldrocha

I have the same problem, I have the AMD Linux 17.30 driver for Ubuntu 16.04 LTS/Debian installed and ROCm according to https://bitcointalk.org/index.php?topic=2102129.0 (2nd post) uname -a outputs Linux debian 4.11.0-kfd-compute-rocm-rel-1.6-148 #1 SMP Wed Aug 23 12:00:35 CDT 2017 x86_64 GNU/Linux Exactly the same result on Ubuntu 16.04 LTS or Debian 9.1 Trying to get Vega 56/64 to run but when I compile the miner and run it, it yields the following result: Error UNKNOWN_ERROR when calling clGetPlatformIDs for number of platforms. clinfo outputs: Number of platforms 0

What could the problem be?

Also another question: Do you know if there is something like Wattman (or "AMD Radeon Settings") like in the Windows driver? I need to tweak GPU frequency, mem frequency, volts and fan speed. Any way to do it on linux?

MoneroCrusher avatar Sep 28 '17 11:09 MoneroCrusher

Hello,

I'm starting to think that my problem, and probably yours, is kernel related. I'm saying this because it's working properly into 4.4.x and not on 4.10.x.

Has anyone faced such issue or have any idea why?

Ubuntu 16.04.2 LTS Drivers: 16.40-348864 AMD SDK installed

clinfo working properly. platform set to 0 (tried 1 also and nothing still).

Error CL_DEVICE_NOT_FOUND when calling clGetDeviceIDs for number of devices.

Number of platforms:                             1
  Platform Profile:                              FULL_PROFILE
  Platform Version:                              OpenCL 2.0 AMD-APP (2117.10)
  Platform Name:                                 AMD Accelerated Parallel Processing
  Platform Vendor:                               Advanced Micro Devices, Inc.
  Platform Extensions:                           cl_khr_icd cl_amd_event_callback cl_amd_offline_devices


  Platform Name:                                 AMD Accelerated Parallel Processing
Number of devices:                               1
  Device Type:                                   CL_DEVICE_TYPE_CPU
  Vendor ID:                                     1002h
  Board name:
  Max compute units:                             2
  Max work items dimensions:                     3
    Max work items[0]:                           1024
    Max work items[1]:                           1024
    Max work items[2]:                           1024
  Max work group size:                           1024
  Preferred vector width char:                   16
  Preferred vector width short:                  8
  Preferred vector width int:                    4
  Preferred vector width long:                   2
  Preferred vector width float:                  4
  Preferred vector width double:                 2
  Native vector width char:                      16
  Native vector width short:                     8
  Native vector width int:                       4
  Native vector width long:                      2
  Native vector width float:                     4
  Native vector width double:                    2
  Max clock frequency:                           899Mhz
  Address bits:                                  64
  Max memory allocation:                         2147483648
  Image support:                                 Yes
  Max number of images read arguments:           128
  Max number of images write arguments:          64
  Max image 2D width:                            8192
  Max image 2D height:                           8192
  Max image 3D width:                            2048
  Max image 3D height:                           2048
  Max image 3D depth:                            2048
  Max samplers within kernel:                    16
  Max size of kernel argument:                   4096
  Alignment (bits) of base address:              1024
  Minimum alignment (bytes) for any datatype:    128
  Single precision floating point capability
    Denorms:                                     Yes
    Quiet NaNs:                                  Yes
    Round to nearest even:                       Yes
    Round to zero:                               Yes
    Round to +ve and infinity:                   Yes
    IEEE754-2008 fused multiply-add:             Yes
  Cache type:                                    Read/Write
  Cache line size:                               64
  Cache size:                                    32768
  Global memory size:                            4085432320
  Constant buffer size:                          65536
  Max number of constant args:                   8
  Local memory type:                             Global
  Local memory size:                             32768
  Max pipe arguments:                            16
  Max pipe active reservations:                  16
  Max pipe packet size:                          2147483648
  Max global variable size:                      1879048192
  Max global variable preferred total size:      1879048192
  Max read/write image args:                     64
  Max on device events:                          0
  Queue on device max size:                      0
  Max on device queues:                          0
  Queue on device preferred size:                0
  SVM capabilities:
    Coarse grain buffer:                         No
    Fine grain buffer:                           No
    Fine grain system:                           No
    Atomics:                                     No
  Preferred platform atomic alignment:           0
  Preferred global atomic alignment:             0
  Preferred local atomic alignment:              0
  Kernel Preferred work group size multiple:     1
  Error correction support:                      0
  Unified memory for Host and Device:            1
  Profiling timer resolution:                    1
  Device endianess:                              Little
  Available:                                     Yes
  Compiler available:                            Yes
  Execution capabilities:
    Execute OpenCL kernels:                      Yes
    Execute native function:                     Yes
  Queue on Host properties:
    Out-of-Order:                                No
    Profiling :                                  Yes
  Queue on Device properties:
    Out-of-Order:                                No
    Profiling :                                  No
  Platform ID:                                   0x7f372694dbd8
  Name:                                          Intel(R) Pentium(R) CPU G4400 @ 3.30GHz
  Vendor:                                        GenuineIntel
  Device OpenCL C version:                       OpenCL C 1.2
  Driver version:                                2117.10 (sse2)
  Profile:                                       FULL_PROFILE
  Version:                                       OpenCL 1.2 AMD-APP (2117.10)
  Extensions:                                    cl_khr_fp64 cl_amd_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_device_fission cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_spir cl_khr_gl_event

joaogoldrocha avatar Sep 28 '17 11:09 joaogoldrocha

Any reason why you are running the 16.40 driver? Newest one is 17.30 http://support.amd.com/en-us/kb-articles/Pages/AMDGPU-PRO-Install.aspx So it it fully working now?

MoneroCrusher avatar Sep 28 '17 11:09 MoneroCrusher

It has to be kernel related then. I have always tried on 4.11 and it has always failed with 17.30 drivers.

ghost avatar Sep 28 '17 12:09 ghost

Just realised that, in one of the RIGs, which is working...

Device OpenCL C version: OpenCL C 1.2

on the other one, which is not, ...

OpenCL 2.0 AMD-APP (2117.10)

does this have any impact over the error?

joaogoldrocha avatar Sep 28 '17 12:09 joaogoldrocha

Wondering the same, if XMR stak has a problem with the latest blockchain compute driver opencl, maybe a trivial error? Would be awesome if this can be resolved... little offtopic: Do you guys know a good OC/GPU tweaking tool for Ubuntu or Debian? Like the one in windows driver (Wattman?)

MoneroCrusher avatar Sep 28 '17 12:09 MoneroCrusher

Tried to work around the problem by installing SDK 2.6 and got stuck here. Any ideas?

./xmr-stak-amd: /opt/AMDAPP/lib/x86_64/libOpenCL.so.1: version `OPENCL_2.0' not found (required by ./xmr-stak-amd)

joaogoldrocha avatar Sep 28 '17 12:09 joaogoldrocha

you guys all have vega 56? or does the problem appear on both cards?

MoneroCrusher avatar Sep 30 '17 17:09 MoneroCrusher

Vega RX 64

nerdoc avatar Sep 30 '17 20:09 nerdoc

I created a topic over at RadeonOpenCompute/ROCm and gstoner said it's only 56s but I guess that's wrong then? https://github.com/RadeonOpenCompute/ROCm/issues/216#issuecomment-333333772

MoneroCrusher avatar Sep 30 '17 20:09 MoneroCrusher

After gstoner showed me that his Vega 64 indeed got opencl from ROCm on Ubuntu I deleted my Ubuntu and started from scratch. I installed everything like https://bitcointalk.org/index.php?topic=2102129.0 as in post 14 But I stopped at ROCm installation (without having installed the 17.30 driver) because after rebooting the card seems to have been recognized.

So I ran clinfo and got this information:

Number of platforms                               1
  Platform Name                                   AMD Accelerated Parallel Processing
  Platform Vendor                                 Advanced Micro Devices, Inc.
  Platform Version                                OpenCL 2.0 AMD-APP (2450.0)
  Platform Profile                                FULL_PROFILE
  Platform Extensions                             cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 
  Platform Extensions function suffix             AMD

  Platform Name                                   AMD Accelerated Parallel Processing
Number of devices                                 1
  Device Name                                     gfx900
  Device Vendor                                   Advanced Micro Devices, Inc.
  Device Vendor ID                                0x1002
  Device Version                                  OpenCL 1.2 
  Driver Version                                  1.1 (HSA,LC)
  Device OpenCL C Version                         OpenCL C 2.0 
  Device Type                                     GPU
  Device Profile                                  FULL_PROFILE
  Max compute units                               64
  Max clock frequency                             1630MHz
  Device Partition                                (core)
    Max number of sub-devices                     64
    Supported partition types                     none specified
  Max work item dimensions                        3
  Max work item sizes                             256x256x256
  Max work group size                             256
  Preferred work group size multiple              64
  Preferred / native vector sizes                 
    char                                                 4 / 4       
    short                                                2 / 2       
    int                                                  1 / 1       
    long                                                 1 / 1       
    half                                                 1 / 1        (n/a)
    float                                                1 / 1       
    double                                               1 / 1        (cl_khr_fp64)
  Half-precision Floating-point support           (n/a)
  Single-precision Floating-point support         (core)
    Denormals                                     Yes
    Infinity and NANs                             Yes
    Round to nearest                              Yes
    Round to zero                                 Yes
    Round to infinity                             Yes
    IEEE754-2008 fused multiply-add               Yes
    Support is emulated in software               No
    Correctly-rounded divide and sqrt operations  Yes
  Double-precision Floating-point support         (cl_khr_fp64)
    Denormals                                     Yes
    Infinity and NANs                             Yes
    Round to nearest                              Yes
    Round to zero                                 Yes
    Round to infinity                             Yes
    IEEE754-2008 fused multiply-add               Yes
    Support is emulated in software               No
    Correctly-rounded divide and sqrt operations  No
  Address bits                                    64, Little-Endian
  Global memory size                              8573157376 (7.984GiB)
  Error Correction support                        No
  Max memory allocation                           6429868032 (5.988GiB)
  Unified memory for Host and Device              No
  Minimum alignment for any data type             128 bytes
  Alignment of base address                       1024 bits (128 bytes)
  Global Memory cache type                        Read/Write
  Global Memory cache size                        16384
  Global Memory cache line                        64 bytes
  Image support                                   Yes
    Max number of samplers per kernel             26751
    Max size for 1D images from buffer            65536 pixels
    Max 1D or 2D image array size                 2048 images
    Max 2D image size                             16384x16384 pixels
    Max 3D image size                             2048x2048x2048 pixels
    Max number of read image args                 128
    Max number of write image args                8
  Local memory type                               Local
  Local memory size                               65536 (64KiB)
  Max constant buffer size                        6429868032 (5.988GiB)
  Max number of constant args                     8
  Max size of kernel argument                     1024
  Queue properties                                
    Out-of-order execution                        No
    Profiling                                     Yes
  Prefer user sync for interop                    Yes
  Profiling timer resolution                      1ns
  Execution capabilities                          
    Run OpenCL kernels                            Yes
    Run native kernels                            No
  printf() buffer size                            1048576 (1024KiB)
  Built-in kernels                                
  Device Available                                Yes
  Compiler Available                              Yes
  Linker Available                                Yes
  Device Extensions                               cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_amd_media_ops cl_amd_media_ops2 cl_khr_subgroups cl_khr_depth_images cl_amd_liquid_flash cl_amd_copy_buffer_p2p 

NULL platform behavior
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...)  AMD Accelerated Parallel Processing
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...)   Success [AMD]
  clCreateContext(NULL, ...) [default]            Success [AMD]
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU)  Success (1)
    Platform Name                                 AMD Accelerated Parallel Processing
    Device Name                                   gfx900
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM)  No devices found in platform
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL)  Success (1)
    Platform Name                                 AMD Accelerated Parallel Processing
    Device Name                                   gfx900

ICD loader properties
  ICD loader Name                                 OpenCL ICD Loader
  ICD loader Vendor                               OCL Icd free software
  ICD loader Version                              2.2.8
  ICD loader Profile                              OpenCL 1.2
	NOTE:	your OpenCL library declares to support OpenCL 1.2,
		but it seems to support up to OpenCL 2.1 too.

So I thought I'd try it without installing the 17.30 driver before things get messed up. So I compiled XMR-STAK-AMD and ran my usual config like I would on windows and I got the following error...at least I got past the error in the title:

[2017-10-01 21:19:42] : Compiling code and initializing GPUs. This will take a while...
[2017-10-01 21:19:42] : Device 0 work size 8 / 256.
clang version 4.0 
Target: amdgcn-amd-amdhsa-opencl
Thread model: posix
InstalledDir: /opt/rocm/opencl/bin/x86_64
[2017-10-01 21:19:47] : Error CL_BUILD_PROGRAM_FAILURE when calling clBuildProgram.
Build log:
warning: argument unused during compilation: '-I .'
error: unable to execute command: Segmentation fault (core dumped)
error: clang frontend command failed due to signal (use -v to see invocation)
note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
note: diagnostic msg: Error generating preprocessed source(s) - no preprocessable inputs.
/opt/rocm/opencl/bin/x86_64/clang[0x223cbca]
/opt/rocm/opencl/bin/x86_64/clang[0x223af5e]
/opt/rocm/opencl/bin/x86_64/clang[0x223b0b0]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fe8411eb390]
/opt/rocm/opencl/bin/x86_64/clang[0x1448e94]
/opt/rocm/opencl/bin/x86_64/clang[0x1429b81]
/opt/rocm/opencl/bin/x86_64/clang[0x17d2677]
/opt/rocm/opencl/bin/x86_64/clang[0x218586a]
/opt/rocm/opencl/bin/x86_64/clang[0x2185903]
/opt/rocm/opencl/bin/x86_64/clang[0x21862ff]
/opt/rocm/opencl/bin/x86_64/clang[0x58f356]
/opt/rocm/opencl/bin/x86_64/clang[0x5917d3]
/opt/rocm/opencl/bin/x86_64/clang[0x56da79]
/opt/rocm/opencl/bin/x86_64/clang[0x90093e]
/opt/rocm/opencl/bin/x86_64/clang[0x8d345d]
/opt/rocm/opencl/bin/x86_64/clang[0x568e5d]
/opt/rocm/opencl/bin/x86_64/clang[0x565dc8]
/opt/rocm/opencl/bin/x86_64/clang[0x5189d9]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7fe840e30830]
/opt/rocm/opencl/bin/x86_64/clang[0x55fde1]
Stack dump:
0.	Program arguments: /opt/rocm/opencl/bin/x86_64/clang -cc1 -triple amdgcn-amd-amdhsa-opencl -emit-obj -disable-free -disable-llvm-verifier -discard-value-names -main-file-name t_11322_43.bc -mrelocation-model static -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -target-cpu gfx900 -dwarf-column-info -debugger-tuning=gdb -resource-dir /opt/rocm/opencl/bin/lib/clang/4.0 -O3 -fdebug-compilation-dir /home/monero/xmr-stak-amd/bin -ferror-limit 19 -fmessage-length 80 -cl-kernel-arg-info -fobjc-runtime=gcc -fdiagnostics-show-option -vectorize-loops -vectorize-slp -mllvm -amdgpu-internalize-symbols -mllvm -amdgpu-early-inline-all -o /tmp/t_11322_43-6fa593.o -x ir /tmp/AMD_11322_30/t_11322_43.bc 
1.	Code generation
2.	Running pass 'Function Pass Manager' on module '/tmp/AMD_11322_30/t_11322_43.bc'.
3.	Running pass 'SI Fix SGPR copies' on function '@cn0'
Error: Creating the executable failed: Compiling LLVM IRs to executable

Now I thought this error was maybe due to the fact that I didn't have the 17.30 driver installed, so I went ahead and installed it only to get the same Error like in the title/beginning again... also after installing 17.30 driver I get Number of platforms 0 again.

I hope this helps us get further

MoneroCrusher avatar Oct 01 '17 19:10 MoneroCrusher

@MoneroCrusher After you clean installation there is something wrong with you OpenCL compiler. The error message is not saying what. It looks like an error within the compiler. The second error platforms=0 looks like an driver issue.

psychocrypt avatar Oct 01 '17 20:10 psychocrypt

@MoneroCrusher You could try again the first version where the compiler crashed and add to this line a -v. This should be passed to the compiler to get better information.

psychocrypt avatar Oct 01 '17 20:10 psychocrypt

@psychocrypt like so: snprintf(options, sizeof(options), "-I. -DWORKSIZE=%llu", "-v", int_port(ctx->workSize)); ? or how exaclty? I tried it that way and output was the same.

MoneroCrusher avatar Oct 01 '17 21:10 MoneroCrusher

should be snprintf(options, sizeof(options), "-I. -DWORKSIZE=%llu -v", int_port(ctx->workSize));

psychocrypt avatar Oct 01 '17 21:10 psychocrypt

screenshot from 2017-10-01 23-52-00 Ok I did it that way:

[2017-10-01 23:49:00] : Compiling code and initializing GPUs. This will take a while...
[2017-10-01 23:49:00] : Device 0 work size 8 / 256.
clang version 4.0 
Target: amdgcn-amd-amdhsa-opencl
Thread model: posix
InstalledDir: /opt/rocm/opencl/bin/x86_64
[2017-10-01 23:49:03] : Error CL_BUILD_PROGRAM_FAILURE when calling clBuildProgram.
Build log:
warning: argument unused during compilation: '-I .'
error: unable to execute command: Segmentation fault (core dumped)
error: clang frontend command failed due to signal (use -v to see invocation)
note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script.
note: diagnostic msg: Error generating preprocessed source(s) - no preprocessable inputs.
/opt/rocm/opencl/bin/x86_64/clang[0x223cbca]
/opt/rocm/opencl/bin/x86_64/clang[0x223af5e]
/opt/rocm/opencl/bin/x86_64/clang[0x223b0b0]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390)[0x7fc4b7d3a390]
/opt/rocm/opencl/bin/x86_64/clang[0x1448e94]
/opt/rocm/opencl/bin/x86_64/clang[0x1429b81]
/opt/rocm/opencl/bin/x86_64/clang[0x17d2677]
/opt/rocm/opencl/bin/x86_64/clang[0x218586a]
/opt/rocm/opencl/bin/x86_64/clang[0x2185903]
/opt/rocm/opencl/bin/x86_64/clang[0x21862ff]
/opt/rocm/opencl/bin/x86_64/clang[0x58f356]
/opt/rocm/opencl/bin/x86_64/clang[0x5917d3]
/opt/rocm/opencl/bin/x86_64/clang[0x56da79]
/opt/rocm/opencl/bin/x86_64/clang[0x90093e]
/opt/rocm/opencl/bin/x86_64/clang[0x8d345d]
/opt/rocm/opencl/bin/x86_64/clang[0x568e5d]
/opt/rocm/opencl/bin/x86_64/clang[0x565dc8]
/opt/rocm/opencl/bin/x86_64/clang[0x5189d9]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7fc4b797f830]
/opt/rocm/opencl/bin/x86_64/clang[0x55fde1]
Stack dump:
0.	Program arguments: /opt/rocm/opencl/bin/x86_64/clang -cc1 -triple amdgcn-amd-amdhsa-opencl -emit-obj -disable-free -disable-llvm-verifier -discard-value-names -main-file-name t_5220_66.bc -mrelocation-model static -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -target-cpu gfx900 -dwarf-column-info -debugger-tuning=gdb -resource-dir /opt/rocm/opencl/bin/lib/clang/4.0 -O3 -fdebug-compilation-dir /home/monero/xmr-stak-amd/bin -ferror-limit 19 -fmessage-length 80 -cl-kernel-arg-info -fobjc-runtime=gcc -fdiagnostics-show-option -vectorize-loops -vectorize-slp -mllvm -amdgpu-internalize-symbols -mllvm -amdgpu-early-inline-all -o /tmp/t_5220_66-49a06d.o -x ir /tmp/AMD_5220_53/t_5220_66.bc 
1.	Code generation
2.	Running pass 'Function Pass Manager' on module '/tmp/AMD_5220_53/t_5220_66.bc'.
3.	Running pass 'SI Fix SGPR copies' on function '@cn0'
Error: Creating the executable failed: Compiling LLVM IRs to executable

looks the same...?

MoneroCrusher avatar Oct 01 '17 21:10 MoneroCrusher

@psychocrypt any idea what I could do? Any modification of opencl file or gpu.c file to make it work?

MoneroCrusher avatar Oct 03 '17 15:10 MoneroCrusher

@MoneroCrusher - maybe you need to make clean first, because when I add the -v flag to the compiler options, I end up with

./xmr-stak-amd [2017-10-06 10:22:37] : Compiling code and initializing GPUs. This will take a while... [2017-10-06 10:22:37] : Device 0 work size 8 / 256. [2017-10-06 10:22:37] : Error CL_INVALID_COMPILER_OPTIONS when calling clBuildProgram. [2017-10-06 10:22:37] : Error CL_INVALID_DEVICE when calling clGetProgramBuildInfo for length of build log output.

Looking at the SDK, -v is not a valid option for clBuildProgram().

rhlug avatar Oct 06 '17 15:10 rhlug

And FWIW...

padoka llvm-6.0

./xmr-stak-amd [2017-10-06 10:50:27] : Compiling code and initializing GPUs. This will take a while... [2017-10-06 10:50:27] : Device 0 work size 8 / 256. [2017-10-06 10:50:33] : Error CL_BUILD_PROGRAM_FAILURE when calling clBuildProgram. Build log: warning: argument unused during compilation: '-I .' error: :0:0: in function cn0 void (i64 addrspace(1), <4 x i32> addrspace(1), i64 addrspace(1)*): unsupported indirect call to function rotate

Error: Creating the executable failed: Compiling LLVM IRs to executable

padoka llvm-5.0

./xmr-stak-amd [2017-10-06 11:11:45] : Compiling code and initializing GPUs. This will take a while... [2017-10-06 11:11:46] : Device 0 work size 8 / 256. [2017-10-06 11:11:49] : Error CL_BUILD_PROGRAM_FAILURE when calling clBuildProgram. Build log: warning: argument unused during compilation: '-I .' error: :0:0: in function cn0 void (i64 addrspace(1), <4 x i32> addrspace(1), i64 addrspace(1)*): unsupported call to function _ZL12get_local_idj

Error: Creating the executable failed: Compiling LLVM IRs to executable

rhlug avatar Oct 06 '17 16:10 rhlug

please post the output of clinfo

psychocrypt avatar Oct 06 '17 16:10 psychocrypt

@rhlug also using the ROCm 1.6.3 kernel? Or AMDGPU-pro?

MoneroCrusher avatar Oct 06 '17 16:10 MoneroCrusher

@MoneroCrusher yes, rocm 1.6.148 w/ 4.11.0-kfd-compute-rocm-rel-1.6-148

clinfo below

`# /opt/rocm/opencl/bin/x86_64/clinfo Number of platforms: 1 Platform Profile: FULL_PROFILE Platform Version: OpenCL 2.0 AMD-APP (2450.0) Platform Name: AMD Accelerated Parallel Processing Platform Vendor: Advanced Micro Devices, Inc. Platform Extensions: cl_khr_icd cl_amd_event_callback cl_amd_offline_devices

Platform Name: AMD Accelerated Parallel Processing Number of devices: 1 Device Type: CL_DEVICE_TYPE_GPU Vendor ID: 1002h Board name: Vega 10 XT [Radeon RX Vega 64] Device Topology: PCI[ B#37, D#0, F#0 ] Max compute units: 56 Max work items dimensions: 3 Max work items[0]: 256 Max work items[1]: 256 Max work items[2]: 256 Max work group size: 256 Preferred vector width char: 4 Preferred vector width short: 2 Preferred vector width int: 1 Preferred vector width long: 1 Preferred vector width float: 1 Preferred vector width double: 1 Native vector width char: 4 Native vector width short: 2 Native vector width int: 1 Native vector width long: 1 Native vector width float: 1 Native vector width double: 1 Max clock frequency: 1590Mhz Address bits: 64 Max memory allocation: 6429868032 Image support: Yes Max number of images read arguments: 128 Max number of images write arguments: 8 Max image 2D width: 16384 Max image 2D height: 16384 Max image 3D width: 2048 Max image 3D height: 2048 Max image 3D depth: 2048 Max samplers within kernel: 26751 Max size of kernel argument: 1024 Alignment (bits) of base address: 1024 Minimum alignment (bytes) for any datatype: 128 Single precision floating point capability Denorms: Yes Quiet NaNs: Yes Round to nearest even: Yes Round to zero: Yes Round to +ve and infinity: Yes IEEE754-2008 fused multiply-add: Yes Cache type: Read/Write Cache line size: 64 Cache size: 16384 Global memory size: 8573157376 Constant buffer size: 6429868032 Max number of constant args: 8 Local memory type: Scratchpad Local memory size: 65536 Max pipe arguments: 0 Max pipe active reservations: 0 Max pipe packet size: 0 Max global variable size: 6429868032 Max global variable preferred total size: 8573157376 Max read/write image args: 64 Max on device events: 0 Queue on device max size: 0 Max on device queues: 0 Queue on device preferred size: 0 SVM capabilities: Coarse grain buffer: Yes Fine grain buffer: Yes Fine grain system: No Atomics: No Preferred platform atomic alignment: 0 Preferred global atomic alignment: 0 Preferred local atomic alignment: 0 Kernel Preferred work group size multiple: 64 Error correction support: 0 Unified memory for Host and Device: 0 Profiling timer resolution: 1 Device endianess: Little Available: Yes Compiler available: Yes Execution capabilities: Execute OpenCL kernels: Yes Execute native function: No Queue on Host properties: Out-of-Order: No Profiling : Yes Queue on Device properties: Out-of-Order: No Profiling : No Platform ID: 0x7fbda2ada598 Name: gfx900 Vendor: Advanced Micro Devices, Inc. Device OpenCL C version: OpenCL C 2.0 Driver version: 1.1 (HSA,LC) Profile: FULL_PROFILE Version: OpenCL 1.2 Extensions: cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_amd_media_ops cl_amd_media_ops2 cl_khr_subgroups cl_khr_depth_images cl_amd_liquid_flash cl_amd_copy_buffer_p2p `

rhlug avatar Oct 07 '17 05:10 rhlug

As you can see from my compute units, its a vega 56. BTW, I've done this whole setup with RX470 and RX580 as well, the GPU has no bearing on whether or not cryptonight.cl will be compiled by clang. Really the only difference between the polaris and the vega clang compile is gfx803 vs gfx900. In no instance have a found a working clang compile (tried v4, v5, v6) with current cryptonight.cl kernel.

rhlug avatar Oct 07 '17 05:10 rhlug

Hi, I have same error. fresh install of debian, installed only amd-gpu pro (17.30-479365). RX580 working fine, but VEGA 64 card not recognized. followed posts #13 #14 from here: https://bitcointalk.org/index.php?topic=2102129.msg21386002#msg21386002 vega 64 is recognized by clinfo, but I have same error when starting xmr-stak-amd Error CL_BUILD_PROGRAM_FAILURE when calling clBuildProgram.

clinfo_vega64.txt xmr-stak-amd_log.txt

Also, running ROCm 1.6.180 kernel, clinfo recognizes only 2 RX580, while kernel 4.12.0-2-amd64 recognize all 3 of them.

Thanks for any help

lamba84 avatar Oct 22 '17 15:10 lamba84

I have Vega 64 and same problem. Any luck to solve it? Using latest drivers and Ubuntu. No miner is working.

moreplavec avatar Nov 22 '17 19:11 moreplavec

Vega RX 64 here. clinfo from Ubuntu 16.04.3 / amdgpu shows

$ /usr/bin/clinfo
Number of platforms                               0

$ export LLVM_BIN=/opt/amdgpu-pro/bin
$ /opt/amdgpu-pro/bin/clinfo
terminate called after throwing an instance of 'cl::Error'
  what():  clGetPlatformIDs
Abort (Segmentation fault)

using amdgpu 17.40-492261, kernel (HWE) 4.10.0-40-generic glxgears work fine with >3700 FPS. So the GPU for drawing IS working (games too), cust OpenCL not I suppose.

Is there anything I can do to help, as non-programmer?

nerdoc avatar Nov 22 '17 20:11 nerdoc