- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I 'm currently trying to deploy Intel OpenCL on the GPU of my Intel(R) Xeon(R) CPU E3-1505M v5 @ 2.80GHz on Centos 7.1. My configuration is :
- intel_sdk_for_opencl_2016_6.3.0.1904_x64.tgz
- driver r3.1.58620
- eclipse Oxygen, jre-8u111-linux-x64, mono-4.0.1-4.x86_64
I'm following the Code Builder tutorial. Every thing works fine until this step : https://software.intel.com/en-us/node/671857
When I try to launch the kernel, I have an error message telling me that the buffers are not assigned:
execution analysis error: No variable assigned to kernel argument #0 (ptrInput)
So I go to the OpenCL Kernel Analysis Input view and the configuration as well as the assigned variables are all in grey. I cannot click on the configuration and the kernel variables fields are empty.
Can you please help me ?
Regards,
Mathieu
Here are the buffers I have declared :
<!-- Kernel Builder Variables Database --> <KernelBuilderBuffers> <BufferDetails> <Name>ptrInput</Name> <DataType>uchar</DataType> <MemoryFlags>CL_MEM_READ_WRITE</MemoryFlags> <AccessQualifier>READ_ONLY</AccessQualifier> <I_O_Mode>0</I_O_Mode> <Source>/home/user/STI/THOREL/workspace_eclipse/Code Builder Sessions/session_0/bin_ptrInput.bin</Source> <ReadOutput>true</ReadOutput> <BufferSize>262144</BufferSize> <InitByRandom>false</InitByRandom> <InitByZero>true</InitByZero> <UseAsSVM>false</UseAsSVM> </BufferDetails> <BufferDetails> <Name>ptrOutput</Name> <DataType>uchar</DataType> <MemoryFlags>CL_MEM_READ_WRITE</MemoryFlags> <AccessQualifier>READ_ONLY</AccessQualifier> <I_O_Mode>1</I_O_Mode> <Source></Source> <ReadOutput>true</ReadOutput> <BufferSize>262144</BufferSize> <InitByRandom>false</InitByRandom> <InitByZero>false</InitByZero> <UseAsSVM>false</UseAsSVM> </BufferDetails> </KernelBuilderBuffers> <KernelBuilderImages/> <KernelBuilderSamplers/>
The kernel is :
#define FILTER_WIDTH ( 11 ) #define FILTER_SIZE ( FILTER_WIDTH * FILTER_WIDTH ) #define FILTER_INF ( 5 ) // Need to be calculated -> floor( FILTER_WIDTH / 2 ) __kernel void convolve_no_local( const __global unsigned char * restrict ptrInput, __global unsigned char * restrict ptrOutput, const int iWidth, const int iHeight ) { // Must be normalized const int arrFilter[ FILTER_SIZE ] = { -2, -2, -2, -2, -2, -2, -2, -2, -2, -2, 0, -2, -2, -2, -2, -2, -2, -2, -2, -2, 0, 2, -2, -2, -2, -2, -2, -2, -2, -2, 0, 2, 2, -2, -2, -2, -2, -2, -2, -2, 0, 2, 2, 2, -2, -2, -2, -2, -2, -2, 0, 2, 2, 2, 2, -2, -2, -2, -2, -2, 0, 2, 2, 2, 2, 2, -2, -2, -2, -2, 0, 2, 2, 2, 2, 2, 2, -2, -2, -2, 0, 2, 2, 2, 2, 2, 2, 2, -2, -2, 0, 2, 2, 2, 2, 2, 2, 2, 2, -2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 }; const int iWorkGlobalX = get_global_id( 0 ); const int iWorkGlobalY = get_global_id( 1 ); if( iWorkGlobalX >= FILTER_INF && iWorkGlobalX < iWidth - FILTER_INF && iWorkGlobalY >= FILTER_INF && iWorkGlobalY < iHeight - FILTER_INF ) { const int iInputX = ( iWorkGlobalX - FILTER_INF ); const int iInputY = ( iWorkGlobalY - FILTER_INF ); int iInput; int iValue = 0; #ifdef __UNROLL_3x3__ iInput = iInputX + iInputY * iWidth; iValue = iValue + ( arrFilter[ 0 ] * convert_int( ptrInput[ iInput ] )); iValue = iValue + ( arrFilter[ 1 ] * convert_int( ptrInput[ iInput + 1 ] )); iValue = iValue + ( arrFilter[ 2 ] * convert_int( ptrInput[ iInput + 2 ] )); iInput = iInput + iWidth; iValue = iValue + ( arrFilter[ 3 ] * convert_int( ptrInput[ iInput ] )); iValue = iValue + ( arrFilter[ 4 ] * convert_int( ptrInput[ iInput + 1 ] )); iValue = iValue + ( arrFilter[ 5 ] * convert_int( ptrInput[ iInput + 2 ] )); iInput = iInput + iWidth; iValue = iValue + ( arrFilter[ 6 ] * convert_int( ptrInput[ iInput ] )); iValue = iValue + ( arrFilter[ 7 ] * convert_int( ptrInput[ iInput + 1 ] )); iValue = iValue + ( arrFilter[ 8 ] * convert_int( ptrInput[ iInput + 2 ] )); #else int iRow; int iCol; int iFilter = 0; for( iRow = 0 ; iRow < FILTER_WIDTH ; iRow++ ) { iInput = iInputX + ( iInputY + iRow ) * iWidth; for( iCol = 0 ; iCol < FILTER_WIDTH ; iCol++ ) { iValue = iValue + ( arrFilter[ iFilter ] * convert_int( ptrInput[ iInput ] )); iInput++; iFilter++; } } #endif ptrOutput[ iWorkGlobalX + iWorkGlobalY * iWidth ] = convert_uchar_sat( iValue ); } }
Here are the view screeshots :
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The only Eclipse versions supported right now are Mars and Luna. (See https://software.intel.com/en-us/intel-opencl). ; According to Eclipse, Oxygen is not due to be released until June 2017. Is there any chance you could try one of these earlier supported versions of Eclipse?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The only Eclipse versions supported right now are Mars and Luna. (See https://software.intel.com/en-us/intel-opencl). ; According to Eclipse, Oxygen is not due to be released until June 2017. Is there any chance you could try one of these earlier supported versions of Eclipse?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
As you mentioned I installed Eclipse Mars.2 and it works even if sometimes the OpenCL Kernel Analysis Input view crash. Thank you Jeffrey.
I can now select the buffers and launch the kernel. However, the firefox (version 51 and 38) html report page is empty. An error message is displayed: "Error: can not find main menu data". So I manually opened the main.js file where it comes from ans it appears that the file '/data/mainMenu.ajax' is missing.
I think it should be generated during the execution. You will find attach to this message the output of the execution : 20161220111137.zip
Can you please help me with this
Regards,
Mathieu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I've been able to reproduce similar behavior. A bug has been filed. Thanks for your helpful input on this.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page