Package Details: mandelbulber-opencl 1.21-1

Git Clone URL: https://aur.archlinux.org/mandelbulber-opencl.git (read-only)
Package Base: mandelbulber-opencl
Description: 3D application designed to render 3D fractals such as the Mandelbulb, Mandelbox, BulbBox, JuliaBulb, Menger Sponge, and Iterated Function Systems.
Upstream URL: http://mandelbulber.com/
Keywords: 3D bulbbox fractal function iterated juliabulb mandelbox mandelbulb mandelbulber menger qt sponge systems
Licenses: GPL3
Conflicts: mandlebulber
Provides: mandelbulber
Submitter: haagch
Maintainer: psyriccio
Last Packager: Madotsuki
Votes: 7
Popularity: 0.000016
First Submitted: 2013-10-15 11:18
Last Updated: 2015-08-31 15:09

Latest Comments

haagch commented on 2016-03-03 18:47

Hm, I'm listed as the submitter, but I can't push to ssh://aur@aur.archlinux.org/mandelbulber-opencl.git

git-receive-pack: permission denied: haagch
fatal: Could not read from remote repository.

Oh well...

peyote commented on 2016-03-03 18:18

Current PKGBUILD is missing a dependency, opencl-headers. Here is the error message:

In file included from ../src/Render3D.h:19:0,
from ../src/Render3D.cpp:30:
../src/cl_support.hpp:25:21: fatal error: CL/cl.hpp: No such file or directory
compilation terminated.
src/subdir.mk:72: recipe for target 'src/Render3D.o' failed

This patch resolves it for me:

--- PKGBUILD.old 2016-03-03 13:11:23.053661591 -0500
+++ PKGBUILD 2016-03-03 13:11:34.043867457 -0500
@@ -7,7 +7,7 @@
arch=('any')
url="http://mandelbulber.com/"
license=('GPL3')
-depends=('libjpeg-turbo' 'ocl-icd' 'gtk2')
+depends=('libjpeg-turbo' 'ocl-icd' 'gtk2' 'opencl-headers')
provides=('mandelbulber')
conflicts=('mandlebulber')
source=("${pkgname}::http://iweb.dl.sourceforge.net/project/mandelbulber/${pkgname}-${pkgver}-${pkgrel}.orig.tar.gz")

haagch commented on 2014-05-02 19:24

Meh, clover still doesn't support it.

* -cl-denorms-are-zero still has to be removed
* Still something about static, but who cares for that: for i in /usr/share/mandelbulber/cl/*; do sed -i "s/static //g" $i; done

But then it's still error: cannot combine with previous 'type-name' declaration specifier

A quick google search looks like this sometimes happens when clang can't parse something correctly...

I tried a bit around, but the error message is not very clear. I think clang thinks that "half" is already defined, and renaming it gets rid of that error:

for i in /usr/share/mandelbulber/cl/*; do sed -i "s/half /halfFOO /g" $i; done
for i in /usr/share/mandelbulber/cl/*; do sed -i "s/half)/halfFOO)/g" $i; done

Then I get

OpenCL Build log:
ERROR: ProgramSSAO::build() (-43)

And then it segfaults in gobject.

Well...

dc2 commented on 2014-05-02 14:49

Hey there, thanks for the pkg.
In the dependecy-list opencl-headers is missing - it doesn't compile without it.

backfist commented on 2014-05-02 10:59

In the newest version opencl works much better. :)

haagch commented on 2014-02-02 16:35

With radeon gallium opencl (I only tested radeonsi) it currently does not work because the build parameter "-cl-denorms-are-zero" is not supported. It has to be removed from src/cl_support.cpp
buildParams = "-w -cl-single-precision-constant -cl-denorms-are-zero ";

Then it tries to compile the opencl kernels, but fails:

input.cl:34:1: error: OpenCL does not support the 'static' storage class specifier
static formulaOut Fractal(__constant sClInConstants *consts, float3 point, sClCalcParams *calcParam);

Not sure if this is supposed to be this way or not since I don't know opencl well enough.

haagch commented on 2013-11-15 21:30

Hm, beignet actually compiles with clang 3.4 snapshots now.

The tests work but I'm not sure how to use it with mandelbulber. I think you need an "icd" loader or so?

With fglrx and switchable graphics it's strange. Either with their official "support" or with running mandelbulber on the intel gpu as root (then you get amd opencl too) I get a black screen with no effects, a pink screen with some effects and a crash with all effects. But it works when directly rendering on fglrx's X server and accessing it with vnc.

Zucca commented on 2013-11-11 19:01

haagch: Nice find. I have Intel GPU on my laptop. I guess I could try it.

Maybe in future I'll buy Xeon Phi card for my server. That would make many things including mandelbulber rendering quite fast.

haagch commented on 2013-10-16 19:46

> Intel GPU doesn't support OpenCL

Sorry, but http://wiki.freedesktop.org/www/Software/Beignet
But I have no idea if it will work.

> had to install opencl-nvidia

Ok, I'll add some opt depends I think

> not sure what is need for AIT

I think catalyst contains everything.

Zucca commented on 2013-10-16 19:40

Intel GPU doesn't support OpenCL, but CPU's do.
Anyway. I have only SU4100 Core2Duo.
On the server side OpenCL "works". Some calculations take more time than with multi cored CPU (dof, fog...).
However maybe in future updates those problems are soved.

willll commented on 2013-10-16 03:19

Hi, nice, I had to install opencl-nvidia, not sure what is need for AIT and intel video cards.

Zucca commented on 2013-10-15 18:05

A minor error in package()
==> Starting package()...
mv: cannot move ‘mandelbulber’ to a subdirectory of itself, ‘mandelbulber/mandelbulber’

Works on my server with Radeon 7850.
Doesn't work on my laptop with Intel GMA 4500MHD (I guess it's not supported anyway).

I'm doing all the heavy renderin on my server in anyways. :)

Rendering times went from 60s to ~1.5s.

So anyone know cli switch to enable (full featured) OpenCL?

Zucca commented on 2013-10-15 18:04

A minor error in package()
==> Starting package()...
mv: cannot move ‘mandelbulber’ to a subdirectory of itself, ‘mandelbulber/mandelbulber’

Works on my server with Radeon 7850.
Doesn't work on my laptop with Intel GMA 4500MHD (I guess it's not supported anyway).

I'm doing all the heavy renderin on my server in anyways. :)

Rendering times went from 60s to ~1.5s.

Zucca commented on 2013-10-15 17:18

THANK YOU!
(All the caps were intented.)