Welcome to Fractal Forums

Fractal Software => Bug Reporting => Topic started by: d13b on June 06, 2013, 04:08:37 PM




Title: opencl/compilation problems with mandelbulber
Post by: d13b on June 06, 2013, 04:08:37 PM
hello!

i would like to use mandelbulber with opencl support.
opencl works with my ati radeon 5850 card (catalyst 13.4)
i'm using debian (unstable, /mandelbulber_1%3a1.15-1_i386.deb) and the debian version comes without opencl-support, so i tried to compile mandelbulber from svn (rev 348) but failed:

...
Invoking: GCC C++ Linker
g++ -o"mandelbulber" -L/usr/lib/x86_64-linux-gnu/  ./src/Render3D.o ./src/algebra.o ./src/callbacks.o ./src/cimage.o ./src/cl_support.o ./src/common_math.o ./src/database.o ./src/files.o ./src/fractal.o ./src/image.o ./src/interface.o ./src/morph.o ./src/primitives.o ./src/settings.o ./src/shaders.o ./src/texture.o ./src/timeline.o ./src/undo.o   -lpng -ljpeg  `pkg-config --libs gtk+-2.0 gthread-2.0`
./src/Render3D.o: In function `Render(sParamRender, cImage*, _GtkWidget*)':
Render3D.cpp:(.text+0x3389): undefined reference to `netRender'
Render3D.cpp:(.text+0x34a5): undefined reference to `CNetRender::sendDataToClient(void*, unsigned int, char*, int, int)'
...


any suggestions, what i am doing wrong?
and: is the svn-version of mandelbulber the correct one for opencl-support?


thanks for tips & hints
d13b


Title: opencl/compilation problems with mandelbulber, update
Post by: d13b on June 06, 2013, 07:05:52 PM
hello again!

after some fiddling with the sources, i got mandelbulber compiled and installed with opencl support.
it runs, but i'm havnig a hard time getting meaningful results. except for "tglad's formula" i get mostly plain colored images, no fractals.
is there any fundamentally difference in the settings, when using opencl or is it just not yet implemented for most formulas?

and: my openCL information shows
GPU memory: 0MB
is that normal?

clinfo shows:
Max memory allocation:                         134217728
Global memory size:                            536870912
Local memory type:                             Scratchpad
Local memory size:                             32768


thanks in advance for helping
d13b


Title: Re: opencl/compilation problems with mandelbulber, update
Post by: hobold on June 06, 2013, 08:55:42 PM
and: my openCL information shows
GPU memory: 0MB
is that normal?

clinfo shows:
Max memory allocation:                         134217728
Global memory size:                            536870912
Local memory type:                             Scratchpad
Local memory size:                             32768

Zero megabytes seems a bit odd, but further down it's 512 MB of "global" memory on the graphics card. A limit of 128MB for an individual allocation is normal for this generation of AMD GPU, too, as far as I know.

And while I don't know mandelbulber specifically, I think you are guessing right that each individual formula needs to be prepared for OpenCL by a programmer. It's not as simple as flicking a switch.


Title: Re: opencl/compilation problems with mandelbulber
Post by: taurus on June 06, 2013, 10:18:36 PM
buddhi implemented only a few formulas
http://www.fractalforums.com/releases-b233/mandelbulber-1-09-experimental-opencl-support/msg38745/#msg38745 (http://www.fractalforums.com/releases-b233/mandelbulber-1-09-experimental-opencl-support/msg38745/#msg38745)
donno which ones besides the mandelbox.

I'd be thankful if you could give some hints, how you managed to install on an ati/amd gpu. As linux noob I failed on ubuntu 12.04 lts


Title: Re: opencl/compilation problems with mandelbulber
Post by: d13b on June 07, 2013, 12:25:57 AM
to get opencl working in debian linux, i installed the debian amd-opencl-dev package amd's proprietary drivers (amd-driver-installer-catalyst-13-4-linux-x86.x86_64.zip and AMD-APP-SDK-v2.8-RC-lnx32.tgz from amd.com), then configured X to use the fglrx drivers. (aticonfig worked).

the bigger task was to compile mandelbulber, since make didn't work out and i had to rewrite some make helperfiles and enable the opencl support in the sources (#define CLSUPPORT was commented in cl_support.hpp and cl_support.cpp)

seems i will have to wait until opencl-support is more complete in mandelbulber, but it's indeed much faster than cpu-rendering from what i can tell now.

best
d13b




Title: Re: opencl/compilation problems with mandelbulber
Post by: Buddhi on June 08, 2013, 01:43:24 PM
OpenCl feature was postponed by me for a some time (I had many problems with ATI Catalyst drivers on my desktop). It's possible, that is not possible to compile actual version with OpenCL enabled. However this month I have returned to this topic with very good results. Release 1.17 will have a lot of new features in OpenCl. I hope to publish something until the end of June. If somebody is curious about the progress please observe https://code.google.com/p/mandelbulber/source/list