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.schwi...@hs-lausitz.de<mailto:frank.schwi...@hs-lausitz.de> Homepage: http://www2.fh-lausitz.de/fhl/mb/labor/tribologie/Index.html