Welcome to Fractal Forums

Fractal Software => Bug Reporting => Topic started by: Kyzia on December 06, 2017, 11:00:50 AM




Title: V 2.12 OpenCL Crash using volumetric light 1
Post by: Kyzia on December 06, 2017, 11:00:50 AM
When I try to render using the following parameters, I get an OpenCL crash.  If I either switch OpenCL off, or change aux light 1 to non-volumetric, the scene will render.
Once OpenCL has crashed like this, the only way to recover is to restart the program.

Formula Paramaters
Code:
# Mandelbulber settings file
# version 2.12
# only modified parameters
[main_parameters]
ambient_occlusion_enabled true;
aux_light_enabled_1 true;
aux_light_intensity_1 0.3890480601454549;
aux_light_position_1 1.982755228571313 -9.709914887729875 5.455650012276345;
aux_light_volumetric_enabled_1 true;
camera 1.163416977551717 -9.011126354778181 5.223660299743354;
camera_distance_to_target 0.9051601290702822;
camera_rotation 48.10968216037153 -6.182449942783999 -30.47916888880362;
camera_top -0.4077697789259488 -0.3156189234435381 0.8568013203532222;
flight_last_to_render 0;
formula_1 37;
glow_enabled false;
image_height 1080;
image_width 1920;
keyframe_last_to_render 0;
mat1_coloring_speed 5;
mat1_is_defined true;
raytraced_reflections true;
target 0.4935126582914431 -8.410259894596321 5.126179228126963;
view_distance_max 57.88260238172595;
[fractal_1]
mandelbox_generalized_fold_type fold_icosa;
mandelbox_melt 0.3;
mandelbox_solid 1.3;

Info Panel Contents
Code:
PID: 5160, time: 322.584, Critical: OpenCl ERROR: "CommandQueue::CommandQueue()" ( -5 ) (C:projectsmandelbulber2mandelbulber2msvc../..//mandelbulber2srcopencl_engine.cpp:77, bool __cdecl cOpenClEngine::checkErr(int,class QString)
PID: 5160, time: 322.585, Error: OpenCL command queue cannot be created!
PID: 5160, time: 322.588, Critical: OpenCl ERROR: "CommandQueue::enqueueWriteBuffer(inCLBuffer)" ( -36 ) (C:projectsmandelbulber2mandelbulber2msvc../..//mandelbulber2srcopencl_engine.cpp:77, bool __cdecl cOpenClEngine::checkErr(int,class QString)
PID: 5160, time: 322.603, Error: Cannot enqueue writing OpenCL input buffers
PID: 5160, time: 322.591, Critical: OpenCl ERROR: "CommandQueue::CommandQueue()" ( -5 ) (C:projectsmandelbulber2mandelbulber2msvc../..//mandelbulber2srcopencl_engine.cpp:77, bool __cdecl cOpenClEngine::checkErr(int,class QString)
PID: 5160, time: 322.650, Error: OpenCL command queue cannot be created!
PID: 5160, time: 322.603, Critical: OpenCl ERROR: "CommandQueue::enqueueWriteBuffer(inCLBuffer)" ( -36 ) (C:projectsmandelbulber2mandelbulber2msvc../..//mandelbulber2srcopencl_engine.cpp:77, bool __cdecl cOpenClEngine::checkErr(int,class QString)
PID: 5160, time: 322.725, Error: Cannot enqueue writing OpenCL input buffers


Title: Re: V 2.12 OpenCL Crash using volumetric light 1
Post by: mancoast on December 06, 2017, 07:19:55 PM
This sounds like TDR delay.  Are you running in windows? 
Essentially, if you use your GPU at 100% windows will think something has broke.
Reference the MDBB manual from the help menu for more info on TDR.

Info also available here: https://docs.microsoft.com/en-us/windows-hardware/drivers/display/tdr-registry-keys


Title: Re: V 2.12 OpenCL Crash using volumetric light 1
Post by: mclarekin on December 07, 2017, 03:08:15 AM
I suspect all Windows users may need to do this registry edit for Mandelbulber opencl (includes old MandebulberV1.21 OpenCL version,)  and Fragmentarium.

My two cents on your posted settings. 

- ray tracing tab.  -consider disabling  reflections to save some render time.
-rendering engine. - consider dropping raymarching step multiplier from 1 down to 0.4 or less to improve quality

BTW. V2.13 will have some additional color options that work well with jos leys kleinian, pseudo kleinian and box fold bulbs.

Cheers

G


Title: Re: V 2.12 OpenCL Crash using volumetric light 1
Post by: Kyzia on December 07, 2017, 10:15:02 AM
Thanks all,

I tracked down the missing chapter and made the recommended changes.   ;D

For anyone who comes across this, here are the steps;

1. Open registry editor: [Start] > Run > Type in "Regedit" > Hit Enter
2. Navigate to key: Open HKEY_LOCAL_MACHINE > System > CurrentControlSet > Control > GraphicsDrivers
3. Create the keys (Modify if exist):
    (a) Create key of type DWORD (32-bit) and name TdrDelay with a value of 30 as Decimal value.
    (b) Create key of type DWORD (32-bit) and name TdrDdiDelay with a value of 30 as Decimal value.
4. Reboot