Quantcast
Channel: Intel® Software - OpenCL*
Viewing all 1182 articles
Browse latest View live

OpenCL 2019 Update 4 completely broken

$
0
0

Trying to install Intel OpenCL 2019 Update 4 and the installer just flashes a pop-up screen for a second and exits without any information.

Working on an HP Envy laptop with an Intel core i7 7700, and Intel graphics.


OpenCL Tool deprecated

$
0
0

Hello,

On the release note of Intel OpenCL tools, the 2019 version is deprecated for Windows 7.

 

Support for Windows* 7 has been deprecated. Please consider the latest available package supporting Windows* 7 platforms, Intel® SDK for OpenCL™ Applications 2017 R2, available at https://software.intel.com/en-us/intel-opencl/download. Intel® SDK for OpenCL™ Applications 2017 R2 will be removed at the time of Intel® SDK for OpenCL™ Applications 2019 Update 1 release. Intel® SDK for OpenCL™ Applications 2019 Update 1 will not support Windows* 7.

 

The links states in the above quote is just redirecting to the actual OpenCL Tools page. Is there a way to download the previous one ?

I would like to use the tool on my Windows 7 machine please, since it impossible to install the new one.

Alexandre

 

 

AttachmentSize
Downloadimage/jpegIntelOpenCLSDK_Issue.JPG57.76 KB

Multiboot Information Structure

$
0
0

Does the memory map buffer (mmap_*) referenced by the multiboot information provide the memory mapping of the processors cache as well as on-board RAM?

Maximum global memory for HD5500

$
0
0

Hi,

I'm trying to evaluate some larger workloads on my Intel HD5500 GPU. I was under the impression that the GPU shared the host memory, but I am seeing that the max global memory is reported to be quite a bit smaller than my host memory. That is, when I query CL_DEVICE_GLOBAL_MEM_SIZE, I see these values for my CPU and GPU:

Intel(R) HD Graphics 5500
max global memory size: 8530714624

Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz
max global memory size: 21347758080
 

I'm running Windows 10 with driver version: 20.19.15.4835

Is it possible at all to allow the GPU to use a little more of the host memory? We're right on the cusp of being able to process our dataset on the GPU.

I'm using CL_MEM_USE_HOST_PTR and the clCreateBuffer call is failing with -5 when given an aligned host pointer to a large region of memory.

Many thanks!

Intel SDK for openCL Applications installing problem

$
0
0

Hey,

I'm sorry for repoening the issue again; but I couldn't find any solution in the previous Topics concerning this issue.
I've got an i7-8750H CPU in my Laptop and the Intel® UHD Graphics 630 with Driver Version 26.20.100.7000 installed.
Like other people described the installer just closes after showing the Software Development Startup Screen.
I would be very happy if any one could help me with this issue.

Trying the the Intel OpenCL Tools I get the following warning:

Intel® CPU Runtime for OpenCL™ Applications cannot be installed
Intel® CPU Runtime for OpenCL™ Applications is already installed as part of Intel® Graphics Driver. However, to update OpenCL™ for CPU support, a manual installation of the package can be performed

Kind Regards

Jonas Sorgenfrei

aoc error for emulation

$
0
0

Hi,

   I installed opencl intel fpga sdk 19.2 and after installation the hello world example seems to compile smoothly taking default board as Arria10GX. But when i try giving the emulator compilation, i get following error:

My Machine spec:

Xeon-16 cores,32 GB RAM and Ubuntu 18.04.

 

 aoc -march=emulator  -fast-emulator -v device/hello_world.cl -o bin/hello_world.aocx
Warning: Command has been deprecated. The Fast Emulator is the default emulator; use -legacy-emulator if you wish to target the Legacy Emulator.
Error: aoc: The Intel(R) Kernel Builder for OpenCL(TM) compiler (ioc64) can not be found

 

Any idea on how i can fix this.

 

OpenCL mechanism of migration

$
0
0

Hello everyone!

I would like to ask, where to read about the mechanisms, lying underneath the migration of memory objects from and to device. I would like to receive a detailed explanation for any kind of OpenCL implementation ( Intel is ok) what is happening during the buffers migration process(clEnqueueMigrateMemObjects function) (as well as enqueuing read (clEnqueueReadBuffer) and write buffers): maybe some caching is used, maybe some additional buffers, maybe dma, what calls are used to transfer the data over PCIe lanes - all such kind of details.

pipeCNN gives error.

$
0
0

Hi ,

    I am trying to run resnet 50 on FPGA using Intel opencl sdk 19.2.

Git hub : https://github.com/doonny/PipeCNN

I am getting following errors:

aoc -v -report -march=emulator -legacy-emulator -I device/RTL -L device/RTL -l rtl_lib.aoclib  -g device/conv_pipe.cl -o conv.aocx
Resolving library filenames to full paths
  lib_path = device/RTL
    lib_file = rtl_lib.aoclib
Resolved rtl_lib.aoclib to /home/vinay/Documents/opencl_fpga/PipeCNN/project/device/RTL/rtl_lib.aoclib
  lib_path = .
All OpenCL C models were extracted from specified libraries and added to compilation
aoc: Environment checks are completed successfully.
aoc: Cached files in /var/tmp/aocl/ may be used to reduce compilation time
You are now compiling the full flow!!
aoc: Selected default target board a10gx
aoc: Running OpenCL parser....
/home/vinay/Documents/opencl_fpga/PipeCNN/project/device/conv_pipe.cl:116:16: warning: unknown attribute 'task' ignored
__attribute__((task))
               ^
/home/vinay/Documents/opencl_fpga/PipeCNN/project/device/conv_pipe.cl:399:16: warning: unknown attribute 'task' ignored
__attribute__((task))
               ^
/home/vinay/Documents/opencl_fpga/PipeCNN/project/device/conv_pipe.cl:611:16: warning: unknown attribute 'task' ignored
__attribute__((task))
               ^
/home/vinay/Documents/opencl_fpga/PipeCNN/project/device/conv_pipe.cl:1026:16: error: 'max_work_group_size' attribute requires exactly 3 arguments
__attribute__((max_work_group_size(LRN_MAX_LOCAL_SIZE)))
               ^
3 warnings and 1 error generated.
Error: OpenCL parser FAILED

 

 

 

Any ideas on i can fix this .

 

 

 


How can I enable the image view and the data view for api debugger?

$
0
0

Hi, I installed the intel opencl sdk. I choose the vs option: enable OpenCL Tools API debugger, but I cannot view the image and the data. How can I solve it? Thanks. I use the GPU template provided by the SDK.

 

AttachmentSize
Downloadimage/pngoptions.PNG6.13 KB
Downloadimage/pngdebug.PNG5.98 KB

Setting breakpoint in kernel

$
0
0

Hi,

    I have Windows10 Machine with i5(4 cores) and HDGraphics 630.

I have installed Intel® SDK for OpenCL™ Applications for Windows.

I can compile and run the code in visual studio 2015, but unable to set the breakpoint.

I followed instructions:

 https://software.intel.com/en-us/openclsdk-devguide-2017-installing-inte...

 

Any pointers on how i can enable breakpoint so that i debug using visual studio 2015.

 

I would also need pointers on how i can setup opencl for fpga debugging steps in ubuntu.

 

 

Common buffer allocation for efficient OpenMP and OpenCL performance.

$
0
0

I am building a library which will simultaneously perform different compute intensive operations on a vector on the CPU side and GPU side using OpenMP and OpenCL. The problem is when I override a vector's allocator for proper alignment to enable zero-copy, the OpenMP performance suffers as the vector stops being optimized for sse and avx instructions. Hence, How to write a custom allocator for a stl vector such that it can be utilised both by OpenMP/ SSE/AVX2 for CPU side work and OpenCL / zero-copy for GPU side work ?

I found that the result of multiplying bit64 numbers was wrong.

$
0
0

OpenCL1.2/OpenCL2.0
OS:Win10
Intel(R) HD Graphics 4600

 

 

__kernel void miniTest(__global unsigned long long * buff )
{
    const unsigned int M = 0x3FFFFFFUL;
    const unsigned int R = 0x3D10UL;

    unsigned long long u = 0;
    unsigned long long c = 0;
    unsigned long long d = 0;

    buff[0] = 0x32974b6;
    buff[1] = 0x6695f8a;
    buff[2] = 0x3cc840c;
    buff[3] = 0xc8998;
    buff[4] = 0x4f06406;
    buff[5] = 0x438d148;
    buff[6] = 0x29e81a2;
    buff[7] = 0x784c484;
    buff[8] = 0x6ad6038;
    buff[9] = 0x1383ee;

    unsigned long long aA[10] = { 0 };
    aA[0] = (unsigned long long)buff[0];
    aA[1] = (unsigned long long)buff[1];
    aA[2] = (unsigned long long)buff[2];
    aA[3] = (unsigned long long)buff[3];
    aA[4] = (unsigned long long)buff[4];
    aA[5] = (unsigned long long)buff[5];
    aA[6] = (unsigned long long)buff[6];
    aA[7] = (unsigned long long)buff[7];
    aA[8] = (unsigned long long)buff[8];
    aA[9] = (unsigned long long)buff[9];

    d = (aA[0] * 2) * aA[9]
      + (aA[1] * 2) * aA[8]
      + (aA[2] * 2) * aA[7]
      + (aA[3] * 2) * aA[6]
      + (aA[4] * 2) * aA[5];

    d >>= 26;

    d += (aA[1] * 2) * aA[9]
       + (aA[2] * 2) * aA[8]
       + (aA[3] * 2) * aA[7]
       + (aA[4] * 2) * aA[6]
       + (aA[5]    ) * aA[5];

    u = d & (unsigned long long)M;       //At here , the u=0x0a1db38
    c = u * (unsigned long long)R;       //the result(c=0x09b5a0b80) is always wrong. WHY?

    unsigned int iCLow = (unsigned int)c;
    unsigned int iCHig = (unsigned int)(c >> 32);
    printf( "c=0x%x%x;\r\n" , iCHig , iCLow );

//===================================================

    aA[0] = 0x32974b6;
    aA[1] = 0x6695f8a;
    aA[2] = 0x3cc840c;
    aA[3] = 0xc8998;
    aA[4] = 0x4f06406;
    aA[5] = 0x438d148;
    aA[6] = 0x29e81a2;
    aA[7] = 0x784c484;
    aA[8] = 0x6ad6038;
    aA[9] = 0x1383ee;

    d = (aA[0] * 2) * aA[9]
      + (aA[1] * 2) * aA[8]
      + (aA[2] * 2) * aA[7]
      + (aA[3] * 2) * aA[6]
      + (aA[4] * 2) * aA[5];

    d >>= 26;
    d += (aA[1] * 2) * aA[9]
       + (aA[2] * 2) * aA[8]
       + (aA[3] * 2) * aA[7]
       + (aA[4] * 2) * aA[6]
       + (aA[5]    ) * aA[5];

    u = d & (unsigned long long)M;        //At here , the u=0x0a1db38
    c = u * (unsigned long long)R;        //the result(c=0x269b5a0b80) is ok.

    iCLow = (unsigned int)c;
    iCHig = (unsigned int)(c >> 32);
    printf( "c=0x%x%x;\r\n" , iCHig , iCLow );
}

I found that the result of multiplying bit64 numbers was wrong. WHY?

$
0
0

OpenCL1.2/OpenCL2.0
OS:Win10
Intel(R) HD Graphics 4600

 

__kernel void miniTest(__global unsigned long long * buff )
{
    const unsigned int M = 0x3FFFFFFUL;
    const unsigned int R = 0x3D10UL;

    unsigned long long u = 0;
    unsigned long long c = 0;
    unsigned long long d = 0;

    buff[0] = 0x32974b6;
    buff[1] = 0x6695f8a;
    buff[2] = 0x3cc840c;
    buff[3] = 0xc8998;
    buff[4] = 0x4f06406;
    buff[5] = 0x438d148;
    buff[6] = 0x29e81a2;
    buff[7] = 0x784c484;
    buff[8] = 0x6ad6038;
    buff[9] = 0x1383ee;

    unsigned long long aA[10] = { 0 };
    aA[0] = (unsigned long long)buff[0];
    aA[1] = (unsigned long long)buff[1];
    aA[2] = (unsigned long long)buff[2];
    aA[3] = (unsigned long long)buff[3];
    aA[4] = (unsigned long long)buff[4];
    aA[5] = (unsigned long long)buff[5];
    aA[6] = (unsigned long long)buff[6];
    aA[7] = (unsigned long long)buff[7];
    aA[8] = (unsigned long long)buff[8];
    aA[9] = (unsigned long long)buff[9];

    d = (aA[0] * 2) * aA[9]
      + (aA[1] * 2) * aA[8]
      + (aA[2] * 2) * aA[7]
      + (aA[3] * 2) * aA[6]
      + (aA[4] * 2) * aA[5];

    d >>= 26;

    d += (aA[1] * 2) * aA[9]
       + (aA[2] * 2) * aA[8]
       + (aA[3] * 2) * aA[7]
       + (aA[4] * 2) * aA[6]
       + (aA[5]    ) * aA[5];

    u = d & (unsigned long long)M;       //At here , the u=0x0a1db38
    c = u * (unsigned long long)R;       //the result(c=0x09b5a0b80) is always wrong. WHY?

    unsigned int iCLow = (unsigned int)c;
    unsigned int iCHig = (unsigned int)(c >> 32);
    printf( "c=0x%x%x;\r\n" , iCHig , iCLow );

//===================================================

    aA[0] = 0x32974b6;
    aA[1] = 0x6695f8a;
    aA[2] = 0x3cc840c;
    aA[3] = 0xc8998;
    aA[4] = 0x4f06406;
    aA[5] = 0x438d148;
    aA[6] = 0x29e81a2;
    aA[7] = 0x784c484;
    aA[8] = 0x6ad6038;
    aA[9] = 0x1383ee;

    d = (aA[0] * 2) * aA[9]
      + (aA[1] * 2) * aA[8]
      + (aA[2] * 2) * aA[7]
      + (aA[3] * 2) * aA[6]
      + (aA[4] * 2) * aA[5];

    d >>= 26;
    d += (aA[1] * 2) * aA[9]
       + (aA[2] * 2) * aA[8]
       + (aA[3] * 2) * aA[7]
       + (aA[4] * 2) * aA[6]
       + (aA[5]    ) * aA[5];

    u = d & (unsigned long long)M;        //At here , the u=0x0a1db38
    c = u * (unsigned long long)R;        //the result(c=0x269b5a0b80) is ok.

    iCLow = (unsigned int)c;
    iCHig = (unsigned int)(c >> 32);
    printf( "c=0x%x%x;\r\n" , iCHig , iCLow );
}
 

AttachmentSize
Downloadapplication/rarminiTest.rar4.08 KB

OpenCL Tool deprecated

$
0
0

Hello,

On the release note of Intel OpenCL tools, the 2019 version is deprecated for Windows 7.

 

Support for Windows* 7 has been deprecated. Please consider the latest available package supporting Windows* 7 platforms, Intel® SDK for OpenCL™ Applications 2017 R2, available at https://software.intel.com/en-us/intel-opencl/download. Intel® SDK for OpenCL™ Applications 2017 R2 will be removed at the time of Intel® SDK for OpenCL™ Applications 2019 Update 1 release. Intel® SDK for OpenCL™ Applications 2019 Update 1 will not support Windows* 7.

 

The links states in the above quote is just redirecting to the actual OpenCL Tools page. Is there a way to download the previous one ?

I would like to use the tool on my Windows 7 machine please, since it impossible to install the new one.

Alexandre

 

 

AttachmentSize
Downloadimage/jpegIntelOpenCLSDK_Issue.JPG57.76 KB

Recommended CPU for One API development?

$
0
0

I need to buy a new workstation now, and want to make sure it's a good choice for One API development in Q4 2019.  I realize this is an OpenCL forum, not One API, but I imagine there's overlap.

I'm looking at a Core i7 9700 with UHD Graphics 630.  It's a Dell Precision 3431.

I'll have to use the integrated GPU until discrete Intel GPUs are released in 2020.  I imagine One API support for Nvidia or AMD GPUs will not be great.  I've used SYCL before, and I'm aware that not all hardware is supported.

There's not much online about One API at the moment, but can anyone speculate on what would be a good system to buy now?

 


Irregular behaviour of vectors in OpenCL(1.2) kernels

$
0
0

So, I am trying to perform some operation inside an OpenCL kernel. I have this buffer named filter which is a 3x3 matrix initialized with value 1.

I pass this as an argument to the OpenCL kernel from the host side. The issue is when I try to fetch this buffer on the device side as a float3 vector.  For ex -

 

__kernel void(constant float3* restrict filter)
{
        float3 temp1 = filter[0];
        float3 temp2 = filter[1];
        float3 temp3 = filter[2];
}

 

The first two temp variables behave as expected and have all their value as 1. But, the third temp variable (temp3) has only the x component as 1 and rest of the y and z components are 0. When I fetch the buffer as only a float vector, everything behaves as expected. Am I doing something wrong? I don't want to use vload instructions as they give an overhead.

Which OEMs have good OpenCL support in their drivers?

$
0
0

Based on other forum posts, it seems that OEMs get OpenCL drivers for integrated GPUs from Intel, but they don't always push out these drivers in a timely manner.

Probably the best OpenCL support would come from an Intel NUC, since the drivers come straight from Intel.

However, if I want a higher power CPU than the 15W models which come in NUCs, I have to go with an OEM.

My preferred OEM is Dell, but I also have HP and Lenovo.

Is any OEM better than others when it comes to OpenCL drivers?

 

Map/Unmap operations with Zero copy buffer.

$
0
0

When we create physical zero copy buffers using USE_HOST_PTR, do we really need to perform map/unmap operations everytime we make changes to the buffer from the CPU side. Since, both GPU and CPU access the same memory, will not the changes propagate themselves automatically?

OpenCL.lib missing clCreateProgramWithIL?

$
0
0

Hello,

I am currently testing out some OpenCL features using SPIR-V and the llvm Clang compiler. Currently I'm trying out the example Using SPIR for fun and profit with Intel OpenCL Code Builder and I'm running into problems when trying to run the built executable. I'm running on a windows 10 machine in visual studio 2017, my target device is an Intel i7 - 8700. I've already installed the Intel OpenCL code builder studio tools and have successfully run multiple OpenCL projects already. My build targets x64.

The above example builds just fine but when I go to run the executable an error dialog box appears stating: "The procedure entry point clCreateProgramWithIL could not be located in the dynamic link library" followed by the path to my executable. I opened the OpenCL.lib that I'm targeting in the project and can see that clCreateProgramWithIL is listed along with other entry points in the library. To further investigate using the program Dependency Walker I targeted the built executable and can see that the clCreateProgramWithIL is listed as an "Unresolved C Function" I've included a snippet of the program window below.

Is this something missing from the OpenCL.lib build from Intel? I've already run multiple OpenCL projects and haven't had any problems thus far. Any help would be extremely appreciated!

Thank you for your time!

AttachmentSize
Downloadimage/pngDependWalker.PNG19.24 KB

cl_intel_d3d11_nv12_media_sharing sample code

$
0
0

Hello,

I'm playing with MediaSDK and DirectX11 interop.

Since the MediaSDK decode output is NV12 format, the OpenCL program needs to access the shared texture2D YUV data in the same format.

I fount that Y data can be accessed easily by the OpenCL kernel but UV is not. It looks like the OpenCL limitation on the format caused the issue. I searched on web and found that there is Intel extension on this - cl_intel_d3d11_nv12_media_sharing. I checked in the device extension has it supported already.

Can genius of Intel provide some detail usage help or example code on this?

 

Thanks

Regards,

Simon

Viewing all 1182 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>