The most basic option is –sio. This option invokes the default serial I/O implementation and turns off the other options related to serial I/O (
–siom,
–siod) which are discussed below. The memory footprint required for this option is the number of reads in the project (up to one million) times 8 KB. That is, if your project contains less than one million reads the memory footprint will be the number of reads in your project times 8 KB. The maximum memory footprint required will be 8 GB (one million times 8 KB). The disk space required will be three times the space required for the original read files in your project. This is because during the creation of the single sequential read file, temporary files will be created that contain sequences from the original input read files sorted in the order in which they will be required when the sequences are actually read. These temporary files will be merged into a single file. Thus, at one point in the process the input sequence data will be represented three times on the disk: once in the original files, once in the temporary files and once in the sequential read file. At the end of the merge process the temporary files will be deleted.
The sequential read file is named .SequentialReads and is located in the output directory for the project. This file is deleted when execution of the project has completed.
The –siom option allows the user to invoke serial I/O and specify an allowable memory footprint greater than the baseline requirement (see above). The option takes a numeric argument (in gigabytes) with a minimum of 1 and a maximum of 1000. Otherwise, the behavior is the same as for the default serial I/O functionality. It is the responsibility of the end user to specify a value that corresponds to the amount of free, physical RAM that actually exists on the computer.
The –siod option invokes an alternative implementation of the serial I/O functionality that minimizes the disk space requirement. This option takes no argument. This alternative implementation processes the input read files incrementally and creates a smaller sequential read file to be is used to compute signals during the Contig Phase or produce output files during the Output Phase. The temporary files and sequential read file used in each increment are discarded before the next increment. This minimizes both the disk space and memory footprint requirement. The performance of this implementation is comparable to the default serial I/O implementation.