Community
cancel
Showing results for 
Search instead for 
Did you mean: 
fkdjsla__fkjdlsa
Beginner
125 Views

Vtune 2019 update1 GPU OpenCL gpu-hotspots profiling failed: "GpuNewKernelLibInitError"

Jump to solution

Hi team, I got an error when start Vtune 2019 update1 gpu-hotspots profiling: "GpuNewKernelLibInitError".

Anyone can help ?

Following is my log:

root@cmpl:~/workspace/opencl/intel_ocl_gemm_linux/GEMM# amplxe-cl  -collect gpu-hotspots -- ./gemm
amplxe: Error: %GpuNewKernelLibInitError

 

===============

OS: ubuntu 16.04

And my hardware:

CPU:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 158
Model name:            Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz
Stepping:              9
CPU MHz:               3674.382
CPU max MHz:           4200.0000
CPU min MHz:           800.0000
BogoMIPS:              7200.00
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              8192K
NUMA node0 CPU(s):     0-7

GPU:Intel® HD Graphics 630

 

OpenCL driver: Intel OpenCL 2.0

 

 

 

0 Kudos
1 Solution
Egor_S_Intel1
Employee
125 Views

Hi fkjdlsa,

Thank you for the logs! According to logs, VTune cannot initialize MD API libraries. There are two MD API libraries on your system:
1. It seems that first library has been installed together with Intel OpenCL runtime and it is placed in /opt/intel/opencl. This library has a limitation and can work together only with patched kernel 4.4 or 4.7 (it depends on which patches are present in /opt/intel/opencl). It is expected that this library cannot be initialized when new kernel is used.
2. Second library is a part of VTune and can work with kernels 4.14 or newer.

Could you please do following:
1. Rename old version of MD library and rebuild ld cache:
# mv /opt/intel/opencl/libmd.so /opt/intel/opencl/md.so.bak
# ldconfig

2. Set environments variables for VTune
# export AMPLXE_LOG_LEVEL=TRACE
# export AMPLXE_LOG_DIR=<path_to_existing_dir>

3. MD library writes its log to syslog, so clear it
# truncate -s 0 /var/log/syslog

4. Run VTune test command
# <path_to_vtune>/bin64/amplxe-runss --context-value-list > "$AMPLXE_LOG_DIR/context_values.log" 2>&1

5. Dump syslog
# cat /var/log/syslog > "$AMPLXE_LOG_DIR/syslog.log"

6. And please provide information about your Intel GPU device
# lspci -n | grep 03 > "$AMPLXE_LOG_DIR/lspci.log"

and attach these logs to a post.
Thanks!

View solution in original post

6 Replies
Egor_S_Intel1
Employee
125 Views

Hi fkdjlsa,

Could you please collect additional logs? In order to collect them, you need to run following commands:
#  export AMPLXE_LOG_LEVEL=TRACE
#  export AMPLXE_LOG_DIR=<path_to_existing_dir>
#  <path_to_vtune>/bin64/amplxe-runss --context-value-list > "$AMPLXE_LOG_DIR/context_values.log" 2>&1
create an archive with logs and attach it to a post.
Also could you please provide additional information about the kernel version and the full version of Intel OpenCL runtime that is installed on your system?
Thanks.

fkdjsla__fkjdlsa
Beginner
125 Views

Thanks for your reply @Egor. I've attached the log files. Also you can find the clinfo.log and kernel_version.log at the amplex-log directory.

fkdjsla__fkjdlsa
Beginner
125 Views

Also Attach the log generated after I run the command:  amplxe-cl -collect gpu-hotspots  -- ./gemm

Egor_S_Intel1
Employee
126 Views

Hi fkjdlsa,

Thank you for the logs! According to logs, VTune cannot initialize MD API libraries. There are two MD API libraries on your system:
1. It seems that first library has been installed together with Intel OpenCL runtime and it is placed in /opt/intel/opencl. This library has a limitation and can work together only with patched kernel 4.4 or 4.7 (it depends on which patches are present in /opt/intel/opencl). It is expected that this library cannot be initialized when new kernel is used.
2. Second library is a part of VTune and can work with kernels 4.14 or newer.

Could you please do following:
1. Rename old version of MD library and rebuild ld cache:
# mv /opt/intel/opencl/libmd.so /opt/intel/opencl/md.so.bak
# ldconfig

2. Set environments variables for VTune
# export AMPLXE_LOG_LEVEL=TRACE
# export AMPLXE_LOG_DIR=<path_to_existing_dir>

3. MD library writes its log to syslog, so clear it
# truncate -s 0 /var/log/syslog

4. Run VTune test command
# <path_to_vtune>/bin64/amplxe-runss --context-value-list > "$AMPLXE_LOG_DIR/context_values.log" 2>&1

5. Dump syslog
# cat /var/log/syslog > "$AMPLXE_LOG_DIR/syslog.log"

6. And please provide information about your Intel GPU device
# lspci -n | grep 03 > "$AMPLXE_LOG_DIR/lspci.log"

and attach these logs to a post.
Thanks!

View solution in original post

fkdjsla__fkjdlsa
Beginner
125 Views

Hi Egor, thanks for your instruction, the problem solved! I met another problem, vtune use system default gcc which is gcc 5.2 but my program build with gcc 4.9, erros happen when I run gpu in-kernel profiling, How can I specify gcc for vtune?

Egor_S_Intel1
Employee
125 Views

Hi fkjdlsa,

I'm sorry but I don't fully understand the problem that you are encountering. Could you please describe it in more details?
Also what do you mean by "vtune use system default gcc"?
Thanks!

Reply