Running more than one CUDA applications on one GPU

CUDA activity from independent host processes will normally create independent CUDA contexts, one for each process. Thus, the CUDA activity launched from separate host processes will take place in separate CUDA contexts, on the same device. CUDA activity in separate contexts will be serialized. The GPU will execute the activity from one process, and when … Read more

CUDA: How many concurrent threads in total?

The GTX 580 can have 16 * 48 concurrent warps (32 threads each) running at a time. That is 16 multiprocessors (SMs) * 48 resident warps per SM * 32 threads per warp = 24,576 threads. Don’t confuse concurrency and throughput. The number above is the maximum number of threads whose resources can be stored … Read more

Compression library using Nvidia’s CUDA [closed]

We have finished first phase of research to increase performance of lossless data compression algorithms. Bzip2 was chosen for the prototype, our team optimized only one operation – Burrows–Wheeler transformation, and we got some results: 2x-4x speed up on good compressible files. The code works faster on all our tests. We are going to complete … Read more

Accelerating MATLAB code using GPUs?

MATLAB does support CUDA based GPU. You have to access it from the “Parallel Computing Toolbox”. Hope these 2 links also help: Parallel Computing Toolbox Features Key Features Parallel for-loops (parfor) for running task-parallel algorithms on multiple processors Support for CUDA-enabled NVIDIA GPUs Full use of multicore processors on the desktop via workers that run … Read more

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

In contrast to the other OpenGL shader types, compute shaders are not directly related to computer graphics and provide a much more direct abstraction of the underlying hardware, similar to CUDA and OpenCL. It provides customizable work group size, shared memory, intra-group synchronization and all those things known and loved from CUDA and OpenCL. The … Read more

GPU Programming, CUDA or OpenCL? [closed]

If you use OpenCL, you can easily use it both on Windows and Linux because having display drivers is enough to run OpenCL programs and for programming you would simply need to install the SDK. CUDA has more requirements on specific GCC versions etc. But it is not much more difficult to install on Linux … Read more

When to call cudaDeviceSynchronize?

Although CUDA kernel launches are asynchronous, all GPU-related tasks placed in one stream (which is the default behavior) are executed sequentially. So, for example, kernel1<<<X,Y>>>(…); // kernel start execution, CPU continues to next statement kernel2<<<X,Y>>>(…); // kernel is placed in queue and will start after kernel1 finishes, CPU continues to next statement cudaMemcpy(…); // CPU … Read more

How can I flush GPU memory using CUDA (physical reset is unavailable)

check what is using your GPU memory with sudo fuser -v /dev/nvidia* Your output will look something like this: USER PID ACCESS COMMAND /dev/nvidia0: root 1256 F…m Xorg username 2057 F…m compiz username 2759 F…m chrome username 2777 F…m chrome username 20450 F…m python username 20699 F…m python Then kill the PID that you no … Read more

OpenGL vs. OpenCL, which to choose and why?

OpenCL is created specifically for computing. When you do scientific computing using OpenGL you always have to think about how to map your computing problem to the graphics context (i.e. talk in terms of textures and geometric primitives like triangles etc.) in order to get your computation going. In OpenCL you just formulate you computation … Read more

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)