The OpenCL Emulator-Debugger is an open source project that allows you to use Microsoft® Visual Studio® to compile and debug OpenCL kernels as C++ procedures. This tool can help you focus more on your code without having to worry about the intricacies of OpenCL.
It is a great news.
I have try it... run it...
But a little tutorial will be great ! Some issues like :
- How to generate the "cpp" file from the "cl" file ?
- How to switch between EMU and OpenCL ?
- ...
Hi,
Do we have to generate the C++ kernel by hand ?
your .cpp code IS your kernel.
I guess, yes, usually the code is written by hand.
Sorry, I might be missing the question.
1. the document is in ..\opencl_emu\doc. not clean enough. will be updated very shortly.
2. your .cpp file IS your cl. you do not have to change anything in your code to run it on a "real" HW, please read the doc.
3. good luck
It's good to have several ways to debug OpenCL. However, you should forget emulation and simulation. That's not the proper way to debug because the GPU has not the same precision and mathematic behavior than a CPU where you execute the emulator.
What we need is the AMD's version of the NVIDIA's nSight: full integration with your favourite IDE, place breakpoints, inspect variables, go forward/backward/to cursor, etc... and all that with trace/execution 100% on the native hardware device.
Originally posted by: bubu It's good to have several ways to debug OpenCL. However, you should forget emulation and simulation. That's not the proper way to debug because the GPU has not the same precision and mathematic behavior than a CPU where you execute the emulator.
What we need is the AMD's version of the NVIDIA's nSight: full integration with your favourite IDE, place breakpoints, inspect variables, go forward/backward/to cursor, etc... and all that with trace/execution 100% on the native hardware device.
Absolutely agree. While I’ve never used nSight and cannot judge I'm sure it's a great product. but I'd argue that from having nothing to getting a reasonably sophisticated tool is a good step forward. You may not agree but I guess integer precision does not depend on HW, float point's one might but in 98% of the cases you would solve your problems inside the emulator.
hi, alyashev
I can't use emulator in xp, because no ConvertThreadToFiberEx function in xp. can you fix it by ConvertThreadToFiber or other methods?
I apologize but I won't be able to support XP.
thanks for reply, but I think you should updte doc
Before proceeding to the installation, please ensure the following requirements.
i. AMD Accelerated Parallel Processing (APP) SDK.
ii. AMD OpenCL Emulator Installation Files.
iii. AMD GPU with OpenCL support recommended but not required.
iv. Microsoft Visual Studio 2008.
v. Microsoft Windows XP or later.
Microsoft Windows vista or later.
You are right. I'll try to update it. Sorry for inconvinience.