Mandelbrot - Distributed Processing How To

The Mandelbrot program can run stand-alone on one computer, but in order to really waste CPU cycles you need to run it as a distributed application on several computers. Here are the step-by-step instructions for how to do it.

  1. Start up the main instance of Mandelbrot. This is the one you're going see the pretty pictures on. You can do that with this command:
    java -jar Mandelbrot.jar
    
  2. Start another instance of Mandelbrot on another computer in "remote generator" mode, like this:
    java -jar Mandelbrot.jar -rg
    
  3. In the main instance, open the Fractal Generators dialog (Menu option Fractals|Generators). There is a section for connecting to a remote host and a place to tell the program what host to connect to. Enter the IP address or hostname of the machine where your remote generator instance is running. For example:
    Host: 192.168.0.3
    
  4. Press "Connect". If there's a problem you'll get an error message. Otherwise press "OK".
  5. Press Control-G to generate a new fractal image. Some slices of the image should be generated by the remote generator instance.
  6. You're all set. Fractalize away. Or, if you've got a few computers lying around, start up some more remote generators on different machines.

At low iterations, the benefit of parallelizing the fractal generation is not very apparent. In fact, the overhead of transfering the image slices across the network may very well outweigh any speed increase. To see any real benefit, you have to crank the iterations way up. Zoom in on some interesting part of the fractal, then open the fractal parameters dialog (menu option Fractal|Parameters). Set the 'depth' parameter to some much larger value like 5 or 10 thousand. Now the spare CPU power will start to become usefull.

To find out the IP address on a Windows machine, type

ipconfig
. On a unix based OS, you'll need some variant of
ifconfig eth0
or
ifconfig -a
.