Kernel Builder Crashes when trying to "Analyze" kernel. Build is fine

Kernel Builder Crashes when trying to "Analyze" kernel. Build is fine

Hi

 

I have this error when I try to analyze a kernel. The build is fine for both 32-bit and 64-bit Kernel Builder.

What's the problem? 

Problem signature:
  Problem Event Name:    APPCRASH
  Application Name:    KernelBuilder64.exe
  Application Version:    3.0.1.15611
  Application Timestamp:    5294801b
  Fault Module Name:    StackHash_1e37
  Fault Module Version:    0.0.0.0
  Fault Module Timestamp:    00000000
  Exception Code:    c0000005
  Exception Offset:    00000000034202c6
  OS Version:    6.1.7601.2.1.0.256.48
  Locale ID:    1033
  Additional Information 1:    1e37
  Additional Information 2:    1e373e69fff075aed81f57003e66ce10
  Additional Information 3:    9f0e
  Additional Information 4:    9f0e095f32a88249d7a2b7eca4e322ea

Read our privacy statement online:
  http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
  C:\Windows\system32\en-US\erofflps.txt

3 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

This is the kernel I am trying to compile. 

//KERNEL_SIMPLE
__kernel void Convolve(const __global  float * pInput,
                        __constant float * pFilter,
                        __global  float * pOutput,
                        const int nInWidth,
                        const int nFilterWidth)
{
    const int nWidth = get_global_size(0);

    const int xOut = get_global_id(0);
    const int yOut = get_global_id(1);

    const int xInTopLeft = xOut;
    const int yInTopLeft = yOut;

    float sum = 0;
    for (int r = 0; r < nFilterWidth; r++)
    {
        const int idxFtmp = r * nFilterWidth;

        const int yIn = yInTopLeft + r;
        const int idxIntmp = yIn * nInWidth + xInTopLeft;

        for (int c = 0; c < nFilterWidth; c++)
        {
            const int idxF  = idxFtmp  + c;
            const int idxIn = idxIntmp + c;
            sum += pFilter[idxF]*pInput[idxIn];
        }
    }
    const int idxOut = yOut * nWidth + xOut;
    pOutput[idxOut] = sum;
}
//KERNEL_SIMPLE

 

Hi Dave,

Can you please let us know your inputs to Kernel Builder (what you fill your buffers with, and the global/local group sizes you use)?

Also, I assume you are using the 2013 SDK (or 2012) - can you please let us know your exact version?

Thanks,

Oren

Leave a Comment

Please sign in to add a comment. Not a member? Join today