Closed taurus66 closed 6 years ago
@ Krzysztof. Analytical DE is OK, issue is only with DeltaDE. (I do not normally use Delta DE, but I have noticed this "CPU faster than GPU" behavior before, maybe it was with JosLeys pseudoK)
( BTW remember that Analytical and DeltaDE images can look different with this formula, as there is a hardcoded DE Factor in PseudoK Delta DE function, which is a variable in PseudoK Analytical DE )
On Mon, May 21, 2018 at 9:02 AM, taurus66 notifications@github.com wrote:
System information (version)
- mandelbulber2 => 2.13-2
- Operating System / Platform => Windows 10 64 Bit
The following parameter produces unusable images and renders 3:26 on gpu and 2:31 (minutes) on cpu with my machine. Standard is a ratio of 6-7:1 gpu:cpu. Maybe theres a problem in pseudoKleinian DE. Don't know.
`# Mandelbulber settings file version 2.13 only modified parameters
[main_parameters] ambient_occlusion 1,5; ambient_occlusion_enabled true; ambient_occlusion_quality 8; camera 0,1561071810272031 -0,1245239294865651 0,1029301994065482; camera_distance_to_target 0,01944890245795248; camera_rotation 117,6912148405861 -0,7693426147962295 78,68571285529347; camera_top -0,4580076380481483 0,8670323910263364 0,1961729757145728; DE_factor 0,3; delta_DE_function 3; detail_level 2,222222222222222; flight_last_to_render 0; fog_color_1 0600 3f00 1500; fog_color_2 0600 3f00 1500; fog_color_3 0600 3f00 1500; formula_1 103; formula_2 103; hybrid_fractal_enable true; image_height 1080; image_width 1920; julia_mode true; mat1_coloring_speed 0,5; mat1_fractal_coloring_algorithm 4; mat1_fractal_coloring_line_direction 0,7071 0,7071 0 0; mat1_fractal_coloring_sphere_radius 0,25; mat1_is_defined true; mat1_surface_color_palette fe1c64 fe3152 ff6920 d0a233 82c286 66cfa6 82c286 d0a233 ff6920 fe3152; target 0,1388874132339072 -0,1335611418909175 0,1026690559162185; view_distance_max 10; volumetric_fog_colour_1_distance 0,008532996207696481; volumetric_fog_colour_2_distance 0,01706599241539296; volumetric_fog_density 1,8; volumetric_fog_distance_factor 0,024; volumetric_fog_enabled true; [fractal_1] analyticDE_tweak_005 0; IFS_rotation_enabled true; mandelbox_scale -2; transf_addition_constant_0777 0,707 0,707 0,707; [fractal_2] analyticDE_tweak_005 0; IFS_rotation_enabled true; transf_addition_constant_0777 0,707 0,707 0,707; transf_minimum_radius_05 0,82; [fractal_3] IFS_rotation_enabled true; [fractal_4] IFS_rotation_enabled true; `
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/buddhi1980/mandelbulber2/issues/473, or mute the thread https://github.com/notifications/unsubscribe-auth/AMLZHLYJdDFLlRTQXCXFUh3bs_lIOcCgks5t0dnogaJpZM4UGOjf .
DeltaDE is quite slow with OpenCL (a lot of branches during execution) but was optimized in 2.14-dev
@taurus66 for your case I would suggest to switch to analytical DE and use DE factor = 0.92784 in first formula slot with PseudoKleinian. This will provide exactly the same appearance of the fractal. For DeltaDE there is hardcoded DE factor which was originally designed by Knighty
It should be rendered within about 10-20s
corrected settings:
# Mandelbulber settings file
# version 2.13
# only modified parameters
[main_parameters]
ambient_occlusion 1,5;
ambient_occlusion_enabled true;
ambient_occlusion_quality 8;
camera 0,1561071810272031 -0,1245239294865651 0,1029301994065482;
camera_distance_to_target 0,01944890245795248;
camera_rotation 117,6912148405861 -0,7693426147962295 78,68571285529347;
camera_top -0,4580076380481483 0,8670323910263364 0,1961729757145728;
DE_factor 0,3;
detail_level 2,222222222222222;
flight_last_to_render 0;
fog_color_1 0600 3f00 1500;
fog_color_2 0600 3f00 1500;
fog_color_3 0600 3f00 1500;
formula_1 103;
formula_2 103;
hybrid_fractal_enable true;
image_height 1080;
image_width 1920;
julia_mode true;
keyframe_last_to_render 0;
mat1_coloring_speed 0,5;
mat1_fractal_coloring_algorithm 4;
mat1_fractal_coloring_line_direction 0,7071 0,7071 0 0;
mat1_fractal_coloring_sphere_radius 0,25;
mat1_is_defined true;
mat1_surface_color_palette fe1c64 fe3152 ff6920 d0a233 82c286 66cfa6 82c286 d0a233 ff6920 fe3152;
target 0,1388874132339072 -0,1335611418909175 0,1026690559162185;
view_distance_max 10;
volumetric_fog_colour_1_distance 0,008532996207696481;
volumetric_fog_colour_2_distance 0,01706599241539296;
volumetric_fog_density 1,8;
volumetric_fog_distance_factor 0,024;
volumetric_fog_enabled true;
[fractal_1]
analyticDE_scale_1 0,92784;
IFS_rotation_enabled true;
mandelbox_scale -2;
transf_addition_constant_0777 0,707 0,707 0,707;
[fractal_2]
analyticDE_tweak_005 0;
IFS_rotation_enabled true;
transf_addition_constant_0777 0,707 0,707 0,707;
transf_minimum_radius_05 0,82;
[fractal_3]
IFS_rotation_enabled true;
[fractal_4]
IFS_rotation_enabled true;
Thanks a lot Buddhi. I re-walked the way I came to this parameter. And my problem was to find the right de function. Choosing it is a little confusing. After switching on hybrid fractals (by activating the second slot) Delta DE Logarithmic was active. I thought the preferred option would choose one of the other choosable options, so I chose the Delta DE pK by hand. That the preferred option activates an analytic method, that can't be chosen by hand, is surprising and not very intuitive. Maybe there is some room left, to make the choice of the right DE method/function more transparent.
What you think if I rename it to "Automatic (analytic DE if possible)"? Do you have some other proposal?
Great idea! But I'd say "Automatic (analytic if possible)". That we talk about DE is clear in the title. Don't know, what native speakers say.
I have never liked "preferred", but the bigger issue for me still is why we cannot choose/force any method and function. If a formula has both aux.DE and aux.d-rz written into the code then both can be accessed, albeit there is some wasted computing, but this can actually be minimised.
default for mbox would be shown as analytical method and standard linear DE function,(ie no "preferred") for pseudoKleinian would be analytical and pseudoKleinian linear
default is obtained from fractal_list.cpp
the calculation of optimum method for hybrids could be set up as an option only.
On Tue, May 22, 2018 at 9:30 AM, taurus66 notifications@github.com wrote:
Great idea! But I'd say "Automatic (analytic when possible)". That we talk about DE is clear in the title. Don't know, what native speakers say.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/buddhi1980/mandelbulber2/issues/473#issuecomment-390788978, or mute the thread https://github.com/notifications/unsubscribe-auth/AMLZHFdE4_Vg3I7BgnsSy0eM3LXxwN84ks5t0zH3gaJpZM4UGOjf .
IMHO it would indeed be the best solution, to have the coice between all options available. I think then it should also be possible to combine them in one list.
Why user should be able to select options which will not work, e.g. to lose analytic DE with logarithmic DE function? DeltaDE works in almost every case (but results should be not so good). But analytic DE works only when correct function is used. @mclarekin, I can rethink above sentence if you provide some examples where analytic DE will work when DE function is different than dedicated?
I will split into two issues
a) Naming.
Method = analytic or delta DE, function = linear. log, pseudoKleinian, Jos leys ( and one or two more that have yet to be implemented) The defaults come from fractal_list.cpp .
BUT can the two drop down menus/combo_boxes have a right click "reset to default" function??
b) Choosing the function in analytic mode
There are two main scenarios where analytic method is currently restricted
mixing traditional aux.r_dz and aux.DE formulas (a basic boxBulb)
mixing and using aux.DE formulas that have different default functions. (pseudoKl, josLeys)
example log & linear
can make boxBulb types with a mandelbox ( that has aux.r-dz code added) and a mandellbulb
example linear & linear
The "pseudoKleinian" and "pseudoKleinian std DE" could have been a single formula.
I would like to be using Analytic method and mouse roll down the linear DE functions (like we can already do when using DeltaDE method)
For a single formula , the default function is generally the best but you can sometimes get interesting renders by trialing other linear DE functions.
With a hybrid of two formulas of different linearDE functions you need to be able to choose which function.
Building a formula from only transforms should have the flexibility of choosing analytic method and function type.
There are various minor issues i need to address in fractal_list.cpp that are related to me having to choose whether or not to use withoutDEFunction
A more flexible structure would allow me to test other analytic linearDE functions that OpenCL has made more feasible.
The algorithm for calculating the CalculatedMethod&_Function method and function is retained, but maybe also accessed as a button function
It has been a while since this was last discussed, since then I have learnt to be more convinced that a more flexible structure is desirable, if practical within the existing code.
HOWEVER ,The program works OK the way it is for now,
On Wed, May 23, 2018 at 3:46 AM, Krzysztof Marczak <notifications@github.com
wrote:
Why user should be able to select options which will not work, e.g. to lose analytic DE with logarithmic DE function? DeltaDE works in almost every case (but results should be not so good). But analytic DE works only when correct function is used. @mclarekin https://github.com/mclarekin, I can rethink above sentence if you provide some examples where analytic DE will work when DE function is different than dedicated?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/buddhi1980/mandelbulber2/issues/473#issuecomment-391040998, or mute the thread https://github.com/notifications/unsubscribe-auth/AMLZHKwRur6AxlM4ppM4YFOMMYh47D3Wks5t1DLZgaJpZM4UGOjf .
I'm ok with that. The inner correlations are your stuff. One last question:
I would suggest to switch to analytical DE and use DE factor = 0.92784 in first formula slot with PseudoKleinian
There seem to be no obvious correlation (at least for me) between this value for the first slot and the R2 value (0.82) in the second slot, which was the initial value for adjusting the net structure. Is there a simple explanation for that or is it deeper in coding the distance estimate? Anyhow a big thanks to both of you for the effort. Cheers taurus
This formula is a special case, where we intentionally use a "DE factor" to control the size of the holes that appear in the rendered object.
With Analytic Method, the DE is coded within the formula, so it is easy to have the DE Factor as a parameter on the formula UI.
In DeltaDE function, a DE Factor constant of 0.92784 is hard coded elsewhere in the code, and is not so easy to access.
There seem to be no obvious correlation (at least for me) between
this value for the first slot and the R2 value (0.82) in the second slot,
The "DE factor" in this formula is a tool for altering the raymarching maths, rather than the fractal maths. I am guessing if we used brute force rather than distance estimating, then there would be no holes.
It is all a bit weird this stuff and I have yet to figure it all out. Anyhow, below is your settings using Analytic with the 0.92784 DE factor, and it should look a lot like the DeltaDE render . Tested in CPU mode.
[main_parameters] ambient_occlusion 1.5; ambient_occlusion_enabled true; ambient_occlusion_quality 8; camera 0.1561071810272031 -0.1245239294865651 0.1029301994065482; camera_distance_to_target 0.01944890245795248; camera_rotation 117.6912148405861 -0.7693426147962295 78.68571285529347; camera_top -0.4580076380481483 0.8670323910263364 0.1961729757145728; DE_factor 0.3; detail_level 2.222222222222222; flight_last_to_render 0; fog_color_1 0600 3f00 1500; fog_color_2 0600 3f00 1500; fog_color_3 0600 3f00 1500; formula_1 103; formula_2 103; hybrid_fractal_enable true; image_height 1080; image_width 1920; julia_mode true; keyframe_last_to_render 0; mat1_coloring_speed 0.5; mat1_fractal_coloring_algorithm 4; mat1_fractal_coloring_line_direction 0.7071 0.7071 0 0; mat1_fractal_coloring_sphere_radius 0.25; mat1_is_defined true; mat1_surface_color_palette fe1c64 fe3152 ff6920 d0a233 82c286 66cfa6 82c286 d0a233 ff6920 fe3152; target 0.1388874132339072 -0.1335611418909175 0.1026690559162185; view_distance_max 10; volumetric_fog_colour_1_distance 0.008532996207696481; volumetric_fog_colour_2_distance 0.01706599241539296; volumetric_fog_density 1.8; volumetric_fog_distance_factor 0.024; volumetric_fog_enabled true; [fractal_1] analyticDE_scale_1 0.92784; analyticDE_tweak_005 0; IFS_rotation_enabled true; mandelbox_scale -2; transf_addition_constant_0777 0.707 0.707 0.707; [fractal_2] analyticDE_tweak_005 0; IFS_rotation_enabled true; transf_addition_constant_0777 0.707 0.707 0.707; transf_minimum_radius_05 0.82; [fractal_3] IFS_rotation_enabled true; [fractal_4] IFS_rotation_enabled true;
On Thu, May 24, 2018 at 12:22 AM, taurus66 notifications@github.com wrote:
I'm ok with that. The inner correlations are your stuff. One last question:
I would suggest to switch to analytical DE and use DE factor = 0.92784 in first formula slot with PseudoKleinian
There seem to be no obvious correlation (at least for me) between this value for the first slot and the R2 value (0.82) in the second slot, which was the initial value for adjusting the net structure. Is there a simple explanation for that or is it deeper in coding the distance estimate? Anyhow a big thanks to both of you for the effort. Cheers taurus
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/buddhi1980/mandelbulber2/issues/473#issuecomment-391326852, or mute the thread https://github.com/notifications/unsubscribe-auth/AMLZHOQw8rsa_chyo7ojbaW-CgcI7SRHks5t1VSjgaJpZM4UGOjf .
Thanks a lot. So I could not anticipate the relation. Nice to hear, because I still try to understand, what I'm doing...
Renamed from "preferred" to "automatic" in commit https://github.com/buddhi1980/mandelbulber2/commit/c17e80d632f8bdd5e62a00c3c7d937c94155f935
System information (version)
The following parameter produces unusable images (ocl) and renders 3:26 on gpu and 2:31 (minutes) on cpu with my machine. Standard is a ratio of 1:6-7 gpu:cpu. Maybe theres a problem in pseudoKleinian DE. Don't know.