coreutils
[Top][All Lists]
Advanced

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

Re: parallel sort at fault? [Re: [PATCH] tests: avoid gross inefficiency


From: Assaf Gordon
Subject: Re: parallel sort at fault? [Re: [PATCH] tests: avoid gross inefficiency...
Date: Wed, 09 Feb 2011 13:22:00 -0500
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.9) Gecko/20100918 Icedove/3.1.4

Jim Meyering wrote, On 02/09/2011 12:29 PM:
> Jim Meyering wrote:
>> Running "make -j25 check" on a nominal-12-core F14 system would
>> cause serious difficulty leading to an OOM kill -- and this is brand new.
> 
> If I revert my earlier patch and instead simply
> insist that sort not do anything in parallel,
> 
>     ASSORT = LC_ALL=C sort --parallel=1
> 
> then there is no hang, and things finish in relatively good time.

I previously noticed the memory issue as a surprising (for me, at least) 
side-effect of parallel sort
(http://lists.gnu.org/archive/html/coreutils/2010-12/msg00079.html and 
http://lists.gnu.org/archive/html/coreutils/2010-12/msg00084.html)

But I'm noticing another side-effect of the new default behavior:
On a shared linux system (both on a server with many cores, and on a SGE 
cluster),
were users are using 'sort' as part of their scripts, memory usage and avg.load 
sometimes peaks beyond what is available, because the each sort process now 
uses up to 8 cores by default.

So while implicitly users assume they use 1 core (at least with SGE, where you 
can specify how many threads your job will require), in practice they use many 
more.

Globally setting OMP_NUM_THREADS=1 restores the old behavior, and only 
explicitly specifying "--parallel=X" lets sort use more than one thread, 
but I'm wondering if it's not better to default back to 1 core, and require 
explicit "--parallel" to do multi-threaded sort.

-gordon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]