cancel
Showing results for 
Search instead for 
Did you mean: 

FirePro Development

adams
Journeyman III
Journeyman III

FireRays IntersectionApi Create Exception

Hi,

Since I need a fast ray interesction testing API I wanted to give FireRays a try, but I am stuck at api creation. I do it exactly like described in pdf that comes with SDK, but IntersectionApi::Create throws exception - 'Cannot read the contents of a File'. Do you know what might be the reason for this exception?

0 Kudos
Reply
5 Replies
dmitryk
Staff
Staff

Re: FireRays IntersectionApi Create Exception

Hi adams,

Can you provide your system configuration? Can you also try the attached .dll instead of original one and report the result?

Thanks,

-Dmitry

0 Kudos
Reply
adams
Journeyman III
Journeyman III

Re: FireRays IntersectionApi Create Exception

Thanks dmitryk,

right now I have different issue, I successfully created API for CPU device, for GPU I get 'Internal Error', both created with kOpenCl flag.

I have FX-8350 and R9 290 (I use 15.4 drivers instead of the newest ones).

0 Kudos
Reply
dmitryk
Staff
Staff

Re: FireRays IntersectionApi Create Exception

I would recommend updating to the latest driver to make sure you have all recent fixes for OpenCL driver and runtime. Internal error most likely means kernel compilation issue for GPU . If updating the driver doesn't help I can provide you the version with logging enabled.

0 Kudos
Reply
adams
Journeyman III
Journeyman III

Re: FireRays IntersectionApi Create Exception

I don't use driver version 15.7.1 because my OpenCL 2.0 application crashes while using it, clBuildProgram throws stack overflow exception, while under 15.4.1 it builds without problem (I am 100% sure it's due to one recursive function I have there).

Either way, with 15.7.1 driver the problem still exists, I still get 'Internal Error' when I select GPU device.

Also while calling IntersectBatch I get 'clEnqueueWriteBuffer failed' while using CPU device:

     ray *rays = new ray[512 * 512];

    for (int i = 0; i < 512; i++)

    {

        for (int j = 0; j < 512; j++)

        {

            rays[i * 512 + j] = getRay(i, j);

        }

    }

    Intersection *isect = new Intersection[512 * 512];

    try

    {

        api_->IntersectBatch(rays, 512 * 512, isect);

    }

0 Kudos
Reply
dmitryk
Staff
Staff

Re: FireRays IntersectionApi Create Exception

Hi adams,

I will check it with 15.7 on my side and get back to you quickly. BTW, you can provide your CL2.0 code which doesn't compile with 15.7 in the meantime and we will try to get it sorted.

Thanks,

-Dmitry

0 Kudos
Reply