国内服务器
亚洲服务器
欧洲服务器
北美洲服务器
南美洲服务器
大洋洲服务器
非洲服务器

首页>>IDC资讯

怎么利用多核CPU来加速你的Linux命令

发表时间:2022-05-31 09:01:25

本文主要介绍如何使用多核CPU来加速你的Linux命令。本文非常详细,具有一定的参考价值。有兴趣的朋友一定要看!

你有过需要计算非常大的数据量(几百GB)的经历吗?或者内部搜索,或者其他操作——,一些不能并行的操作。数据专家,我在和你说话。你可能有一个4核以上的CPU,但是我们合适的工具,比如grep,bzip2,wc,awk,sed等。是单线程的,只能使用一个CPU内核。

借用漫画人物卡曼的话“这些内核我怎么用”?

为了让Linux命令使用所有的CPU内核,我们需要使用GNU Parallel命令,这使得我们所有的CPU内核在一台机器上做神奇的减图操作。当然,这也依赖于很少使用的- pipes参数(也称为- spread stdin)。这样你的负载就会平均分配到每个CPU上,真的。

BZIP2

Bzip2是比gzip更好的压缩工具,但是非常慢!不用麻烦了,我们有办法解决这个问题。

以前的做法:

catbigfile . bin | bzip2-bestcompensedfile . bz2现在是这样的:

catbigfile . bin | parallel-pipe-recent ' '-kbzip2-bestcompensedfile . bz2特别是对于bzip2,GNU并行在多核CPU上超级快。不小心就完了。

GREP

如果您有一个非常大的文本文件,您可能以前是这样的:

现在你可以这样做了:

catbigfile . txt | parallel-pipe grep ' pattern '或类似的内容:

catbigfile . txt | parallel-block 10M-pipe grep ' pattern ',第二种用法使用block 10M参数,这意味着每个内核处理1000万行,——。您可以使用此参数来调整每个CPU内核处理多少行数据。

AWK

下面是一个使用awk命令计算非常大的数据文件的例子。

一般用法:

catrand20m . txt | awk ' { s=$ 1 } end { prints } '现在是这样的:

catrand20m . txt | parallel-pipe awk ' { s= $ 1 } end { prints } ' | awk ' { s=$ 1 } end { prints } '有点复杂:parallel命令中的pipe参数将cat输出分成几个块,分派给awk call,形成许多子计算操作,这些子计算通过第二个管道输入同一个awk命令,从而输出最终结果。第一个awk有三个反斜杠,这是GNU parallel调用awk所必需的。

WC

想尽快算出一个文件的行数?

传统做法:

现在你应该这样做:

catbigfile . txt | parallel-pipe WC-l | awk ' { s=$ 1 } end { prints } '非常聪明。首先使用并行命令“mapping”进行大量的wc -l调用形成子计算,最后通过管道发送到awk进行汇总。

SED

你想用sed命令在一个巨大的文件中做大量的替换操作吗?

一般惯例:

Seds^old^new^gbigfile.txt现在你可以:

catbigfile . txt | parallel-pipes eds old new g…然后您可以使用pipes将输出存储在指定的文件中。

文章“如何使用多核CPU加速你的Linux命令”的内容就这么多了。谢谢大家看!希望分享的内容对大家有帮助,更多相关知识。欢迎关注桂哥网络!


上一篇 下一篇
最新文章

如何提高云服务器的安全系数

香港独立IP空间有什么优势

香港空间影响百度收录吗

为啥要租用美国VPS

VPS的缺点有哪些

香港vps作用在哪里

VPS的优点有哪些

外贸网站为啥选择美国vps

VPS能建多少个网站

VPS要如何选择位置

相关文章

虚拟化与云计算的区别

组网技术跨域网络设计

降低美国cn2独立服务器的租用成本的方法

新网站要害词优要尽量避免行业同质化

linux查看端口占用情况的方法

服务器Linux系统如何过程管理

计算游戏服务器的最高同时在线玩家人数要考虑哪些问题

应用云主机的优点

香港cn2的vps为啥会卡顿

无服务器计算的风险有哪些

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!