Title: fp64 shader Post by: marius on January 31, 2012, 08:49:01 PM Been tinkering w/ fp64, aka double precision and a mandelbox shader.
Finally tuned most of the splining code and other periphery in boxplorer2 to take a bit more care of numerical precision so I could render a test sequence. http://www.youtube.com/watch?v=OrzqzLGOE4Q Pretty slow as gpu rendering goes (~2 fps at 720p) but the additional zoom head room is very addictive, compared to the floats. Might have to upgrade the video card ;D Code at http://code.google.com/p/boxplorer2. Pretty much the compile it yourself type of deal. If you just want to check whether what your setup can do, build and run from console: ./boxplorer cfgs/mbox-fp64.cfg. Hit <tab> to render the first frame of the above sequence, pretty much max zoomed in right before artifacts dominate. Just the shader code: http://code.google.com/p/boxplorer2/source/browse/trunk/cfgs/mbox-fp64.cfg.data/fragment.glsl Title: Re: fp64 shader Post by: knighty on January 31, 2012, 09:20:00 PM Wooha!
:thumbsup1: Also funny... Those pac men. ;D Title: Re: fp64 shader Post by: eiffie on January 31, 2012, 11:29:34 PM More space to play in! I too will probably have to wait for a GPU upgrade to really enjoy it though. Nice vid!
Title: Re: fp64 shader Post by: cbuchner1 on February 01, 2012, 12:13:08 AM Do nVidia cards support this extension?
Has anyone experimented with double single precision arithmetics in GLSL yet? How would this rate against true double precision support? Title: Re: fp64 shader Post by: marius on February 01, 2012, 12:28:43 AM Do nVidia cards support this extension? Probably, it is standard #version 400+ stuff afaict. I don't have a new enough Nvidia around. Even if your hw might support it, the drivers are a big factor. Macs are notorious for having near obsolete drivers until the next OS rev comes up, w/o any recourse for the user.. clearly gaming etc is not a priority for Apple by any stretch. Quote Has anyone experimented with double single precision arithmetics in GLSL yet? How would this rate against true double precision support? I haven't. Might be mildly painful to rewrite all expressions and intrinsics as calls to your own functions? Lack of pow, log and trigs is already annoying enough w/ fp64. I did the mandelbox since it is fairly clean from that perspective, yet interesting enough. Title: Re: fp64 shader Post by: Syntopia on February 01, 2012, 04:02:35 PM Do nVidia cards support this extension? Probably, it is standard #version 400+ stuff afaict. I don't have a new enough Nvidia around. Even if your hw might support it, the drivers are a big factor. Macs are notorious for having near obsolete drivers until the next OS rev comes up, w/o any recourse for the user.. clearly gaming etc is not a priority for Apple by any stretch. I've tried doubles on a Geforce 570 on Windows 7, where it worked - although it was slow. If you don't want to use a high #version, you can enable it as an extension using: "#extension GL_ARB_gpu_shader_fp64 : enable" The GLSL compiler should complain if there is no support. Quote Quote Has anyone experimented with double single precision arithmetics in GLSL yet? How would this rate against true double precision support? I haven't. Might be mildly painful to rewrite all expressions and intrinsics as calls to your own functions? Lack of pow, log and trigs is already annoying enough w/ fp64. I did the mandelbox since it is fairly clean from that perspective, yet interesting enough. There is a really good post about emulated doubles (for Mandelbrots) in GLSL here: http://www.thasler.org/blog/?p=93 Title: Re: fp64 shader Post by: cbuchner1 on February 01, 2012, 04:49:56 PM Excellent tutorial on that thasler.org site! Notable quote: "They show that the emulation is round about 4 times slower than single precision mode." Native double precision is at least 8 to 12 times slower than single precision on nVidia consumer cards because the DP units were artificially restricted (only Tesla cards have the full capability). So double single precision is a good alternative for some jobs. Title: Re: fp64 shader Post by: marius on February 01, 2012, 10:24:05 PM Excellent tutorial on that thasler.org site! syntopia's blog is full of awesome. Including links ;D Quote Notable quote: "They show that the emulation is round about 4 times slower than single precision mode." Native double precision is at least 8 to 12 times slower than single precision on nVidia consumer cards because the DP units were artificially restricted (only Tesla cards have the full capability). So double single precision is a good alternative for some jobs. Yeah, pretty sad. Sounds suspiciously similar to the business decision to not support quadbuffer opengl on consumer cards. Afaik, amd only started exposing the double precision support for the 5850 since last July or so but it appears to work decently now. I might crossfire my older 5850 or check out a 7970 for almost a tflop and crossfire that down the line. Sounds like nvidia does not want my money? Title: Re: fp64 shader Post by: Saquedon on February 11, 2012, 06:49:23 PM Hardware crippling to produce product lines has become the industry standard. There's nothing we can do but try to work around and hack the obvious usage back into computer products. The social internet collaboration revolution is only just beginning! |