Questions tagged [opencl]

OpenCL (Open Computing Language) is a framework for writing programs that execute across heterogeneous platforms consisting of CPUs, GPUs, and other processors.

This tag refers to the OpenCL (Open Computing Language) by Khronos Group. It is the first open, royalty-free standard for cross-platform, parallel programming of modern processors found in personal computers, servers and handheld/embedded devices. Using OpenCL, one can affect execution of parallel computations greatly improving speed and responsiveness of a wide spectrum of applications: From gaming and entertainment to scientific and medical software.

OpenCL is an API and a C99-like language; for each device, implementations are provider-specific. Some of the OpenCL implementation providers are:

Questions about OpenCL can be asked here along with the vendor/provider and architecture details. Bug reports should be discussed in the respective forums of the vendors NVIDIA Forums, Intel Forums, AMD Forums

Books

5705 questions
114
votes
5 answers

What is a bank conflict? (Doing Cuda/OpenCL programming)

I have been reading the programming guide for CUDA and OpenCL, and I cannot figure out what a bank conflict is. They just sort of dive into how to solve the problem without elaborating on the subject itself. Can anybody help me understand it? I have…
smuggledPancakes
  • 9,881
  • 20
  • 74
  • 113
108
votes
10 answers

NVIDIA vs AMD: GPGPU performance

I'd like to hear from people with experience of coding for both. Myself, I only have experience with NVIDIA. NVIDIA CUDA seems to be a lot more popular than the competition. (Just counting question tags on this forum, 'cuda' outperforms 'opencl'…
Eugene Smith
  • 9,126
  • 6
  • 36
  • 40
96
votes
8 answers

Best approach for GPGPU/CUDA/OpenCL in Java?

General-purpose computing on graphics processing units (GPGPU) is a very attractive concept to harness the power of the GPU for any kind of computing. I'd love to use GPGPU for image processing, particles, and fast geometric operations. Right now,…
Frederik
  • 14,156
  • 10
  • 45
  • 53
93
votes
8 answers

Using Keras & Tensorflow with AMD GPU

I'm starting to learn Keras, which I believe is a layer on top of Tensorflow and Theano. However, I only have access to AMD GPUs such as the AMD R9 280X. How can I setup my Python environment such that I can make use of my AMD GPUs through…
Nyxynyx
  • 61,411
  • 155
  • 482
  • 830
92
votes
11 answers

OpenGL vs. OpenCL, which to choose and why?

What features make OpenCL unique to choose over OpenGL with GLSL for calculations? Despite the graphic related terminology and inpractical datatypes, is there any real caveat to OpenGL? For example, parallel function evaluation can be done by…
dronus
  • 10,774
  • 8
  • 54
  • 80
66
votes
8 answers

OpenCL / AMD: Deep Learning

While "googl'ing" and doing some research I were not able to find any serious/popular framework/sdk for scientific GPGPU-Computing and OpenCL on AMD hardware. Is there any literature and/or software I missed? Especially I am interested in deep…
daniel451
  • 10,626
  • 19
  • 67
  • 125
66
votes
2 answers

What is the difference between OpenCL and OpenGL's compute shader?

I know OpenCL gives control of the GPU's memory architecture and thus allows better optimization, but, leaving this aside, can we use Compute Shaders for vector operations (addition, multiplication, inversion, etc.)?
Maiss
  • 1,641
  • 4
  • 18
  • 23
55
votes
1 answer

Abysmal OpenCL ImageSampling performance vs OpenGL TextureSampling

I've recently ported my volumeraycaster from OpenGL to OpenCL, which decreased the raycaster's performance by about 90 percent. I tracked the performance decrease to the OpenCL's imagesampling functions, which are much slower than the respective…
user1449137
  • 651
  • 5
  • 3
50
votes
2 answers

Barriers in OpenCL

In OpenCL, my understanding is that you can use the barrier() function to synchronize threads in a work group. I do (generally) understand what they are for and when to use them. I'm also aware that all threads in a work group must hit the…
Jonathan DeCarlo
  • 2,798
  • 1
  • 20
  • 24
48
votes
1 answer

Questions about global and local work size

Searching through the NVIDIA forums I found these questions, which are also of interest to me, but nobody had answered them in the last four days or so. Can you help? Original Forum Post Digging into OpenCL reading tutorials some things stayed…
Framester
  • 33,341
  • 51
  • 130
  • 192
45
votes
7 answers

Complete .NET OpenCL Implementations

I've been looking all over but have had little luck. Are there any well documented .NET binding implementations for OpenCL? (I'd take something for CUDA if I had to). I've run into a variety of implementations, CUDA.NET, OpenCL.NET, OpenTK / Cloo…
Adam Haile
  • 30,705
  • 58
  • 191
  • 286
45
votes
2 answers

Why did Google choose RenderScript instead of OpenCL

I've been wondering if it was possible to use OpenCL for Android, find out that it wasn't possible, and dropped the subject altogether. But thanks to the blog post from january 14th on the official Android Developer blog…
Redwarp
  • 3,221
  • 3
  • 31
  • 44
44
votes
3 answers

How do I use local memory in OpenCL?

I've been playing with OpenCL recently, and I'm able to write simple kernels that use only global memory. Now I'd like to start using local memory, but I can't seem to figure out how to use get_local_size() and get_local_id() to compute one "chunk"…
splicer
  • 5,344
  • 4
  • 42
  • 47
42
votes
8 answers

Debugger for OpenCL

I am working on OpenCL. Does anyone know of a good debugger for OpenCL so that I can step into the OpenCL code and trace?
Rakesh K
  • 8,237
  • 18
  • 51
  • 64
40
votes
9 answers

How to get a "random" number in OpenCL

I'm looking to get a random number in OpenCL. It doesn't have to be real random or even that random. Just something simple and quick. I see there is a ton of real random parallelized fancy pants random algorithms in OpenCL that are like thousand…
user886910
1
2 3
99 100