The Khronos Group - a non-profit industry consortium to develop, publish and promote open standard, royalty-free media authoring and acceleration standards for desktop and handheld devices, combined with conformance qualification programs for platform and device interoperability.

If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Getting the most Powerful device

Hi there,

I'm asking myself, how to get the most powerful device from the List of devices I get by queueing CL. My Problem is, that CL only gives me some hints that would indicate the wrong computing device. Example:

So it seems that the most powerful computation unit will be my i7. In this simple case I could differ between CL_DEVICE_TYPE. But when it comes to Sandy bridge both units are of TYPE_CPU, so it is even harder to calculate possible FLOPs.

Any suggestions of what informations i can get without starting all the devices with a small kernel to get my informations?

Re: Getting the most Powerful device

You could try parsing the platform vendor name and device name strings for nvidia, amd, intel, etc. Depending on what that gives you, you could look for implementation specific extensions. For example, Nvidia GPUs support an extension for getting the compute capability. Thereafter, you can work out how many CUDA cores you have. There isn't a generic method and this approach could fail if a vendor changes their name strings.

As a side note, running a few kernels beforehand could help you to write auto-tuning code, if you want to do that. That could happen the first time your program runs, after which it stores the configuration settings and device names. If the same device names come up next time the program runs, reuse the configuration settings. If not (i.e. hardware change) rerun the benchmarks. Just an idea.

Re: Getting the most Powerful device

Nice idea with the auto tuning, sad notice with the computing power. The Problem with the autotuning setup is, there won't be any answers from users. So it would only help for those, having a pc like mine (or maybe of one of my colleagues).