在多核计算机上加速 zgrep

dai*_*isy 6 grep gzip multithreading

zgrep在一台有 16 个 CPU 的计算机上运行,但运行任务只需要一个 CPU。

我可以加快速度,也许可以利用所有 16 个内核?

PS IO很好,我可以将gzip压缩文件复制到内存磁盘中

slm*_*slm 10

你可以做@UlrichDangel的意见建议,并替换可执行gzippigz。如果你想要的东西一点点创伤小,你还可以创建功能gzipgunzip并将其添加到您的$HOME/.bashrc文件。

gzip() {
 pigz "$@"
}
export -f gzip

gunzip() {
 unpigz "$@"
}
export -f gunzip
Run Code Online (Sandbox Code Playgroud)

现在,当您运行时,zgrep否则zcat它将pigz改用。

参考