AnsweredAssumed Answered

clAmdFft - Multi-Device enqueueTransform Failure

Question asked by stevenovakov on Jun 26, 2013
Latest reply on Jul 23, 2013 by liwoog

I hope you guys can tell how obsessed I am with trying to get this to work due to the sheer volume of my recent posts on the topic

 

Anyways, essentially, I have a large matrix of dual polarizations, and I'm needing to fft each column individually. Here is is a summary of how this plays out in the handler, (shown below).

 

for columnIterator:

    for device:

          clAmdFftEnqueueTransform (  deviceCommandQueue , columnIterator->data() )

          deviceCommandQueue->flush()

          columnIterator++

 

    for device

          deviceCommandQueue->finish()

 

Every time, without failure, for any number of columns greater than 1 column, I get the following error in console, (here there are 2 columns):

 

Created CommQueue, Dev: 0

Created CommQueue, Dev: 1

Enqueueing Column : 0

Enqueueing Column : 1

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

FINAL Read 0 Complete

FINAL Read 1 Complete

 

However, upon closer inspection, it seems that, in fact, it is the second DEVICE which is consistently failing to enqueue the kernels:

 

Created CommQueue, Dev: 0

Created CommQueue, Dev: 1

Enqueueing Column : 0

Enqueueing Column : 1

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

FINAL Read 0 Complete

FINAL Read 1 Complete

Enqueueing Column : 2

Enqueueing Column : 3

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

FINAL Read 2 Complete

FINAL Read 3 Complete

Enqueueing Column : 4

Enqueueing Column : 5

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

OPENCL_V< CLFFT_INVALID_PROGRAM_EXECUTABLE > (1201): clEnqueueNDRangeKernel failed

FINAL Read 4 Complete

FINAL Read 5 Complete


...etc... for N devices. Notice that the 0, 2, 4, etc enqueues (Device 0), work perfectly well.     The handler is attached as a text file.

 

Any ideas? Thanks.

Attachments

Outcomes