Settings

Theme

Visualizing the Mandelbrot Set with Chlorine

tinycranes.com

12 points by Polytonic 10 years ago · 7 comments

Reader

ska 10 years ago

I hadn't heard of Chlorine, so this is effective as an intro/demo.

The implementation you use is the textbook "toy" one, though, which is a bit oversimplified and probably biases the perceived speedup. Simple and brute force often favors GPU implementation, whereas the communication can really hurt you in a more realistic algorithm.

It would be interesting to see what your comparison looks like with at least a spatial subdivision and connectivity analysis (the most obvious algorithmic speed up), proper anti-aliasing and a functional zoom. Even better if you did interior/exterior distance estimation...

  • PolytonicOP 10 years ago

    I was contemplating doing a FFT as a demo, but Mandelbrot was low hanging fruit that made for pretty pictures. Keep in mind this was student work.

    If you have a specific problem in mind, I'd be happy to work on adding it as an example.

    I'm in search of my first "customer" so to speak. :)

    • ska 10 years ago

      Above I was suggesting additions to the existing demo, the straightforward computation of Mandelbrot membership isn't how you would really do it if you care about performance or accuracy.

      Do any of those modifications appeal? I understand it was student work, but everything I suggested is fairly straightforward.

      • PolytonicOP 10 years ago

        They certainly do appeal, but are likely a little outside my expertise to go implement, at least right now. Definitely something I'll look into, time permitting!

        I was aiming more for "simpler" to start with I think.

danzimm 10 years ago

In my own experience, using cuda when you have access to an NVIDIA card increases the speed even more so. Perhaps you might want to add a comparison to that too. I used to make fractals too and went through the same steps :D

  • PolytonicOP 10 years ago

    It would be an interesting comparison, yeah. I haven't worked with CUDA much lately though. I was thinking of adding CUDA support so that Chlorine would default to CUDA on Nvidia cards, but it seemed of limited value. The real goal is 1) portability and 2) ease of use, rather than absolute performance.

PolytonicOP 10 years ago

I wrote this blog post a while ago, and decided to revisit it over the weekend to generate/add some benchmarking data. Figured I'd post it here and see if anyone has any feedback.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection