Hello,
I got he the following many errors when I tried to run OpenCL code on CPU only(chosen CPU as a device), and all of them are because of the following:
Cannot find or open the PDB file.
Any help is highly appreciated.
Thanks
Hello,
I got he the following many errors when I tried to run OpenCL code on CPU only(chosen CPU as a device), and all of them are because of the following:
Cannot find or open the PDB file.
Any help is highly appreciated.
Thanks
Hello,
I followed Intel tutorial on the following link:
https://software.intel.com/en-us/INDE-OpenCL-Sobel ( run Sobel using OpenCl )
It ran successfully on GPU. However, when I changed the command line arguments from GPU to CPU and also changed the device to CPU, it didn't work. I got the following error:
Error 1 error MSB3721: The command ""C:\Intel\OpenCL\sdk\bin\x86\ioc32.exe" -cmd=build -input=".......Visual Studio 2013\Projects\Sobel_OCL\SobelKernels.cl" -output="Debug\SobelKernels.out" -VS -device=CPU -simd=default -targetos=current -bo=" "" exited with code -1073741819. C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations\IntelOpenCL.targets 98 5 Sobel_OCL.
Although the usage of this program says: " Usage: Sobel [num test iterations] [cpu|gpu] [intel|amd|nvidia] [SurfWidth(^2 only)] [SurfHeight(^2 only)] [show_CL | no_show_CL".
What should I do to run the code on CPU only? knowing that I installed CPU only runtime for OpenCL.
Any help and suggestion are highly appreciated.
Thanks,
Samah
Hello.
#include <iostream> #define CL_TARGET_OPENCL_VERSION 220 #include <CL/cl.h> int main(int argc, char* argv[]) { cl_platform_id platform; clGetPlatformIDs(1, &platform, nullptr); cl_device_id devices[2]; clGetDeviceIDs(platform, CL_DEVICE_TYPE_GPU, 1, &devices[0], nullptr); clGetDeviceIDs(platform, CL_DEVICE_TYPE_CPU, 1, &devices[1], nullptr); auto context = clCreateContext(nullptr, 2, devices, nullptr, nullptr, nullptr); auto pipe = clCreatePipe(context, 0, sizeof(float), 256, nullptr, nullptr); }
This code segfaults for some reason.
Also I have 2 intel platforms for some reason.
Platform count = 3 ++++++++++++++++++platform+++++++++++++++++++ PLATFORM_NAME = Intel(R) OpenCL PLATFORM_PROFILE = FULL_PROFILE PLATFORM_VERSION = OpenCL 2.1 PLATFORM_VENDOR = Intel(R) Corporation PLATFORM_EXTENSIONS = cl_intel_dx9_media_sharing cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_d3d11_sharing cl_khr_depth_images cl_khr_dx9_media_sharing cl_khr_fp64 cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_image2d_from_buffer cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir Device count = 2 =============device============= DEVICE TYPE = CL_DEVICE_TYPE_GPU MAX_GROUP_SIZE = 256 LOCAL_MEM_SIZE = 65536 MAX_COMPUTE_UNITS = 24 MAX_WORK_ITEM_DIMENSIONS = 3 dim[0] = 256 dim[1] = 256 dim[2] = 256 =============device============= DEVICE TYPE = CL_DEVICE_TYPE_CPU MAX_GROUP_SIZE = 8192 LOCAL_MEM_SIZE = 32768 MAX_COMPUTE_UNITS = 8 MAX_WORK_ITEM_DIMENSIONS = 3 dim[0] = 8192 dim[1] = 8192 dim[2] = 8192 ++++++++++++++++++platform+++++++++++++++++++ PLATFORM_NAME = Intel(R) OpenCL PLATFORM_PROFILE = FULL_PROFILE PLATFORM_VERSION = OpenCL 2.1 PLATFORM_VENDOR = Intel(R) Corporation PLATFORM_EXTENSIONS = cl_intel_dx9_media_sharing cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_d3d11_sharing cl_khr_depth_images cl_khr_dx9_media_sharing cl_khr_fp64 cl_khr_gl_sharing cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_image2d_from_buffer cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_spir Device count = 2 =============device============= DEVICE TYPE = CL_DEVICE_TYPE_GPU MAX_GROUP_SIZE = 256 LOCAL_MEM_SIZE = 65536 MAX_COMPUTE_UNITS = 24 MAX_WORK_ITEM_DIMENSIONS = 3 dim[0] = 256 dim[1] = 256 dim[2] = 256 =============device============= DEVICE TYPE = CL_DEVICE_TYPE_CPU MAX_GROUP_SIZE = 8192 LOCAL_MEM_SIZE = 32768 MAX_COMPUTE_UNITS = 8 MAX_WORK_ITEM_DIMENSIONS = 3 dim[0] = 8192 dim[1] = 8192 dim[2] = 8192 ++++++++++++++++++platform+++++++++++++++++++ PLATFORM_NAME = NVIDIA CUDA PLATFORM_PROFILE = FULL_PROFILE PLATFORM_VERSION = OpenCL 1.2 CUDA 10.0.150 PLATFORM_VENDOR = NVIDIA Corporation PLATFORM_EXTENSIONS = 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_fp64 cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_d3d10_sharing cl_khr_d3d10_sharing cl_nv_d3d11_sharing cl_nv_copy_opts cl_nv_create_buffer Device count = 1 =============device============= DEVICE TYPE = CL_DEVICE_TYPE_GPU MAX_GROUP_SIZE = 1024 LOCAL_MEM_SIZE = 49152 MAX_COMPUTE_UNITS = 4 MAX_WORK_ITEM_DIMENSIONS = 3 dim[0] = 1024 dim[1] = 1024 dim[2] = 64
Hi,
The latest version of OpenCL available on intel.com doesn't support Ubuntu 18.04.
When can we expect a supported version?
Thanks
Ashish
Hello.
I get segfault on cpu device when I use clCreateProgramWithBinary with "enqueue_kernel" of opencl 2.0
Here is simple example - https://github.com/OmegaDoom/clCreateProgramWithBinary-segfault
If we change device on gpu then no segfault.
I have latest graphics driver - win64_24.20.100.6323
Intel® Core™ i7-7820HQ CPU @ 2.90GHz
Hello.
I'm running a kernel on gpu intel graphics device(Intel® HD Graphics 630 - latest driver) with such settings.
=============device=============
DEVICE TYPE = CL_DEVICE_TYPE_GPU
MAX_GROUP_SIZE = 256
LOCAL_MEM_SIZE = 65536
MAX_COMPUTE_UNITS = 24
MAX_WORK_ITEM_DIMENSIONS = 3
dim[0] = 256 dim[1] = 256 dim[2] = 256
enqueue_kernel can fail due to lack of resources. It's ok but I don't understand why it fails so early. It fails when number of global items are more then 256 - only one dimension. Why not 256 * 256 * 256?
The second problem is that I don't know how to deal when it fails. I tried to check returned value in a loop like that - while(0 != enqueue_kernel(.. but the program hangs.
Here is my experiment - https://github.com/OmegaDoom/enque_kernel_test
Dear ALL:
My computer's CPU is intel i7-8700K (12 cores), and also has a Nvidia GPU: GTX 1080 card, and the OS is Ubuntu1604 LTS。
I want to use gstreamer gst to test hardware accelerated decoding using intel integrated GPU and nvidia GTX 1080 simultaneously.
First, I can use nivida deepstream plugin for gst to decode vedio files using gtx1080 successfully.
The command as this:
#gst-launch-1.0 filesrc location=./Clip_1080_5sec_10mbps_h264.mp4 ! qtdemux ! h264parse ! nvdec_h264 ! fakesink
Second , I installed intel media sdk and gstreamer media sdk and vaapi driver from sources.
gst can find the mfx plugins:
#gst-inspect-1.0 | grep mfx
mfx: mfxh264dec: MFX H264 decoder
mfx: mfxhevcdec: MFX HEVC decoder
mfx: mfxmpeg2dec: MFX MPEG2 decoder
mfx: mfxvc1dec: MFX VC1 decoder
mfx: mfxvp8dec: MFX VP8 decoder
mfx: mfxjpegdec: MFX JPEG decoder
mfx: mfxdecode: MFX Video Decoder
mfx: mfxvpp: MFX video postprocessing
mfx: mfxsinkelement: MFX sink
mfx: mfxsink: MFX Sink Bin
mfx: mfxh264enc: MFX H.264 encoder
mfx: mfxhevcenc: MFX H.265 encoder
mfx: mfxjpegenc: MFX JPEG encoder
mfx: mfxvc1parse: VC1 parser
However , when I tested gst using mfxh264dec , I got following error, I googled the error but got no useful info for this.
The command as this:
# gst-launch-1.0 filesrc location=./Clip_1080_5sec_10mbps_h264.mp4 ! qtdemux ! h264parse ! mfxh264dec ! fakesink
Error Output:
# gst-launch-1.0 filesrc location=./Clip_1080_5sec_10mbps_h264.mp4 ! qtdemux ! h264parse ! mfxh264dec ! fakesink
Setting pipeline to PAUSED ...
libva info: VA-API version 1.3.0
libva info: va_getDriverName() returns -1
libva info: User requested driver 'iHD'
libva info: Trying to open /usr/local/lib/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_3
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
libva error: /usr/local/lib/dri/iHD_drv_video.so init failed
libva info: va_openDriver() returns 1
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstMfxDec_h264:mfxdec_h264-0: Could not initialize supporting library.
Additional debug info:
gstvideodecoder.c(2492): gst_video_decoder_change_state (): /GstPipeline:pipeline0/GstMfxDec_h264:mfxdec_h264-0:
Failed to open decoder
Setting pipeline to NULL ...
Freeing pipeline ...
Following info is command "inxi -G and clinfo" outputs and /etc/X11/xorg.conf content。
#inxi -G
Graphics: Card-1: Intel Device 3e92
Card-2: NVIDIA Device 1b80
Display Server: N/A driver: nvidia tty size: 231x59 Advanced Data: N/A out of X
#clinfo
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
Number of platforms 2
Platform Name NVIDIA CUDA
Platform Vendor NVIDIA Corporation
Platform Version OpenCL 1.2 CUDA 9.2.210
Platform Profile FULL_PROFILE
Platform Extensions 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_fp64 cl_khr_byte_addressable_store
cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer
Platform Extensions function suffix NV
Platform Name Intel Gen OCL Driver
Platform Vendor Intel
Platform Version OpenCL 1.2 beignet 1.1.1
Platform Profile FULL_PROFILE
Platform Extensions 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_byte_addressable_store cl_khr_spir
cl_khr_icd
Platform Extensions function suffix Intel
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
beignet-opencl-icd: no supported GPU found, this is probably the wrong opencl-icd package for this hardware
(If you have multiple ICDs installed and OpenCL works, you can ignore this message)
Platform Name NVIDIA CUDA
Number of devices 1
Device Name GeForce GTX 1080
Device Vendor NVIDIA Corporation
Device Vendor ID 0x10de
Device Version OpenCL 1.2 CUDA
Driver Version 396.54
Device OpenCL C Version OpenCL C 1.2
Device Type GPU
Device Profile FULL_PROFILE
Device Topology (NV) PCI-E, 01:00.0
Max compute units 20
Max clock frequency 1809MHz
Compute Capability (NV) 6.1
Device Partition (core)
Max number of sub-devices 1
Supported partition types None
Max work item dimensions 3
Max work item sizes 1024x1024x64
Max work group size 1024
Preferred work group size multiple 32
Warp size (NV) 32
Preferred / native vector sizes
char 1 / 1
short 1 / 1
int 1 / 1
long 1 / 1
half 0 / 0 (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 8510701568 (7.926GiB)
Error Correction support No
Max memory allocation 2127675392 (1.982GiB)
Unified memory for Host and Device No
Integrated memory (NV) No
Minimum alignment for any data type 128 bytes
Alignment of base address 4096 bits (512 bytes)
Global Memory cache type Read/Write
Global Memory cache size 327680
Global Memory cache line 128 bytes
Image support Yes
Max number of samplers per kernel 32
Max size for 1D images from buffer 134217728 pixels
Max 1D or 2D image array size 2048 images
Max 2D image size 16384x32768 pixels
Max 3D image size 16384x16384x16384 pixels
Max number of read image args 256
Max number of write image args 16
Local memory type Local
Local memory size 49152 (48KiB)
Registers per block (NV) 65536
Max constant buffer size 65536 (64KiB)
Max number of constant args 9
Max size of kernel argument 4352 (4.25KiB)
Queue properties
Out-of-order execution Yes
Profiling Yes
Prefer user sync for interop No
Profiling timer resolution 1000ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
Kernel execution timeout (NV) Yes
Concurrent copy and kernel execution (NV) Yes
Number of async copy engines 2
printf() buffer size 1048576 (1024KiB)
Built-in kernels
Device Available Yes
Compiler Available Yes
Linker Available Yes
Device Extensions 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_fp64 cl_khr_byte_addressable_store
cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer
Platform Name Intel Gen OCL Driver
Number of devices 0
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform
clCreateContext(NULL, ...) [default] No platform
clCreateContext(NULL, ...) [other] Success [NV]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No platform
# cat /etc/X11/xorg.conf
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod""None"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1@0:0:0"
Option "ConstrainCursor""off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration""on"
Option "IgnoreDisplayDevices""CRT"
EndSection
#lspci
00:00.0 Host bridge: Intel Corporation Device 3ec2 (rev 07)
00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 07)
00:02.0 Display controller: Intel Corporation Device 3e92
00:08.0 System peripheral: Intel Corporation Sky Lake Gaussian Mixture Model
00:14.0 USB controller: Intel Corporation Device a2af
00:14.2 Signal processing controller: Intel Corporation Device a2b1
00:16.0 Communication controller: Intel Corporation Device a2ba
00:17.0 SATA controller: Intel Corporation Device a282
00:1c.0 PCI bridge: Intel Corporation Device a290 (rev f0)
00:1c.3 PCI bridge: Intel Corporation Device a293 (rev f0)
00:1f.0 ISA bridge: Intel Corporation Device a2c9
00:1f.2 Memory controller: Intel Corporation Device a2a1
00:1f.3 Audio device: Intel Corporation Device a2f0
00:1f.4 SMBus: Intel Corporation Device a2a3
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1b80 (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 10f0 (rev a1)
03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
#ll /sys/class/graphics/
total 0
drwxr-xr-x 2 root root 0 10月 9 21:49 ./
drwxr-xr-x 66 root root 0 10月 9 21:41 ../
lrwxrwxrwx 1 root root 0 10月 9 21:41 fb0 -> ../../devices/platform/efi-framebuffer.0/graphics/fb0/
lrwxrwxrwx 1 root root 0 10月 9 21:44 fb1 -> ../../devices/pci0000:00/0000:00:02.0/graphics/fb1/
lrwxrwxrwx 1 root root 0 10月 9 21:41 fbcon -> ../../devices/virtual/graphics/fbcon/
Please help me , what should I do ?
Could it be that BIOS not configured or driver not right or something else?
I found someone said that's opencl render error about x11 because I have two GPUs. I dont know what that mean.
How can i use intel iGPU and nvidia GPU simultaneously?
One of our users on a multi-user system needs the OpenCL SDK, and I'm trying to figure out whether and which license I need to install that. I'm looking at l_opencl_p_18.1.0.013.tgz, the version for Ubuntu.
Looking at the license shown during installation, since this is a multi-user system and the installer does not support per-user installation, I need either a commercial floating license (3.1 B.), or a commercial site license (3.2 C.), or (possibly maybe) a noncommercial floating educational license (3.2 C. 2)). How would I go about obtaining one of those?
At https://software.intel.com/en-us/intel-opencl there's only the "FREE Download" option, with no licensing-related questions asked. And if I do indeed download, the registration center lists my license type as "No License/commercial". So do I have a license or not?
Hello
I am new to openCL programming but have fair amount of experience in GPGPU. My goal is to run some benchmark application using OpenCL and then to start writing my own code. I am using a KabyLake processor and want to use the GPU in it. I have followed the instructions mentioned in https://software.intel.com/en-us/articles/opencl-drivers and https://software.intel.com/en-us/intel-opencl/documentation. But I couldn't get it to work. The GPU is not getting detected and only CPU is detected. I was wondering if someone could provide me a step-by-step proper installation methodology. I am using ubuntu 16.04 (4.13.0) and I want to use OpenCL 2.0. I would be highly obliged if someone could provide me a guide to install OpenCL in the mentioned configuration. Please let me know if there are any further details that would be required. Thank you.
I'm accumulating a list of questions from issues arising while using the CodeBuilder KDF plugin for VS2017. Here's a short list.
1. does VS2017 w/ CodeBuilder plugin need to be run as ADMIN for Analyze Kernel (EU metrics, GPU mem etc) to work?
1.a. Frequently when I run KDF "Analyze Kernel" (using VS2017 w/ CodeBuilder plugin as ADMIN), the values of EU Active = EU Stall = 0% and EU Idle = 100% and all other GPU HW metrics = 0. No errors are reported, and the kernel passes validation. (for example simple 2D matrix mult kernel with 512x512 float buffers)
1.b. Are the metrics shown in KDRF "Analyze Kernel" results Execution View: Advanced (EU Active/Stall/Idle, SLM read/write, GTI read/write) acquired the same exact way as VTune does? Should they agree with VTune analysis results?
2. Is it possible to view printf() statements inside a GPU kernel when using KDF to Run a kernel? (or is it only possible using a custom Host OpenCL application? which is what I'm currently doing, but KDF support would be convenient...)
3. It seems like KDF breaks when I try to use a .cl file with more than 1 kernel function in it, is this not supported? When I try to Run a kernel I get an error that "an error occurred" and the Run aborts. This occurs using kernels which run fine in KDF when in a Code Builder session with only 1 kernel in the .cl file.
Thanks, Colin Reinhardt
Hello Windows* OS OpenCL users,
Some users have reported a platform interrogation discrepancies when installing Intel® CPU Runtime for OpenCL™ Applications 18.1 over a 16.1.2 installation or after uninstalling version 16.1.2. Such users should refer to the guidance in section 5.1 of the release notes as a stop-gap fix. Quick cut and paste here for convenience:
See full 18.1 release notes
5.1 Manual Installation on Windows* OS
Please add any related issues or experiences to this forum post... thanks.
-MichaelC
Has anyone successfully used the open-source clFFT libraries (https://github.com/clMathLibraries/clFFT)
with a recent Intel Processor Graphics device (gen8/9), on Windows 10, with Visual Studio 2015/17 and Intel OpenCL SDK 2015/17?
I am trying to do it and wondering about any advice on setup/configuration of the dev environment/system from your experiences,
such as: will using the pre-compiled Windows/x64 binaries etc (clFFT.dll, clFFT.lib, clFFT.h) work,
or do we have to do the whole CMake build process ourselves?
Thanks, Colin
Otherwise I have to judge the capabilities of every GUP, and send different amout of works to them.
It seems an awful task.
Is there any opencl tools to deal with this situation?
Or any suggestion?
thanks in advance.
Today, I download "Intel® SDK for OpenCL™ Applications for Linux* 2017" and installed on Linux ubuntu 16.04. All install steps are fine, but step 4 gives a note that "GPU is not supported". Hence, I couldn't use Intel OpenCL GPU platform.
My PC platform is 8th Generation CPU micro-archecture i7-8700 and GPU is Intel UHD 630 graphic. How can I do to fix this issue? Many thanks.
I have Ubuntu machine with Intel CPU & GPU.
CPU: Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz (Intel(R) Corporation)
GPU: Intel(R) Gen9 HD Graphics NEO (Intel(R) Corporation)
I have installed OpenCL drivers and after I run clinfo showing I have 2 platforms:
1) Experimental OpenCL 2.1 CPU Only Platform
2) Intel(R) OpenCL HD Graphics
I wonder if there is available OpenCL driver for CPU (not experimental) for Linux (Ubuntu) ? So I want have Intel
Platform Name: Intel(R) OpenCL
Number of devices: 2
Device Type: CL_DEVICE_TYPE_GPU
Device ID: 32902
Max compute units: 20
Device Type: CL_DEVICE_TYPE_CPU
Device ID: 32902
Max compute units: 4
This script is runned by sudo. As you can see, the GPU failed to load. How can I fix that? Thanks
sudo python sys_analyzer_linux.py
--------------------------
Hardware readiness checks:
--------------------------
[ OK ] Processor name: Intel(R) Core(TM) i7-5675C CPU @ 3.10GHz
--------------------------
OS readiness checks:
--------------------------
--------------------------
Media Server Studio Install:
--------------------------
[ ERROR ] user not in video group. Add with usermod -a -G video {user}
[ ERROR ] libva.so.1 not found. Check LD_LIBRARY_PATH contains '/usr/lib64;/usr/local/lib'
[ ERROR ] libva not loading Intel iHD
[ ERROR ] vainfo not reporting codec entry points
[ ERROR ] Intel video adapter not using i915
[ ERROR ] no libdrm include files. Are Intel components installed?
--------------------------
Component Smoke Tests:
--------------------------
[ ERROR ] no Media SDK include files. Are Intel components installed?
[ OK ] OpenCL check:platform:Intel(R) OpenCL GPU FAIL CPU OK
platform:Intel(R) OpenCL GPU FAIL CPU OK
Hi,
Some of our customers and I have the following problem originating from the detection of a valid OpenCL platform for OpenGL interop.
We have computers with dual NVidia and Intel GPUs, along with an Intel CPU. clGetPlatformIds() returns 3 platforms, in order: the Intel GPU, the NVidia GPU then the Intel CPU.
I have an OpenGL context running on the NVidia GPU. However, when I call clGetGLContextInfoKHR() with CL_CURRENT_DEVICE_FOR_GL_CONTEXT_KHR and the NVidia OpenGL context handle, both Intel platforms (GPU and CPU) return a device (pointers on clGetGLContextInfoKHR have been obtained with clGetExtensionFunctionAddressForPlatform() for their respective platform).
My detection algorithm takes the first device returned, so in this case, this is the Intel GPU device. Of course, all this ends up causing a crash way later in my program when I call clCreateFromGLRenderbuffer() in order to create an OpenCL image from an NVidia OpenGL render buffer.
So my questions are:
- Why do the Intel platforms say that they can create an OpenCL device interopable with an NVidia OpenGL context when they obviously cannot?
- Is there a stable way to detect this case and get around the problem?
Thanks in advance.
Olivier
Hi everyone,
I am new to OpenCL and trying to setup the environment for CPU debugging. I followed the steps in the Intel OpenCL documents. After the CPU kernel debugger was enabled, I found that CPU device became unavailable for creating context.
CPU is: i7-6770HQ,
Device Driver is: 7.0.0.2567
OpenCL version is: OpenCL C 2.0
Device version is: OpenCL 2.1 (Build 10)
Visual Studio: 15.9.1
The code related to create context is:
vector<Platform> platforms;
cl_int err;
err = Platform::get(&platforms);
if (err != CL_SUCCESS) {
cerr << "Unable to get platforms."<< endl;
return -1;
}
vector<Device> devices;
err = platform[0].getDevices(CL_DEVICE_TYPE_CPU, &devices);
if (err != CL_SUCCESS)
{
std::cerr << "Unable to get devices. Error Code: "<< err << std::endl;
return -1;
}
cl_context_properties properties[3] = { CL_CONTEXT_PLATFORM, (cl_context_properties)(platforms[0]()), 0 };
Context context(devices, properties, NULL, NULL, &err);
if (err != CL_SUCCESS)
{
std::cerr << "Error Creating Context. Error Code: "<< err << std::endl;
int i;
cin >> i;
return -1;
}
Thank you very much
Hi,
I have installed
1-system_studio_2019
2-intel_sdk_for_opencl_2017_7.0.0.2568_x64
3-Compute Runtime 4 packages:gmmlib ig-core igc-opencl opencl
4-l_opencl_p_18.1.0.013
5-SRB 5.0 : 3 packages
But I still got
And my laptop is i7-6500U
and the result of sys_analyzer_linux.py is :
shan@shan-ZHAOYANG-E51-80:~/Music/OpenCL_Open_Intel$ sudo python sys_analyzer_linux.py -------------------------- Hardware readiness checks: -------------------------- [ OK ] Processor name: Intel(R) Core(TM) i7-6500U CPU @ 2.50GHz -------------------------- OS readiness checks: -------------------------- [ OK ] GPU visible to OS -------------------------- Media Server Studio Install: -------------------------- [ ERROR ] user not in video group. Add with usermod -a -G video {user} [ ERROR ] libva.so.1 not found. Check LD_LIBRARY_PATH contains '/usr/lib64;/usr/local/lib' [ ERROR ] libva not loading Intel iHD [ ERROR ] vainfo not reporting codec entry points [ ERROR ] no libva include files. Are Intel components installed? -------------------------- Component Smoke Tests: -------------------------- [ ERROR ] no Media SDK include files. Are Intel components installed? [ OK ] OpenCL check:platform:Intel(R) OpenCL GPU OK CPU OK platform:Experimental OpenCL 2.1 CPU Only Platform GPU OK CPU OK
Thanks
Hi, again
I have already installed SDK 2017 r2 and system_studio. But when I use"clinfo" at the end of log.
And I also "sudo apt install ocl-icd-opencl-dev" still showed as below.
I thinks it's really a stupid question but it stuck me a lot.
Thanks
NULL platform behavior clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform clCreateContext(NULL, ...) [default] No platform clCreateContext(NULL, ...) [other] Success [INTEL] clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No platform NOTE: your OpenCL library only supports OpenCL 1.2, but some installed platforms support OpenCL 2.1. Programs using 2.1 features may crash or behave unexepectedly
But