OpenCL on Power8

Is it still the case that opencl is wholly unsupported on Power8 hardware? If so, why? I am currently looking into acquiring some Power 8 blades for HPC, and being CUDA-only significantly hurts that decision. Is vulkan similarly unsupported on power 8?

At this time, OpenCL is not supported for use on the GPU in the Power architecture.

Why? Let’s make an educated guess: The number of Power 8 systems is small compared to the number of x86 systems sold, and only a small fraction of Power 8 system buyers wish to use OpenCL. Supporting OpenCL on Power 8 would incur one-time and ongoing costs to NVIDIA that they cannot recoup.

Hurts how? Hurts whom?

on the other hand, it makes their power 8 offerings poison for people who would like to support opencl computation on a cluster. power 8 machines as part of a cluster become immediately useless to any opencl computation. it seemed like with nvidia providing beta support for opencl2, they were doing better on this front, but that seems less likely now

the second part of my question is also relevant. “does nvidia support vulkan on power 8”?

me, cause i’d like to have a cluster that can run both cuda and opencl using applications. it also hurts the chances my bosses will ok us acquiring power 8 hardware at all cause some of them have already voiced worries about being locked into a single vendor solution like CUDA.

As an IBM shareholder it pains me to point this out, but you can build some very nice HPC nodes using architectures other than Power 8. You wouldn’t be locked into a single-vendor hardware architecture if you go down that alternative path and I suspect this would please your bosses.

As far as I can see it, OpenCL is a dead-end street. It looked like a reasonable alternative for a number of years, but hasn’t for the last four to five years. I think even Apple, who originally proposed OpenCL, froze support at version 1.2 years ago?

i’m fully aware. it’s also an unfortunate solution and one I would like to avoid

which is why i also have been asking if nvidia supports vulkan on power 8. cause they do on x86_64, and vulkan can be used for compute as well (and there’s some talk about unification of opencl and vulkan).

By the way, it doesn’t make much sense for nvidia to be including beta support of opencl 2 in their latest drivers if opencl is totally dead. From what I hear, FPGAs are picking up opencl too.

Not sure why that’s “an unfortunate solution”. If the stated goal is to avoid vendor lock in, going with a single-vendor hardware architecture seems counterproductive to achieving that goal. Going with an x64 platform gives you choices both in terms of system vendor but also accelerator technology.

Being responsive to customer requests that are economically sensible is a big part of being a successful technology company. The only OpenCL application of importance I am aware of is Folding@Home, where NVIDIA hardware has been providing 80% of the total computational horse power for the project for many years. Other than that, I see OpenCL as a don’t care for NVIDIA’s business. CUDA on the other hand is of central importance to some of NVIDIA’s fastest growing markets. One could speculate that rudimentary, experimental support for some OpenCL 2.0 features was added to support Folding@Home or some unknown project at an important customer in order to keep that paying customer happy.

Let me be blunt: The world market for Power 8 systems that require OpenCL probably equates to dozens of additional GPUs sold. If you were a for-profit GPU vendor, would you invest in OpenCL for such a platform (the full cost of just a single engineer would easily come to $300K p.a.)? I rest my case.

There are a great many requested features on these forums that are not implemented due to lack of sufficient resources. This is not unique to OpenCL.

Many feature requests like this get traction when enough customers driving enough demand make the business case sensible to invest in.

I’m not aware of any official Vulkan support in the NVIDIA driver on Power systems either.

I’d like to point out that you may also have an advocate in IBM. I’d encourage you to make your concerns known to IBM as well. If IBM aggregates enough demand, that may help to move the needle, as obviously they are a very large, important partner for NVIDIA.

I am definitely going to be bringing it up with IBM, as they themselves are either unaware, or didn’t bother to mention the lack of opencl support.

OpenCL was not supported on the Power 8 servers, but does anyone know if this has changed for the IBM Power 9 servers running Linux?

no change at this point in time

OpenCL is not supported for use on the GPU in a IBM power architecture system as of today.

I believe you should be able to use OpenCL on a IBM Power7/8/9 Linux-on-Power system targetting the CPU. You should have that discussion directly with IBM, if interested in that approach.

Thanks for the quick reply Robert_Crovella.