排序--parallel不并行化
我正在尝试使用egrep -u排序从文件中拉出的唯一行,然后对其进行计数。大约有10%的行(字母表[ATCG]中的所有100个字符)重复。有两个文件,每个文件约3个演出,50%不相关,因此大约3亿行。 LC_ALL=C grep -E <files> | sort --parallel=24 -u | wc -m 在LC_ALL = C和使用-x加速grep之间,到目前为止,最慢的部分是排序。阅读手册页使我走到--parallel = n,但是实验显示绝对没有任何改善。对top的一点挖掘表明,即使使用--parallel = 24,排序过程一次也只能在一个处理器上运行。 我有4个具有6个核心和2个线程/核心的芯片,总共提供48个逻辑处理器。请参阅lscpu,因为/ proc / cpuinfo将太长。 Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 48 On-line CPU(s) list: 0-47 Thread(s) per core: 2 Core(s) per socket: 6 Socket(s): 4 …