Hi,
Sometimes I got a crash of my application with the following stack trace :
> atiocl.dll!0f6c463a()
[Frames below may be incorrect and/or missing, no symbols loaded for atiocl.dll]
atiocl.dll!0f2ed724()
atiocl.dll!0f2ed82c()
atiocl.dll!0f2ad8cb()
OpenCL.dll!000a172c()
pureStudio.exe!__fseeki64() + 0xdec0 bytes C++
pureStudio.exe!__fseeki64() + 0x9b6f bytes C++
pureStudio.exe!__fseeki64() + 0x1f027 bytes C++
msvcr90d.dll!5af8327f()
ntdll.dll!77bb041d()
ntdll.dll!77b79d45()
It is impossible to learn much from this stack trace alone. To debug this you will need access to the source code that is calling OpenCL, which appears to be pureStudio. If you cannot access this then I don't think you can make much progress.
Originally posted by: viewon01 Hi,
Sometimes I got a crash of my application with the following stack trace :
> atiocl.dll!0f6c463a()
[Frames below may be incorrect and/or missing, no symbols loaded for atiocl.dll]
atiocl.dll!0f2ed724()
atiocl.dll!0f2ed82c()
atiocl.dll!0f2ad8cb()
OpenCL.dll!000a172c()
pureStudio.exe!__fseeki64() + 0xdec0 bytes C++
pureStudio.exe!__fseeki64() + 0x9b6f bytes C++
pureStudio.exe!__fseeki64() + 0x1f027 bytes C++
msvcr90d.dll!5af8327f()
ntdll.dll!77bb041d()
ntdll.dll!77b79d45()
Unfortunately I have no idea of the problem... I don't have the SDK source code 🙂
So I would like to know how I can try to fix this problem ?
Thanks
Please provide your system info and the code you are working on.
I agree,
I'm using MSVC + QT + Boost + OpenCL....
First, the __fseeki64 sounds to be a "file" related operation. I do nothing like this in my code.
It sounds that it is not related to QT (I'm able to trace QT code, and it is always signed as Q...).
Maybe it is related to MSVC or BOOST ... but which code call a method like this : OpenCL.dll!000a172c() ????
I don't know what it is, where it is etc... and really don't know how to debug this !!!
I have finally located the problem, it is when I do the following :
_materialReferenceBuffer = new cl::Buffer(*_context, CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR, sizeof(MaterialReference) * _controller->materialReferences.size(), (void*)&_controller->materialReferences[0]);
It is not in every cases... but just sometimes !!
I have some critical sections around this... memory should be correct !!!
Nice to hear that you fixed it
No no... I know where is the problem... but don't know why !
What is strange is that my stack contains "__fseeki64" and not my method name ! Also, I can't access to all the variables !
Why my stack looks like this... and not a normal stack... I don't know !
NB: I just know the line that crash my app 😛
oh sorry for misinterpretation. But i would suggest to post your system configuration( CPU, GPU, OS, SDK, Catalyst).
Also provide some testcase. It is really difficult to comment anything otherwise.
You're right...
But it is too big/complex to be on the forum... 😞
when I create a new Buffer like this
b = new Buffer(.... CL_MEM_COPY_HOST_PTR, mySize, myPointer);
then delete it like this
delete b
It does not delete/free the 'myPointer' memory zone ? Right ?
you are right. The memory used for buffer will only be allocated when you free 'mypointer'. You can check that in the clean up code of any sample.
Try providing some simple test case which depicts the problem you are facing. That can be helpful
Thanks
Finally I think that my stack is corrupted, maybe due to a wrong "memory" operation... but how to detect this ?
Also, sometimes I got this kind of error :
Really, I don't know what's happening !
atiocl.dll!clGetSamplerInfo() + 0x419219 bytes
[Frames below may be incorrect and/or missing, no symbols loaded for atiocl.dll]
atiocl.dll!clGetSamplerInfo() + 0x4192d2 bytes
> atiocl.dll!clGetSamplerInfo() + 0x37d54 bytes
00000001()
hi viewon01,
Any progress on the problem from your side? HAve you tried some memory leak tools like valgrind.
http://forums.amd.com/forum/messageview.cfm?catid=390&threadid=143468&enterthread=y&STARTPAGE=1