首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有任何linux命令来加速文件的执行?

是否有任何linux命令来加速文件的执行?
EN

Unix & Linux用户
提问于 2016-10-27 12:40:09
回答 4查看 3.5K关注 0票数 1

我想知道是否有任何linux命令可以更快地执行perl文件?

我使用以下命令检查执行时间:

time ./rspd.pl

产出:

代码语言:javascript
复制
1.003u 0.480s 3:34.90 0.6% 0+0k 56+5520io 0pf+0w

我的一些perl脚本需要很长时间才能执行finishIn,在这种情况下,我可以使用任何其他linux命令来加快执行速度吗?

EN

回答 4

Unix & Linux用户

回答已采纳

发布于 2016-10-27 21:23:24

唯一的答案是不。没有这样的通用命令来加速另一个像perl脚本这样的任意可执行文件。

为了使您的rspd.pl更快,您应该首先知道它正在做什么。为什么这么慢?CPU,RAM,网络还是磁盘I/O?这称为“分析”,例如,请参见https://stackoverflow.com/questions/4371714/how-do-i-profile-my-perl-programs

票数 2
EN

Unix & Linux用户

发布于 2016-10-27 12:57:45

那得看情况。

一般说来,不。你不能这么做。

然而,有时你可以。例如,假设您有一个程序,它对字符串进行一些高级操作,并独立地更改每一行。然后,您可以使用GNU parallel --该程序旨在并行运行程序。

然而,你需要知道你的程序做什么,什么是瓶颈。默认情况下,一些程序将自己划分为较小的子进程,这样就不会得到加速比。一些程序大量使用光盘,因为这是瓶颈,您将得不到任何改进。有些程序有一个逻辑不能用于分割的文件。

GNU并行将文件分成更小的部分,并在每个部分上运行脚本,合并结果。如果您运行类似于awk的操作,它会更改第一列和第二列,这是很好的。当您运行一个将dog更改为N的程序时,这一点也不太好,其中N是到目前为止见过单词dog的次数。

票数 4
EN

Unix & Linux用户

发布于 2016-10-27 12:43:25

不是的。

您所能做的最好是使用一个命令在不同的线程中分发,因此可能是不同的内核,从而使它运行得更快。例如,看看GNU并行

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/319302

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档