Introduction

FracTest supports a batch mode, in which a batch of previously saved view specifications will be processed and saved without human attention.

In batch mode, the normal FracTest user interface is displayed, but most of the controls are disabled. Instead, processing is started by adding jobs to the work queue. This is done by dropping PNG files into the main window, or into a watch folder.

Batch mode is a really powerful way to produce a lot of views of fractals. You can "scout" for nice-looking views using a low resolution, maybe with no anti-aliasing; save the views as PNG files; and then drop all of those saved files into a batch mode instance of the app, which is configured to render at high resolution. The images will be rendered one by one, and saved to new PNG and Jpeg files — even if it takes hours, days, or weeks.

Batch mode works very well with cluster computing, though it does not require it.

Starting Batch Mode

Batch mode is started using command-line parameters. To set up a batch mode instance, you can just use this command:

java -jar FracTest.jar --batch

This will bring up the usual FracTest window, but with the controls mostly disabled; you can't make a selection in the fractal window. Any PNG files dropped into the app will be rendered using the parameters stored within them, including image size, anti-aliasing, etc. The rendered images will be saved, in both PNG format (containing all the fractal parameters) and Jpeg format (with no parameters), in a folder called "Output".

You might want to specify a different output folder, which you can do with the --output option:

java -jar FracTest.jar --batch --output Fractals

This mode of working requires you to set up each input file with the appropriate resolution, anti-aliasing mode, etc., prior to adding it to the batch. This is essential if you want each image to have its own resolution and quality parameters; however, often you will want to render a lot of images to the same size and so on. You can simplify this by specifying these modes on the command-line. For example:

java -jar FracTest.jar --batch \ --output-folder Images -S uhd -P three_pass -A aa_9

This command sets up the following options:

These parameters will override the parameters in the PNG files being processed. This can make life much easier: you can "scout" for images in a low-resolution "draught" mode, and save the images you find as-is. When you later drop a set of these images into a batch mode app as configured here, they will all be rendered to UHD with 9× AA.

Session

When FracTest runs in batch mode, by default it will open and run in a session named Batch. If you wish to use a different session, use the --session command-line argmuent, like:

java -jar FracTest.jar --batch --session ReRender

Using Batch Mode with Cluster Computing

If you have a number of computers available for fractal rendering, a natural way to use them is to scout for interesting fractal views on a standalone machine, then drop them into a batch mode app instance which is configured to use the other machines as compute servers. To do this, set the batch mode app up to use cluster computing as described on that page.

You can do this through the cluster management window, which is still available in batch mode; but it might be more useful to set this up on the command line, perhaps from a shell script / BAT file. For example, this command sets up a batch process, using servers Bill and Ben for computing:

java -jar FracTest.jar --batch \ -S uhd -P three_pass -A aa_9 \ --servers Bill,Ben --no-local

Note that even when you use the command line to set up a clustering batch app, as shown here, you can still open the cluster management window to see the statuses of the servers.

Using Batch Mode

In batch mode, FracTest maintains a work queue, and processes jobs — in the form of PNG files, containing fractal view parameters — which are added to that queue.

To add jobs to the queue, just drop the PNG files into the main fractal view. You can drop multiple files at once, or one file after another, as you wish. If you want to have files processed in a given order, it's best to drop them one at a time, in the order you want them processed.

To see and manage the queue, bring up the queue management window, using the "Work -> Manage Work Queue" command in the menu bar. An example of this window is shown at right (click to expand).

The management capabilities in this window are very limited at present. However, you can see:

The job in progress and jobs not yet started can be cancelled, by clicking the "X" button.

Watch Folders

Another way to add jobs to a batch instance is through watch folders. This feature is not much used at present, but it's still there, so here's how to use it.

Set up a watch folder with the --watch parameter; as in:

java -jar FracTest.jar --batch --watch Work --output Fractals

Now, any PNG files dropped into the named folder ("Watch" in this case) will be added to the work queue.

The chief use of this feature would be to add work across a network; so "Watch" would be a shared folder, resident on the machine where the batch instance is running.

Because FracTest is notified of a file being dropped when it is first created, and it can take time for a file to travel over the network, FracTest will wait for 5 seconds before actually loading the files. This gives some time for the transfer to complete, hopefully enough on a typical network.

If you use this feature, remember to clean the files out of the watch folder when they're done (FracTest does not, at present).