PMT is a 4x4 like algorithm to make everything run parallelly. You can run any compressor/encoder that supports stdio/stdin/stdout or even nothing. The program can make a single threaded compressor multithreaded by using blocks, just like 4x4.
Run PMT.exe --h to see this help that describes a lot:
PMT - Parallel Multithreaded encoder/decoder by 78372
Main Options:
PMT.exe e/d {Encoder} {Basic Options} Input Output
e/d represents encode/decode
input/output can be specified as "-" for stdin/stdout
{Encoder} must be present both for encoding and decoding
Basic Options:
-t#: Number of threads to use(Default: number of threads you have)
-t#p: Percentage of threads to use
-b#: BlockSize(Encode only) (Default: 64m)
INI Options:
PMT.ini is required for encoder/decoder
The section name should be as the {Encoder}
The keys should be as below:
Encode = It should have the Encode Command Line
Decode = It should have the Decode Command Line
InFileEnc = It should be the encode input file name for the {Encoder}. Write "-" or do not write this key to specify stdin
InFileDec = It should be the decode input file name for the {Encoder}. Write "-" or do not write this key to specify stdin
OutFileEnc = It should be the encode output file name for the {Encoder}. Write "-" or do not write this key to specify stdout
OutFileDec = It should be the decode output file name for the {Encoder}. Write "-" or do not write this key to specify stdout
You can not encode using PMT and decode directly using {Encoder} and vice versa
arc.ini Example:
[External compressor: precomp,mpzapi,zlib]
header = 0
packcmd = PMT.exe e {compressor} -b64M -t4 - - <stdin> <stdout>
unpackcmd = PMT.exe d {compressor} -t100p - - <stdin> <stdout>
When you use this, basically you don't need any other chunk based cls like cls-mpzmt, cls-rzmt or whatever.
You can make everything multithreaded with this.
As it's first release and I haven't tested it much, there can be bugs. Do report if you find one.
The program may seem too complex for beginners, but I can't make it simpler than this.
Run PMT.exe --h to see this help that describes a lot:
PMT - Parallel Multithreaded encoder/decoder by 78372
Main Options:
PMT.exe e/d {Encoder} {Basic Options} Input Output
e/d represents encode/decode
input/output can be specified as "-" for stdin/stdout
{Encoder} must be present both for encoding and decoding
Basic Options:
-t#: Number of threads to use(Default: number of threads you have)
-t#p: Percentage of threads to use
-b#: BlockSize(Encode only) (Default: 64m)
INI Options:
PMT.ini is required for encoder/decoder
The section name should be as the {Encoder}
The keys should be as below:
Encode = It should have the Encode Command Line
Decode = It should have the Decode Command Line
InFileEnc = It should be the encode input file name for the {Encoder}. Write "-" or do not write this key to specify stdin
InFileDec = It should be the decode input file name for the {Encoder}. Write "-" or do not write this key to specify stdin
OutFileEnc = It should be the encode output file name for the {Encoder}. Write "-" or do not write this key to specify stdout
OutFileDec = It should be the decode output file name for the {Encoder}. Write "-" or do not write this key to specify stdout
You can not encode using PMT and decode directly using {Encoder} and vice versa
arc.ini Example:
[External compressor: precomp,mpzapi,zlib]
header = 0
packcmd = PMT.exe e {compressor} -b64M -t4 - - <stdin> <stdout>
unpackcmd = PMT.exe d {compressor} -t100p - - <stdin> <stdout>
When you use this, basically you don't need any other chunk based cls like cls-mpzmt, cls-rzmt or whatever.
You can make everything multithreaded with this.
As it's first release and I haven't tested it much, there can be bugs. Do report if you find one.
The program may seem too complex for beginners, but I can't make it simpler than this.