[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: john and multicore (update)



On Thu, Feb 21, 2008 at 04:37:32PM +0100, Hans-J. Ullrich wrote:
> I just tried to run famous "john" password cracker on my multicore system. I 
> discovered, that john is using only one of my two cpus (100 percent). The 
> other one seem to work for other tasks (0 - 20 percent). 
> 
> So, must I compile john in another way ?
> 
> Must I start john in another way ?
> 
> Must the source code of john be written in another way ?

Yes.

> Is it possible, to let john use all the cpus (and cpupower) for its task ?

Only if you run two copies on half the data each or something like that.

> Update: It seems, john is using both cpu cores, but not at the same time. 

Yes it is a single thread program.  Wherever the scheduler runs it is
where it runs.  It can bounce between CPU cores.

The only way for a single program to use more than one cpu core is if it
was written with multiple threads.  Most programmers aren't skilled
enough to do that (at least with the current popular programming
languages.  If functional languages gain usage it will probably solve
that problem for them if they can grasp those languages).  Writing good
multithreaded code is very hard and for some problems can't even be
done.

--
Len Sorensen


Reply to: