Title: Open CL 1.19 Crashes Post by: geomagnet on December 01, 2013, 02:18:33 AM Hello,
Some of the geometry examples load and render perfect without OpenCL enabled, however some of them crash immediately, crash when in full mode, or take 100x longer with DOF enabled. Sorry for the vague message, but this is the third time I tried posting (the other two detailed messages timed out.) Oddly, some of the examples load and look normal (for instance primitive-objects-set.fract) but as soon as you enable OpenCL the geometry is wrecked and renders something that doesn't even look close to what it should be. Anyhow, if you have any suggestions (maybe change some of the settings or tweak the .fract file), I'm all ears. Other than that, I LOVE THIS PROGRAM...its so FREAK COOL! Thanks for making this and making it publicly available. Cheers, JS Title: Re: Open CL 1.19 Crashes Post by: quaz0r on December 01, 2013, 08:29:57 AM i figured out how to use the DOF...do the render first then enable DOF and click the update button, then it takes a normal amount of time instead of 500000 hours.
Title: Re: Open CL 1.19 Crashes Post by: taurus on December 01, 2013, 09:45:42 AM i figured out how to use the DOF...do the render first then enable DOF and click the update button, then it takes a normal amount of time instead of 500000 hours. I think, that's because there are two different types of DOF implemented. A classical post-pass version based on the z buffer, and a multisample DOF calculation. This part takes the eternity to render... ;D Title: Re: Open CL 1.19 Crashes Post by: lukesleftleg on December 01, 2013, 03:19:26 PM however some of them crash immediately The OpenCL stuff is still really new, and I think Buddhi's still working on it. Also, I think he said somewhere that the actual code is different for the OpenCL side of things, which accounts for the differences is shading etc. For long renders, such as animations which I want to leave rendering overnight, I've been using AutoIt (http://www.autoitscript.com/site/autoit/) to keep things moving along. It's an automation/script/macroey thing. I've set up a script that checks every few seconds to see if Mandelbulber's still running, and if it's crashed, it restarts the program, clicks the mouse in all the right places, and sets the animation render running again. The only problem is that I can't find a way to grab the error dialog box that pops up because it doesn't have a title, so I've just been using version 1.18, which just quits the program when it hangs. In fact, Buddhi, if you're reading this, I'm afraid I've another feature request, but it's only a small one this time. :) That error dialog box that pops up when OpenCL crashes, would it be possible to give it a window title please? Just so AutoIt can check for its existence, and take appropriate action. I've been saying it for some time, but I think I'm going to make a concerted effort to build Mandelbulber on my system this week. Then I can try and learn to do this stuff myself rather than hassle you every time I have an idea. :) It's just MinGW, GTK2+ and libjpeg that I need, isn't it? Title: Re: Open CL 1.19 Crashes Post by: geomagnet on December 01, 2013, 05:17:37 PM Wow, thanks for the proactive response. I don't have Linux, but do have MS VS C++ Express 2010.
As far as your macro...I took a look at cl_support.cpp and around line 75 is where the error dialog is created. http://www.gtk.org/api/2.6/gtk/GtkMessageDialog.html Not sure you can give it an ID with this method. You might be able to access it by doing a count of child spawned windows and simply call the last one in the stack (because it was the most recently created). Anyhow, I stayed at Holiday Inn last night so what do I know. If there is way to convert this into a MS project file, I would like to poke it with a stick. I may not be able to write elegant code, but if I find a problem I can provide a more intelligent response with something that I can compile and debug. I'm going to try out the DOF suggestion. On another direction, I remember seeing someone's gallery entry that involved merging two geometries (with their own materials). Any suggestions how this is done? It looked like a Julia and potato intersecting. Cheers, JS Title: Re: Open CL 1.19 Crashes Post by: lukesleftleg on December 01, 2013, 06:20:10 PM I don't have Linux, but do have MS VS C++ Express 2010. If there is way to convert this into a MS project file, I would like to poke it with a stick. As far as I know (and I'm no expert), it's either not possible, or just very very hard to build Mandelbulber on Visual Studio. There's some discussion on it here. (http://www.fractalforums.com/mandelbulber/building-mandelbulber-on-windows/) I'll be using Netbeans, just because I'm used to it, but I'm more of a Java programmer myself, and my C++ is rudimentary at best. Something I'd really like to rectify. As far as your macro...I took a look at cl_support.cpp and around line 75 is where the error dialog is created. http://www.gtk.org/api/2.6/gtk/GtkMessageDialog.html Not sure you can give it an ID with this method. You might be able to access it by doing a count of child spawned windows and simply call the last one in the stack (because it was the most recently created). Aha, that might just give me what I'm looking for. Thanks very much. Like I say though, I'm not brilliant with C++ so it might take me a bit to get my head around, but I'm going to have to if I want to get my hands dirty under Mandelbulber's bonnet. :) I think AutoIt does have a way of hooking windows by their internal IDs, but I'm just not sure how to reliably get those internal IDs. Maybe I should look into other automation utilities, but I think AutoIt's meant to be one of the more versatile ones. |