我在MacStudio中安装了一个gnu并行的brew;
(base) ~ % brew info parallel
==> parallel: stable 20221222 (bottled), HEAD
Shell command parallelization utility
https://savannah.gnu.org/projects/parallel/
(base) ~ % parallel --version
GNU parallel 20221222
Copyright (C) 2007-2022 Ole Tange, http://ole.tange.dk and Free Software
Foundation, Inc.
我用sed
玩pipe-part
,如下;
parallel -a -eta -vv SRR8758324_2.fastq -k --block 30M --pipe-part 'sed "s/+.*/+/"' > SRR8758324_2.mod.fastq
当我通过htop监控cpu使用情况时,我可以看到所有的20个内核都亮起了。
然而,当我解雇了下面的人;
parallel -j 20 --eta -vv 'sed "s/+.*/+/"' ::: SRR8758324_2.fastq > SRR8758324_2.mod.fastq
只使用了一个核心。我真的很感激你告诉我我错过了什么。
'c.
,xNMM.
.OMMMMo OS: macOS 13.1 22C65 arm64
OMMM0, Host: Mac13,2
.;loddo:' loolloddol;. Kernel: 22.2.0
cKMMMMMMMMMMNWMMMMMMMMMM0: Uptime: 9 hours, 19 mins
.KMMMMMMMMMMMMMMMMMMMMMMMWd. Packages: 181 (brew)
XMMMMMMMMMMMMMMMMMMMMMMMX. Shell: zsh 5.9
;MMMMMMMMMMMMMMMMMMMMMMMM: Resolution: 3440x1440
:MMMMMMMMMMMMMMMMMMMMMMMM: DE: Aqua
.MMMMMMMMMMMMMMMMMMMMMMMMX. WM: Quartz Compositor
kMMMMMMMMMMMMMMMMMMMMMMMMWd. WM Theme: Blue (Light)
.XMMMMMMMMMMMMMMMMMMMMMMMMMMk Terminal: iTerm2
.XMMMMMMMMMMMMMMMMMMMMMMMMK. Terminal Font: Monaco 10
kMMMMMMMMMMMMMMMMMMMMMMd CPU: Apple M1 Ultra
;KMMMMMMMWXXWMMMMMMMk. GPU: Apple M1 Ultra
.cooc,. .,coo:. Memory: 3099MiB / 131072MiB
在第二个示例中,您只是在一个文件上运行sed
的一个实例。
在第一个中,由于--pipe-part
,您要求GNU Parallel将文件分割成多个块,并在一个新作业中处理每个块。