Class MandelbrotSetSmp3
- java.lang.Object
-
- edu.rit.smp.fractal.MandelbrotSetSmp3
-
public class MandelbrotSetSmp3 extends java.lang.ObjectClass MandelbrotSetSmp3 is an SMP parallel program that calculates the Mandelbrot Set.Usage: java -Dpj.nt=K -Dpj.schedule=schedule edu.rit.smp.fractal.MandelbrotSetSmp3 width height xcenter ycenter resolution maxiter gamma filename
K = Number of computation processors
schedule = Parallel loop schedule
width = Image width (pixels)
height = Image height (pixels)
xcenter = X coordinate of center point
ycenter = Y coordinate of center point
resolution = Pixels per unit
maxiter = Maximum number of iterations
gamma = Used to calculate pixel hues
filename = PJG image file nameThe program considers a rectangular region of the complex plane centered at (xcenter,ycenter) of width pixels by height pixels, where the distance between adjacent pixels is 1/resolution. The program takes each pixel's location as a complex number c and performs the following iteration:
z0 = 0
zi+1 = zi2 + cuntil zi's magnitude becomes greater than or equal to 2, or i reaches a limit of maxiter. The complex numbers c where i reaches a limit of maxiter are considered to be in the Mandelbrot Set. (Actually, a number is in the Mandelbrot Set only if the iteration would continue forever without zi becoming infinite; the foregoing is just an approximation.) The program creates an image with the pixels corresponding to the complex numbers c and the pixels' colors corresponding to the value of i achieved by the iteration. Following the traditional practice, points in the Mandelbrot set are black, and the other points are brightly colored in a range of colors depending on i. The exact hue of each pixel is (i/maxiter)gamma. The image is stored in a Parallel Java Graphics (PJG) file specified on the command line.
The computation is performed in parallel in multiple processors. A separate thread writes the output image file concurrently with the threads computing the image (overlapped computation and I/O). The program uses K+1 threads -- K computation threads plus one I/O thread. The program measures the computation's running time, including the time to write the image file. The program also measures the running time for each parallel team thread.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static voidmain(java.lang.String[] args)Mandelbrot Set main program.
-
DMelt 3.0 © DataMelt by jWork.ORG