In some situations sort wastes cpu-cycles of all available cpus.

 

Hi,

 

I refer to 'sort' of the following Version:

 

$ sort --version

sort (GNU coreutils) 8.7

Packaged by Gentoo (8.7 (p1))

Copyright (C) 2010 Free Software Foundation, Inc.

License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.

This is free software: you are free to change and redistribute it.

There is NO WARRANTY, to the extent permitted by law.

 

Written by Mike Haertel and Paul Eggert.

 

on the system:

 

$ uname -a

Linux CUDA 2.6.38-gentoo-r6 #12 SMP Fri Sep 14 12:59:07 CEST 2012 x86_64 Intel(R) Xeon(R) CPU E5645 @ 2.40GHz GenuineIntel GNU/Linux

 

The problem causes, if the input of sort is very long but the output is not taken.

 

if i call:

 

# seq 1 10000000 | sort -R | wc -l

10000000

 

then sort itself uses only circa 10 cpus:

 

top:

 8316 root      20   0  359m 185m  676 S 1009  1.5   4:08.18 sort 

 

or ca. 4 cpus in this case:

 

# seq 1 10000000 | sort -n | wc -l

10000000

 

top:

 8782 root      20   0  295m 185m  672 S  382  1.5   0:25.18 sort

 

while sort is running, this behaviour is ok. it would be ok too, if

it would use all cpus.

 

but, if i use:

 

# seq 1 1000000 | sort -n | less

 

and while im not scrolling to the bottom in 'less'

sort uses all cpus

 

top:

 9421 root      20   0  447m 109m  660 R 2295  0.9   3:12.72 sort                                                    

 

in this case, sort is already done sorting (it took and sorted

the whole input and 'less' displays values).

but it takes a lot of cpu-cycles on all cpus.

 

if i scroll to the bottom, 'less' takes all values of the sort output

and sort will end; this is ok.

 

Regards

 

 

Mit freundlichen Grüßen

 

Frank Schwidom

Dipl.-Inf. (FH)

 

Hochschule Lausitz (FH)

Fertigungstechnik/ Tribologie

Prof. Dr.-Ing. R. Winkelmann

Großenhainer Str. 57

01968 Senftenberg

 

Fone :       +49 (0) 3573 85 435

Fax:          +49 (0) 3573 85 426

Email:       Frank.Schwidom@HS-Lausitz.de

Homepage:  http://www2.fh-lausitz.de/fhl/mb/labor/tribologie/Index.html