Logo by dainbramage - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Visit the official fractalforums.com Youtube Channel
 
*
Welcome, Guest. Please login or register. November 27, 2020, 09:51:24 PM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: 1 2 [3]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: (bi directional) path tracing a mandelbulb  (Read 6790 times)
0 Members and 1 Guest are viewing this topic.
Jesse
Download Section
Fractal Schemer
*
Posts: 1013


« Reply #30 on: August 16, 2011, 01:16:28 AM »

Thank you very much, Syntopia!

I just realized that OpenCL is a standard and there are several different implementations of it like you told.
So i guess the Intel implementation is only using the CPU whereas the Nvidia is only using GPU.

I will test the GPU caps viewer tomorrow, i had also a 8800 onboard and replaced it with a 9500 GT recently because i had some memory problems and wanted to test if that would help.  I don't think that the 9500 has double precision support, had choosen it more for low power consumption to fit in my system.
Logged
ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #31 on: August 16, 2011, 01:01:24 PM »

Hmm, would be cool to know if double precision is supported anyways or only with a decent card.
I thought OpenCL (1.1) would use the CPU, maybe SSE2, if the GPU doesnt supports it... somebody who knows the answer?

Geeks3D GPU Caps Viewer allows you to view OpenCL information (OpenCL / More OpenCL Information...).
In order to support double precision the CL_DEVICE_EXTENSION 'cl_khr_fp64' must be present. Otherwise code will refuse to run.

For my Geforce 8800 GTX (with drivers dating from 1-7-2011) there is no double precision support :-(
My Intel OpenCL implementation does support it though (no big surprise here).

I don't think there will automatically fallback to CPU, if the GPU does not support doubles - however an application could check the available OpenCL implementation on a system, and choose one with double support.

Notice that GPU Caps Viewer also comes with a 4D Quaternion Julia demo in OpenCL which is useful for speed comparisons!

Update: I tried changing some OpenCL code to double precision, and my Nvidia driver does not seems to check the extension - it just fails compilation. The Nvidia the compiler complained with: 'warning: Double is not supported. Demoting to float' suggestion that doubles would be converted to floats. However, the compiler failed anyway with a message: 'Instruction 'cvt' requires SM 1.3 or higher, or map_f64_tof32 directive'


Double precision on NVIDIA require ">1.3 Compute capabilitiy".
The G8* serie (eg : 8800) support only up to 1.1
1.3 begin with GT20051.3) & GF100(2.0).

I high recommand buying a GTX460 or "better".
Beware of the meaning of "better" :
- the 460 (i have a 460M on my laptop) is much much better than the 465.
- the 470 (which i have on my desktop) is more powerfull than the 460 in "raw power" but it's a GF100 chipset (same as the GTX 480) with "2.0 Compute capability". while the GTX460 (less raw power) support "2.1 Compute capability".


The 8800GTX (i had this one before it die) is the oldest card supporting CUDA/OpenCL.

You may want to take a look at http://en.wikipedia.org/wiki/CUDA to learn more about Compute Capability, Card name, Chipset Version smiley

 
Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
Syntopia
Fractal Molossus
**
Posts: 681



syntopiadk
WWW
« Reply #32 on: August 16, 2011, 05:39:41 PM »

I high recommand buying a GTX460 or "better".

Yes, I was thinking of getting something like a GeForce GTX 560 Ti. Unfortunately, that means I probably have to update my PSU.

One annoying thing is that these Fermi-based cards (the 400 and 500 series) were designed to run double precision at half the speed of single precision. But the consumer-grade GeForce cards are crippled to run double precision at a quarter of the true speed (resulting in 1/8 of single precision). Only the expensive Tesla cards run double precision without artificial restrictions :-(

Logged
ker2x
Fractal Molossus
**
Posts: 795


WWW
« Reply #33 on: August 16, 2011, 07:50:41 PM »

I high recommand buying a GTX460 or "better".

Yes, I was thinking of getting something like a GeForce GTX 560 Ti. Unfortunately, that means I probably have to update my PSU.

One annoying thing is that these Fermi-based cards (the 400 and 500 series) were designed to run double precision at half the speed of single precision. But the consumer-grade GeForce cards are crippled to run double precision at a quarter of the true speed (resulting in 1/8 of single precision). Only the expensive Tesla cards run double precision without artificial restrictions :-(

Yup, i upgraded my PSU when upgrading from 8800GTX (i wasn't sure it was needed, but it was an old one, so it can't hurt).
If you have an old motherboard (like mine) with PCI-Express 1.0 instead of 2.0, it will works, but you won't have the full bandwidth. (it still works perfectly without troubles)
Logged

often times... there are other approaches which are kinda crappy until you put them in the context of parallel machines
(en) http://www.blog-gpgpu.com/ , (fr) http://www.keru.org/ ,
Sysadmin & DBA @ http://www.over-blog.com/
Jesse
Download Section
Fractal Schemer
*
Posts: 1013


« Reply #34 on: August 21, 2011, 01:33:52 AM »

Geeks3D GPU Caps Viewer allows you to view OpenCL information (OpenCL / More OpenCL Information...).
In order to support double precision the CL_DEVICE_EXTENSION 'cl_khr_fp64' must be present. Otherwise code will refuse to run.

For my Geforce 8800 GTX (with drivers dating from 1-7-2011) there is no double precision support :-(
My Intel OpenCL implementation does support it though (no big surprise here).

My 9500 GT does only knows CUDA, no OpenCL at all.  (OnBoard is a 8200, not a 8800 of course. Mixed it up.)
So i installed the 'AMD-APP-SDK-v2.5-Windows-32' package: 'ATI Stream SDK to enable OpenCL on both AMD/ATI GPUs and CPUs'
and the GPU Caps Viewer Quaternion demo run on CPU at 6 FPS (AMD Athlon(tm) II X4 620 Processor).
What is it on a GPU?

Quote
I don't think there will automatically fallback to CPU, if the GPU does not support doubles - however an application could check the available OpenCL implementation on a system, and choose one with double support.

Notice that GPU Caps Viewer also comes with a 4D Quaternion Julia demo in OpenCL which is useful for speed comparisons!

Update: I tried changing some OpenCL code to double precision, and my Nvidia driver does not seems to check the extension - it just fails compilation. The Nvidia the compiler complained with: 'warning: Double is not supported. Demoting to float' suggestion that doubles would be converted to floats. However, the compiler failed anyway with a message: 'Instruction 'cvt' requires SM 1.3 or higher, or map_f64_tof32 directive'

Does Fragmentarium already support OpenCL (single precision) in the current 0.8 version or do you just testing it currently?

The cool thing is of course the online compiling, and Delphi7 or higher can also get use of OpenCL... might be a good start for someone who wants to go with double precision (OpenCL, not Delphi).
Logged
Syntopia
Fractal Molossus
**
Posts: 681



syntopiadk
WWW
« Reply #35 on: August 21, 2011, 11:06:46 AM »

My 9500 GT does only knows CUDA, no OpenCL at all.  (OnBoard is a 8200, not a 8800 of course. Mixed it up.)
So i installed the 'AMD-APP-SDK-v2.5-Windows-32' package: 'ATI Stream SDK to enable OpenCL on both AMD/ATI GPUs and CPUs'
and the GPU Caps Viewer Quaternion demo run on CPU at 6 FPS (AMD Athlon(tm) II X4 620 Processor).
What is it on a GPU?

On my system it is 5 FPS on the CPU, and 35 on the GPU (I wrote a blog post with some more details about CPU/GPU speeds some month ago:
http://blog.hvidtfeldts.net/index.php/2011/02/gpu-versus-cpu-for-pixel-graphics/)

Quote
Does Fragmentarium already support OpenCL (single precision) in the current 0.8 version or do you just testing it currently?

The cool thing is of course the online compiling, and Delphi7 or higher can also get use of OpenCL... might be a good start for someone who wants to go with double precision (OpenCL, not Delphi).

Fragmentarium is GLSL only at the moment, and I don't think I'll change in the near future. But I'll probably experiment a bit with OpenCL.

Btw, I noticed that the CUDA Mandelbrot SDK example contains functions for doing emulated doubles using floats - on my machine this was only ~10x slower, which is not bad for an emulated library.
Logged
Pages: 1 2 [3]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
.net based fractal rendering/ray tracing Mandelbulb Renderings JColyer 3 1357 Last post December 10, 2009, 03:50:37 PM
by twinbee
Mandelbulb ray tracing plugin for Photoshop, AfterEffects and QuartzComposer Mandelbulb Implementation « 1 2 3 » subblue 43 15355 Last post March 01, 2010, 04:17:03 PM
by KRAFTWERK
old school ray tracing Images Showcase (Rate My Fractal) taurus 0 899 Last post June 23, 2012, 11:57:37 AM
by taurus
Real-time path tracing engine Non-Fractal related Chit-Chat Kali 6 1039 Last post April 10, 2013, 01:53:50 PM
by kram1032
Mandelbulb directional distance Programming TruthSerum 3 1067 Last post July 07, 2014, 12:24:30 AM
by David Makin

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.195 seconds with 27 queries. (Pretty URLs adds 0.011s, 2q)