This is a simple commandline utility to take an input database file and divide it into similar-sized smaller pieces. Then each piece can be used as a dbase file in a separate ROCS run. This divide-and-conquer approach is an alternative way to run a single dbase over multiple CPU’s but without the use of MPI.
Name of input file to chunk.
Base name of output files. Output files will be sequentially numbered.
And one of the following two options must be used:
Create N new files of equal number of conformers or molecules. Chunker will read through the entire file once to count the number of conformers/molecules, then will create the new files. The switch is the -countConfs flag. N must be a postive integer.
Create new files, each containing M molecules. M must be a postive integer.
Only one of -nchunks or -chunksize can be used.
If the flag -countConfs is set to true then the file will be switched to give approximately equal numbers of conformers in each chunk. The split always occurs at the end of each molecule so all the conformers for each molecule are kept together. If the flag -countConfs is set to false then the file will be switched to give equal numbers of molecules in each chunk.
[default = true]
This option will pad the front of the output filenames with zeroes, which helps keep files in order when doing a sort of filenames.
[default = true]
To break input.oeb.gz into 5 chunks, each with the same number of molecules.
prompt> chunker -in input.oeb.gz -base bar -nchunks 5
bar0000001.oeb.gz bar0000002.oeb.gz bar0000003.oeb.gz bar0000004.oeb.gz bar0000005.oeb.gz
To break input.oeb.gz into chunks, each with 1000 multi-conformer molecules:
prompt> chunker -in input.oeb.gz -base foo -chunksize 1000