Logo by AGUS - 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: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. September 21, 2019, 06:08:44 AM


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]   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: Decreasing Render Time with OpenCL Mandelbulber 1.21 Custom Formulas  (Read 1481 times)
Description: Tutorial for basic learners
0 Members and 1 Guest are viewing this topic.
mclarekin
Fractal Senior
******
Posts: 1739



« on: December 06, 2014, 12:01:47 AM »

Decreasing Render Time with  OpenCL Mandelbulber 1.21 Custom Formulas

Well some may say that just rendering with Mandelbulber 1.21 OpenCL is fast enough, but Open CL will not run on my GPU so I have to use  my old CPU,  therefore the majority of my images are produced from Mandelbox and/or Menger formulas as they render quite quickly .  The iteration loop is full of + - / *,   avoiding such functions as exponentials  and powers and trig functions.

A programmer could tell us the computation time of these various functions (help?).

The Mandelbulb formula has this line of code:

float rp = native_powr(r, power - 1.0f);

No if we are rendering a power 2  Mandelbulb  or Burning Ship Mandelbulb this line is really
   float rp = r;

So I create a new custom formula, replace the line of code in my iteration loop file, save, recompile and render in 80% of the previous render time simply by replacing the native_ powr  part of the code. I did this trial with Fast AO, when I repeat the trial with proper AO settings the render time reduction was less, 87%. And if  I include an additional big overhead like volumetric light the difference would become very little as the saving is only in the iteration loop section of the complete program.

 In fact anywhere in the new MBulbPwr2  code
 power can be replaced by 2.0f;

  rp can be replaced by r  (as for pwr2 custom formula  rp = r  therefore the line  float rp = r; could be deleted and all references to rp could be replaced by just r.


For pwr3    float rp = r *r
For pwr4    float rp = r *r * r etc

Could a programmer confirm the above.
« Last Edit: December 06, 2014, 04:27:55 AM by mclarekin, Reason: clarification over ambient occlusion AO » Logged
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Mandelbulber 1.19 - OpenCL - user defined formulas management Releases « 1 2 » Buddhi 22 4233 Last post December 28, 2013, 09:48:46 AM
by Buddhi
OpenCL Render Time Savings Tutorials mclarekin 0 1048 Last post October 30, 2014, 01:33:13 AM
by mclarekin
Quarternion Custom Formulas in OpenCL Mandelbulber 1.21 Tutorials mclarekin 8 1569 Last post December 06, 2014, 02:08:48 AM
by mclarekin
Burning Ship Mandelbulber 1.21 OpenCL Custom Formulas Tutorials mclarekin 12 10008 Last post December 08, 2014, 06:15:28 PM
by youhn
OpenCl custom formulas Feature Requests paigan0 5 1420 Last post April 01, 2017, 05:59:20 PM
by mancoast

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.114 seconds with 29 queries. (Pretty URLs adds 0.008s, 2q)