Title: Mandelbulber 1.20 Post by: Buddhi on December 28, 2013, 09:34:31 AM Mandelbulber 1.20
Open source program (GNU GPL) for rendering photo-realistic 3D fractals Free download (executables and source): http://sourceforge.net/projects/mandelbulber/ Website: http://www.mandelbulber.com/ User manual: http://wiki.mandelbulber.com/index.php?title=User_Manual New features in version 1.20: - OpenCL - added NoDE rendering engine - OpenCL - added "limits" feature to rendering engine - OpenCL - added "interior mode" - OpecCL - added primitive objects - OpenCL - next trial to fix the problem with -I option for OpenCL compiler (spaces in path were not passed properly). I hope this time it is permanent fix. There is used completely different method to pass include path. - OpenCL - added setting for delta for deltaDE algorythm - added HUD for flight path recording - simplified code and corrected for "limits" and "interior mode" - fixed bug: NetRender didn't worked under Windows 7 and Windows Vista. Now connection is limited to IPv4 and works properly. - fixed problem with visibility of 3D cursor during flight path recording - fixed resource leaks Example of primitive object - water, used with Monte Carlo DOF (http://nocache-nocookies.digitalgott.com/gallery/15/thumb_640_16_12_13_8_59_47.jpeg) (http://www.fractalforums.com/index.php?action=gallery;sa=view;id=15288) Example of "limits" and "interior mode" (http://nocache-nocookies.digitalgott.com/gallery/15/thumb_640_29_11_13_5_12_30.jpeg) (http://www.fractalforums.com/index.php?action=gallery;sa=view;id=15219) SVN repository: http://mandelbulber.googlecode.com/svn/trunk/ This repository is available from Google Code: http://code.google.com/p/mandelbulber/ Title: Re: Mandelbulber 1.20 Post by: mclarekin on December 29, 2013, 12:05:22 AM Thanks Buddhi, openCL now runs on my CPU Intel i3 2.13 MHz
For attached example: Not openCL 39sec, openCL Full: all shaders 22 sec, openCL Normal 5 sec (wow) openCL fast 4 sec compared to 13 sec without openCL Some minor to major colouring differences Runs on AMD platform but not on Intel platform (error -11), OpenCL Build log: Compilation started :318:10: error: cannot combine with previous 'type-name' declaration specifier :318:15: error: expected identifier or '(' :319:8: error: expected identifier or '(' :320:32: error: expected expression Compilation failed whereas all CL CPU demos on Geeks 3D GPU Caps Viewer 1.19 work on the Intel platform, but this is all way beyond my limited knowledge ( I do note there are differences with the openCL extensions between the two platforms) overall its great when it works. I suspect that when I upgrade my laptop and can use the GPU I may not have any problems. Thanks again. Title: Re: Mandelbulber 1.20 Post by: mclarekin on December 30, 2013, 11:42:04 AM I was wondering if anyone can replicate the attached images. One was rendered without openCL the other using openCL Full mode, device type CPU. I found it interesting and a bit weird with my limited understanding
Mandelbulber 1.2; image_height 800; view_point_x 1.7579275248484949; view_point_y -1.9210011098291331; view_point_z -1.910784442376507; angle_alfa -168.08092566700719; angle_beta 14.19831608970291; angle_gamma -37.64007796152945; zoom 1.0000000000000001e-015; perspective 1.2; formula 8; fractal_constant_factor 0.88; brightness 0.80000000000000004; ambient_occlusion 2; ambient_occlusion_quality 3; glow_intensity 0.10000000000000001; glow_color_1_R 65535; glow_color_1_G 1935; glow_color_1_B 0; glow_color_2_R 64715; glow_color_2_G 65535; glow_color_2_B 0; background_color_1_G 30069; background_color_2_R 0; background_color_2_G 30069; background_color_3_G 30069; background_color_3_B 65535; fog_colour_2_G 30069; background_color_1_G 30069; ambient_occlusion_enabled 1; fast_ambient_occlusion_mode 1; coloring_random_seed 291327; coloring_palette_offset 137.30000000000001; post_SSAO_enabled 0; post_DOF_focus 129.8140237940022; post_DOF_radius 10.4; mandelbox_scale -1.5; mandelbox_folding_min_radius 0.40999999999999998; mandelbox_folding_fixed_radius 1.03; mandelbox_rotation_main_alfa 12.000000000000002; mandelbox_rotation_main_beta 6.0000000000000009; mandelbox_rotation_main_gamma 2; mandelbox_color_Sp1 3; mandelbox_color_Sp2 1; Title: Re: Mandelbulber 1.20 Post by: Buddhi on December 30, 2013, 02:44:16 PM Thanks for reporting this problem. You were right. There is a difference which should't be. OpenCL code uses fixed_radius parameter in wrong way.
In OCL code for mandelbox there is: Code: if (rr < mr2) m = native_divide(scale, mr2); should be: Code: if (rr < mr2) m *= native_divide(fr2, mr2); P.S. Next time when you paste parameters use [ code ] [ /code ] (# button in editor menu) or attach it as a text file. Title: Re: Mandelbulber 1.20 Post by: mclarekin on December 31, 2013, 08:04:09 AM Thanks for showing the corrected code. It gave me enough confidence to update the cl files myself :) rather than waiting for the next version release. :beer: :beer:
Another thought, if Custom Formulas Example 1 is based on the Mandelbox, should it also have m *= native_divide(fr2, mr2) and m *= native_divide(fr2,rr) in the code? Title: Re: Mandelbulber 1.20 Post by: Buddhi on December 31, 2013, 10:29:36 AM Another thought, if Custom Formulas Example 1 is based on the Mandelbox, should it also have m *= native_divide(fr2, mr2) and m *= native_divide(fr2,rr) in the code? In every OpenCL script is the same mistakeTitle: Re: Mandelbulber 1.20 for Win64 Post by: Buddhi on January 01, 2014, 07:00:47 PM Thanks to quaz0r, now there is also Mandelbulber-OpenCL 1.20 for Windows 64-bit. Download from here: https://sourceforge.net/projects/mandelbulber/files/Mandelbulber%2064-bit%20OpenCL-1.20-Setup.exe/download
Title: Re: Mandelbulber 1.20 Post by: R-TEAM on January 02, 2014, 02:23:17 AM Hi,
now on my CPU on both systems OpenCL runs .... but not on the GPU ... (on both systems) Have DL the 64 bit version ... Error: Code: ^ Regards R-TEAM Title: Re: Mandelbulber 1.20 Post by: hobold on January 02, 2014, 02:37:48 AM OpenCL 1.0 did not support "float3" type. That was added in version 1.1 later. Can you find out the OpenCL version that your GPU (or the device driver, respectively) supports?
Title: Re: Mandelbulber 1.20 Post by: R-TEAM on January 02, 2014, 03:06:21 AM Hi,
OpenCL1.0 Regards R-TEAM Title: Re: Mandelbulber 1.20 Post by: KBeezie on January 02, 2014, 09:22:16 AM Can't seem to get the ATI card selected when I enable OpenCL, no matter what I set for Platform/Device it keeps selecting the primary Nvidia card and resetting Platform/Device to 1/0. Was working in 1.9.
Edit: Seems to do it if I do 0/0 (didn't think zero was a possible option for platform since 1 was default) Title: Re: Mandelbulber 1.20 Post by: mclarekin on January 02, 2014, 09:42:34 AM @ quaz0r. A big thanks as always. 64bit is considerably faster. :beer: :beer:
@ Hobold. Thanks for pointing me in the right direction. I now see that even though the platform is 1.2, my GPU device can only handle 1.0. :beer: :beer: Title: Re: Mandelbulber 1.20 Post by: Buddhi on January 02, 2014, 09:44:17 AM Can't seem to get the ATI card selected when I enable OpenCL, no matter what I set for Platform/Device it keeps selecting the primary Nvidia card and resetting Platform/Device to 1/0. Was working in 1.9. Edit: Seems to do it if I do 0/0 (didn't think zero was a possible option for platform since 1 was default) Platform #1 was last saved value (default is 0). You must set it before (e.g. when you used 1.19). Program saves setting when application is closed, so for you default was 1 ;D Title: Re: Mandelbulber 1.20 Post by: Buddhi on January 02, 2014, 09:49:15 AM @ Hobold. Thanks for pointing me in the right direction. I now see that even though the platform is 1.2, my GPU device can only handle 1.0. :beer: :beer: If it looks like your GFX card doesn't support OpenCL 1.1, try to upgrade drivers. Sometimes it is not a matter of card but software. It is worth to try. Title: Re: Mandelbulber 1.20 Post by: R-TEAM on January 02, 2014, 05:59:36 PM Hi,
Hint -> it would be nice to pointing , that the GPU musst handle OpenCL V1.1 or higher at last ....(if this not changed) So bug reports/errors that come from this side can be closed :) Regards R-TEAM Title: Re: Mandelbulber 1.20 Post by: mclarekin on January 03, 2014, 05:36:00 AM Thanks even more quaz0r and buddhi :beer: :beer: :beer:. The version 1.20-32 wouldn't work on Win7-64 AMD A10-5800GHz 4795 Radeon HD 7660D but 1.20-64 does and wow, default mandelbulb with openCL normal setting renders in 3.2 sec on CPU and an amazing 0.68 sec on GPU, faster than I can say "one elephant". ;D (For non English speakers "one elephant, two elephant .... is an approximation for counting seconds)
My laptop i3 2.13 takes 8 seconds with openCL using CPU. Maybe it's time for an animation ;D Title: Re: Mandelbulber 1.20 Post by: lukesleftleg on January 05, 2014, 05:16:32 PM Hi Buddhi,
Thank you once again for another version of my favourite fractal renderer. :) I just thought I'd let you know that I think I'm getting close to understanding my crash problems, and all evidence points to it not being Mandelbulber's fault at all. I've noticed previously, that the 'random crashes' I was getting in OpenCL mode seemed to happen most often when a ray was going at a very narrow angle to a surface (or in other words, had a lot more steps to march along the ray), which in turn increased the time it took to calculate that ray. It seemed quite counter-intuitive, but I've found in versions 1.19 and 1.20, if I reduce the GPU RAM usage to something really small, say 16MB, then it was much more likely to render the problem frames without crashing, as it seemed to be rendering in smaller chunks. Anyway, I was reading around the forum, and it appears that Fragmentarium has some similar issues, and this explanation from Syntopia seems to be entirely consistent with the problem: The GPU is completely locked until a frame render completes in Fragmentarium. (Which is why Windows just kills the display driver if a GPU operation takes too long - it cannot show a dialog asking if you want to stop the operation). (I'm sure there was another post that went into more detail, where he said that you could adjust the time-out in the control panel, but that it was a bad idea if you didn't know exactly what you were doing, but I can't seem to find it now).Theoretically, the new WDDM 1.2 driver model in Windows 8 supports GPU Pre-emption (multitasking as we know it from desktop OS'es), but I don't know if the Nvidia and AMD drivers implement this yet - I don't think so. The only way to keep the OS responsive is by rendering smaller tiles. So it looks like we're just going to have to live with it until Nvidia and AMD start writing drivers that can take this into account. This is actually fine for me. I've mentioned elsewhere that I've been using a macro recorder to just restart the program if it crashes, and it doesn't happen that much anyway. It seems a small price to pay, but it's good to get to the root of the problem. :) Title: Re: Mandelbulber 1.20 Post by: magixx on January 28, 2014, 01:54:28 AM Hi, I'm currently considering putting together a rig for rendering stuff like a 4k electricsheep since I already have the hardware from bitcoin mining, however I'm a bit unsure of the performance and what troubles I would run into. Like I have a slight suspicion that a very weak CPU somehow be a bottleneck. Another issues that I foresee is that if I were to set up 4 Radeon 5830 would this and OpenCL use all 4 GPUs at the same time for a frame without crossfire? I'm guessing no and that I would have to just work on 4 frames at once with each frame having a dedicated GPU. Also is there a way I could see what my rig would be able to output using these 4 cards without actually setting it up?
Title: Re: Mandelbulber 1.20 Post by: KBeezie on January 31, 2014, 09:51:58 AM I can't seem to be able to get netrender to work from one Windows 7 machine to another Windows 7 machine, one being 192.168.1.6 and the other 192.168.1.16 they can ping each other, and windows firewall is turned off on both. when I try it via -nogui it just waits and waits and in the GUI if I click client enable it just waits til it says "No error" but the server side doesn't show any connected clients.
Title: Re: Mandelbulber 1.20 Post by: KBeezie on January 31, 2014, 10:21:10 AM Same issue trying to connect from Windows 8.1 to the Win7 Server. |