#1
|
||||
|
||||
PMT - Parallel Multithreaded Encoder/Decoder
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: Quote:
Encode: Quote:
Quote:
Quote:
Code:
[External compressor:precomp,mpzapi,zlib,razor] header = 0 packcmd = PMT.exe e {compressor} -b64M -t4 - - <stdin> <stdout> unpackcmd = PMT.exe d {compressor} -t100p - - <stdin> <stdout> 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. Good Luck and Merry Christmas. Release 2 changelog: 1. The whole ini settings changed. See help again. 2. Minor bug fixed. Source released on github
__________________
NOT AVAILABLE Last edited by 78372; 17-01-2020 at 05:02. |
The Following 27 Users Say Thank You to 78372 For This Useful Post: | ||
Andu21 (02-01-2020), Balaji007 (05-10-2020), Behnam2018 (11-01-2020), BLACKFIRE69 (27-12-2019), Carldric Clement (24-12-2019), darkwolves (26-12-2019), DiCaPrIo (25-12-2019), dixen (25-12-2019), Entai44 (24-12-2019), ffmla (24-12-2019), FitGirl (25-12-2019), giothothan (29-07-2020), Harsh ojha (24-12-2019), KaktoR (24-12-2019), kassane (29-01-2020), kenzo34 (24-12-2019), L0v3craft (07-07-2020), Mortal Lord (18-07-2020), oltjon (11-03-2020), PsYcHo_RaGE (24-12-2019), rambohazard (27-12-2019), sanekbest1 (25-12-2019), Sergey3695 (11-01-2020), shazzla (24-12-2019), Simorq (24-12-2019), Vladislav989 (13-09-2022), ZAZA4EVER (24-12-2019) |
Sponsored Links |
#2
|
||||
|
||||
Test
Thanks 78372
Code:
[razor] Encode = RZ a -d 32m packedfile.pcf datafile Decode = RZ e packedfile.pcf datafile InFileEnc = datafile OutFileEnc = packedfile.pcf InFileDec = packedfile.pcf OutFileDec = datafile Code:
[External compressor:precomp,mpzapi,zlib,razor] header = 0 packcmd = PMT.exe e {compressor} -b16M -t100p - - <stdin> <stdout> unpackcmd = PMT.exe d {compressor} -t4 - - <stdin> <stdout> Code:
Compressed 8 files, 466,568,427 => 58,679,682 bytes. Ratio 12.58% Compression time: cpu 0.38 sec/real 17.54 sec = 2%. Speed 26.60 mB/s All OK Code:
Tested 8 files, 58,679,682 => 466,568,427 bytes. Ratio 12.58% Testing time: cpu 0.45 sec/real 1.55 sec = 29%. Speed 300.13 mB/s All OK |
The Following 9 Users Say Thank You to Simorq For This Useful Post: | ||
78372 (24-12-2019), Behnam2018 (11-01-2020), Carldric Clement (26-12-2019), ffmla (24-12-2019), KaktoR (24-12-2019), PsYcHo_RaGE (24-12-2019), sanekbest1 (25-12-2019), shazzla (24-12-2019), ZAZA4EVER (17-03-2020) |
#3
|
|||
|
|||
^^.pcf isn't needed here, that was for precomp which gives
pcf as output. And -d 32m doesn't make sense with 16m blocks Last edited by 78372; 24-12-2019 at 08:28. |
The Following 2 Users Say Thank You to 78372 For This Useful Post: | ||
Behnam2018 (11-01-2020), Simorq (24-12-2019) |
#4
|
||||
|
||||
Ohh, okay. This seems to be interresting. I will test it out next year if I have a bit more time
Thank you for all your stuff here until now!
__________________
Haters gonna hate
|
The Following 2 Users Say Thank You to KaktoR For This Useful Post: | ||
78372 (24-12-2019), Behnam2018 (11-01-2020) |
#5
|
|||
|
|||
Nice Work! Thanks.
Last edited by dixen; 25-12-2019 at 01:42. |
The Following 2 Users Say Thank You to dixen For This Useful Post: | ||
78372 (25-12-2019), Behnam2018 (17-01-2020) |
#6
|
|||
|
|||
Thanks for the Christmas gift, it's working as intended! Will do more tests.
|
The Following 2 Users Say Thank You to FitGirl For This Useful Post: | ||
78372 (25-12-2019), Behnam2018 (17-01-2020) |
#7
|
|||
|
|||
@Everyone.
Release 2 Uploaded. Changed the whole INI setup and made it as easy as fa. I wonder why I didn't make it before. Check first post for changes, settings and download. |
#8
|
|||
|
|||
What if only CLS is available for unpacking? In this case how can i use PMT? Is it possible somehow?
|
#10
|
|||
|
|||
anyway to make bpk mt I tested it's not working
|
#11
|
|||
|
|||
Of course it won't work, bpk can deal with complete bink files only, not trimmed by this tool.
|
#12
|
|||
|
|||
If you have a cls for both compression and decompression, you can use wrapcls.exe with PMT to use the cls. Here's an example of PMT.ini:
Quote:
|
#13
|
|||
|
|||
C'mon, I have already answered to this. PMT is a BLOCK-BASED TRIMMER. IT SPLITS FILES INTO CHUNKS. BPK is a FILE-BASED ENCODER. It deals only with full files. PMT split bink files into chunks and they CANNOT BE COMPRESSED with BPK anymore. "L" for logic.
It's intended for codecs which rely on pure stream data - generic compressors, precompressors, MPZ (cause it deals with frames in MP3, not full files). Last edited by FitGirl; 26-12-2019 at 07:36. |
#14
|
|||
|
|||
@Simorq,
I think FitGirl has already answered your question. In addition, let me describe how PMT works. PMT splits your input as blocksize you have specified. If your encoder doesn't support stdio, it makes temporary files and runs your encoder over it. It requires disk space for that. If your encoder supports stdio, then it uses memory for storing blocks. Basically the additional memory you need here is blocksize * threads + encoded size * threads. Same goes for non-stdio but it takes disk space and temp files then. PMT can't work without extra memory for stdio as PMT itself supports stdio, and without using blocks, both stdio support for encoding+decoding is not possible. Also, even without stdio, running a lot of instances parallelly and writing to same output isn't possible. So either way it requires extra memory or temp files. As the program requires blocks, encoders/compressors that require full files(such as bpk or srep) won't work perfectly/won't work at all. I think this answers and will answer to future questions regarding PMT. |
The Following User Says Thank You to 78372 For This Useful Post: | ||
Simorq (26-12-2019) |
#15
|
|||
|
|||
Is this working with packet compressor? I can compress with UltraARC, but decompression doesn't work. This is my configuration:
Quote:
Thanks btw for PMT Last edited by Entai44; 28-12-2019 at 10:05. |
Thread Tools | |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
plzip_modded - parallel 64bit lzma (de)compressor and a direct 4x4:lzma replacement | elit | Conversion Tutorials | 17 | 26-03-2018 08:08 |
Driver Parallel Lines | cdkiller | PC Games - Protection List | 0 | 03-07-2007 05:16 |
DRIVER Parallel Lines - savegame needed | speedfreak | General Gaming | 0 | 30-06-2007 20:49 |
Driver: Parallel Lines (Multi lang to 1 lang) | mondragon | PC Games - CD/DVD Conversions | 0 | 28-06-2007 11:03 |
Powerswitch thru USB or Parallel port | EMPiRE | Hardware | 1 | 29-03-2006 05:38 |