Re: Is it possible to make -lpthread program to use 100% CPU?

From: Alexandre <Alex.Kovalenko_at_verizon.net>
Date: Sat, 1 May 2004 12:25:58 -0400
On Thu, 29 Apr 2004 17:16:21 +0200
Ivan Voras <ivoras_at_fer.hr> wrote:

> Alexandre Sunny Kovalenko wrote:
> 
> > Alternatively, if there is a need to test a patch or time a program 
> > in this environment, it could easily be accomplished -- it is a non-
> > production box.
> 
> Could you turn off Hyperthreading and report any changes?
> 
> 
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"

I have updated my system to the latest CTM mailing on Friday (4/30) morning (EST).
This includes version 1.176 of kern_thread.c.

I have turned off hyperthreading and got result, which muddles me rather -- try
as I might, with -lpthread I could not get past 50% CPU utilization (as reported 
by 'top') and  number of computations per second matching that (number is very 
close to that  for running single-threaded). Top report with thread view enabled
shows that both KSE are bound to CPU 0 (if I am interpreting C column properly).

Program, built with -lthr, maxed CPU for two threads and more with consistent 
increase in number of computations.

Machine is dual 2.4GHz Xeon, HT capable.

When I have enabled Hyperthreading again, the main impact of the update seems to 
be that 'top' reports 100% CPU utilization with either -lthr or -lpthread for 
four and more threads, however number of computations per second for program
built with -lpthread is about 30% lower then same for program built with -lthr
(~270,000 for -lpthread vs. ~370,000 for -lthr). Results are consistent across
short runs (~1 minute per run) and long runs (~1 hr per run).

Any suggestions, including RTFM (with pointer to FM) would be appreciated greatly.

Again, if someone needs something tested on this box, let me know.

Oh, yes -- last round of tests was round with SCHED_ULE only.

-- 
Alexandre "Sunny" Kovalenko.
Received on Sat May 01 2004 - 08:27:27 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:52 UTC