ktmf01 / flacfrontend

4 stars 2 forks source link

Parallel Processing FrontEnd #1

Open rillian opened 3 years ago

rillian commented 3 years ago

On 2018 April 1, @juanpc2018 wrote:

#1. i write here because the FrontEnd does not allow to OpenTickets in SourceForge... and there is No e-mail in the web page of the FrontEnd... https://sourceforge.net/projects/flacfrontend/?source=typ_redirect http://flacfrontend.sourceforge.net

a very easy modification to the Front End...

there is a Law https://en.wikipedia.org/wiki/Amdahl%27s_law that calculates speed increases with parallel processing...

FLAC.exe 1.2.3 is more Serial Processing than parallel, and that´s OK for this modification...

if Processing Multiple files with the Frontend, Frontend is also Serial.. and that is a BIG mistake...

i have a .bat that forces Affinity for each flac.exe to a unique dedicated core/thread... so a 8-thread CPU can Process 8-files Parallel, increasing speed A LOT! a 32-Core CPU can Processes 32-files simultaneously, but becomes limited by HDD SATA 6Gbps speed., also limited by Power Management Level.

the modification for the FrontEnd, is to autodetect, also allow manual select Threads, similar to SystemStabilityTester. https://sourceforge.net/projects/systester/

forcing each thread CPU AFFINITY to a different file... converting 32 large "700MB" .wav files in Parallel, with a 32-core CPU, speed increase is incredible... 30-seconds vs. 1-hour.

start /AFFINITY 0x1 flac.exe %file1% start /AFFINITY 0x2 flac.exe %file2% start /AFFINITY 0x4 flac.exe %file3% start /AFFINITY 0x8 flac.exe %file4% start /AFFINITY 0x10 flac.exe %file5% start /AFFINITY 0x20 flac.exe %file6% start /AFFINITY 0x40 flac.exe %file7% start /AFFINITY 0x80 flac.exe %file8% start /AFFINITY 0x100 flac.exe %file9% start /AFFINITY 0x200 flac.exe %file10% start /AFFINITY 0x400 flac.exe %file11% start /AFFINITY 0x800 flac.exe %file12% start /AFFINITY 0x1000 flac.exe %file13% start /AFFINITY 0x2000 flac.exe %file14% start /AFFINITY 0x4000 flac.exe %file15% start /AFFINITY 0x8000 flac.exe %file16% start /AFFINITY 0x10000 flac.exe %file17% start /AFFINITY 0x20000 flac.exe %file18% start /AFFINITY 0x40000 flac.exe %file19% start /AFFINITY 0x80000 flac.exe %file20% start /AFFINITY 0x100000 flac.exe %file21% start /AFFINITY 0x200000 flac.exe %file22% start /AFFINITY 0x400000 flac.exe %file23% start /AFFINITY 0x800000 flac.exe %file24% start /AFFINITY 0x1000000 flac.exe %file25% start /AFFINITY 0x2000000 flac.exe %file26% start /AFFINITY 0x4000000 flac.exe %file27% start /AFFINITY 0x8000000 flac.exe %file28% start /AFFINITY 0x10000000 flac.exe %file29% start /AFFINITY 0x20000000 flac.exe %file30% start /AFFINITY 0x40000000 flac.exe %file31% start /AFFINITY 0x80000000 flac.exe %file32% etc...

#2. there is a FLACCL that uses GPU+CPU and is very FAST, but the time it needs to Start the Engine, kills the purpose of the software in very small files...

another modification would be to also use FLACCL.exe https://hydrogenaud.io/index.php/topic,64628.0.html http://cue.tools/wiki/FLACCL

ghost commented 5 months ago

Are you interested in updating the frontend? I'm very interested!