We help IT Professionals succeed at work.

how to make software/app that runs on 1 processor distribute the load (ie multi thread) on all the processors

222 Views
Last Modified: 2018-10-03
I have a CPU intensive job (cracking a password protected zipfile) but it
only run on one of the four processors of my x230 (& x270) :
how can I make this "Free Zip Password Recovery" run on all the
processors.

From Task Manager, total CPU utilized is constantly at 25-26% only
so would like to be able to distribute the load.  Certainly buying a
Paid professional cracking tool (which has this feature) will help
but not looking into this currently.

the x230 is on Win 7 Profsnl & the x270 is on Win 10 Profsnl
Comment
Watch Question

AlexA lack of information provides a lack of a decent solution.
CERTIFIED EXPERT
Commented:
This problem has been solved!
(Unlock this solution with a 7-day Free Trial)
UNLOCK SOLUTION
Jeremy WeisingerSenior Network Consultant / Engineer
CERTIFIED EXPERT

Commented:
The software author would need to code it to take advantage of multiple CPUs. You can also turn off hyperthreading and that would give it a little boost.
AlexA lack of information provides a lack of a decent solution.
CERTIFIED EXPERT

Commented:
Turning off HT wouldn't do a single thing.
Jeremy WeisingerSenior Network Consultant / Engineer
CERTIFIED EXPERT

Commented:
Hypertheading splits each core's cycle among multiple processes. If you turn off hypertheading it will only run a single process through the core. So if you're running a program (like the one the author is using) it can be allocated the entire core without having to share it with other processes. It doesn't quite double the performance but it does increase it for single threaded processes.
AlexA lack of information provides a lack of a decent solution.
CERTIFIED EXPERT

Commented:
Unfortunately you're incorrect, hyperthreading will allow a process to split across multiple cores and threads, in the event you disable it, an application which is unaware of hyperthreading it'll make no difference.

The only reason to disable HT would be to reduce the load on the Internal memory controller which would also reduce heat. Essentially disabling it for this would do nothing.
Jeremy WeisingerSenior Network Consultant / Engineer
CERTIFIED EXPERT
Commented:
This problem has been solved!
(Unlock this solution with a 7-day Free Trial)
UNLOCK SOLUTION
AlexA lack of information provides a lack of a decent solution.
CERTIFIED EXPERT

Commented:
I'm aware of what it is, unfortunately you are providing incorrect information in the fact that you are stating that disabling HT would make a difference for this. Which is won't. Also, you can run multiple processes at the same time on cores, if the application is aware of HT it would make use of the HT and multiple cores, if it's not, it'll just cane the one core which is what this application will do.
Jeremy WeisingerSenior Network Consultant / Engineer
CERTIFIED EXPERT

Commented:
OK, well I still maintain that disabling hyperthreading will probably give some additional performance to the application. I guess the author will need to come to their own conclusion.
Lee W, MVPTechnology and Business Process Advisor
CERTIFIED EXPERT
Most Valuable Expert 2013
Commented:
This problem has been solved!
(Unlock this solution with a 7-day Free Trial)
UNLOCK SOLUTION

Author

Commented:
Thanks guys : I happen to recall that when disabiling hyperthreading, the # of processors shown
in Task Manager will halve.  Guess will just have to test it out & that will determine the outcome.

Lee,
I'm using Krylack recovery tool (free version):  I noticed that if I "hibernate" the computer, it'll
resume from where it last 'pause' & not lose the work but if I shutdown or restart this tool,
it will start all over again, ie lose the work done so far.

Just noticed I could run several instance of this tool & it will give a separate attached screen:
& I can specify to start brute-forcing from which number (we always use length of 8 & above):
then I can use Task Manager to assign each of the process to specific processor ie CPU affinity.

Just 1 help I need: to determine for a password length of 8, this tool start cracking from
"11111111" or "aaaaaaaa" or "~~~~~~~~" or ??  so that I can specify what password to start
from.

Lastly I've tried 2 online ones & they failed the next day: so
zipwdrecovKr.jpg

Author

Commented:
... so before I pay for one, I wanted to ensure it will work.

7password.com  just hangs  while another paid service (after they succeeded) failed the next day.

I noticed on my x230 (Win 7 64bit), it gives about 5000-6000 passwd/sec while on my x270 (Win 10, guess it's 64bit), it's only 330-380 passwd/sec

Author

Commented:
correction: should read
while another paid service (they charge after they succeeded) ...

Author

Commented:
Any suggestion on any other tools/service that "pay only if succeed in the recovery" are most welcome.

I guess those online ones (which charges after they succeed) use cloud/GPU/multi-processor but I don't have visibility of this & their chances of success

Author

Commented:
After about 5 mins on the x270, the CPU utilization for each drops to about 8-12% & 
number of passwd/sec drop to 250-300/sec
Technology and Business Process Advisor
CERTIFIED EXPERT
Most Valuable Expert 2013
Commented:
This problem has been solved!
(Unlock this solution with a 7-day Free Trial)
UNLOCK SOLUTION

Author

Commented:
Ok, appreciate the frank answer: is there any cloud service out there that could possibly
offer such a "supercomputer" cracking service that anyone know?  

I can't get that amount of computing resource even if I use the paid software that Alex
suggests, so I'm counting on any cloud supercomputing service out there, if there's any