Blog

Heavy computing with GLSL – Part 4: NVIDIA optimizations

|

In my recent post about double emulation in GLSL I tested the shader code on my ATI GPU. That was a mistake... Mauna pointed out that the double emulation shader does not work on NVIDIA GPUs. I checked that and it proved that this was not a single problem on a specific card. I reckon that it must be some weird optimization on NVIDIA cards that break the emulation code. So I searched for a way to… [read more →]

Heavy computing with GLSL – Part 3: Hardware double precision

|

Usually GPUs do not support double precision. However, since it has become popular to utilize GPUs for computations of all sorts and the introduction of languages to support these efforts (like OpenCL, Cuda) it has become more and more important to support greater precision. To improve performance of our mandelbrot project a little bit further, I will show how to use real, hardware accelerated… [read more →]

Heavy computing with GLSL – Part 2: Emulated double precision

|

In my last post I introduced a simple mandelbrot fractal shader with GLSL. Unfortunately Intentionally, the shader code uses single precision floating point variables which ensures great performance but limits the zoom factor to about 17 before the lack of accuracy of the floating point variables takes over and all you get is a block-ish image of some sort at greater zoom levels: Since I am very… [read more →]

Heavy computing with GLSL – Part 1

|

Introduction In my previous GLSL post I have shown how to draw a white quad. Since this is not the greatest visual experience, I will show something more interesting you can do with shaders in this post. I have chosen the famous mandelbrot fractal. It's nice and colorful. Quite a fine eyecatcher. Download the code: GLSL_SimpleMandel (windows version) The code was tested on WinXP/ATI-GPU and… [read more →]