在并行运行脚本时,打开新的终端选项卡是否使用与打开新窗口相同的系统资源?

在并行运行脚本时,打开新的终端选项卡是否使用与打开新窗口相同的系统资源?

在终端窗口打开新标签页是否等同于在资源上打开新标签页?

我需要并行运行 16 个脚本。我不知道打开标签页还是新终端是最佳做法。我希望获得最大性能,但又不至于耗尽资源到降低性能的程度。

答案1

从资源(我假设是系统资源)的角度来看,它们永远不会完全等同,因为窗口与选项卡不同。对于 16 个窗口或选项卡,它是否会产生任何实际/相关的差异是另一回事。当然,你可以测试。

还有其他节省资源的方法。您还可以运行单个终端,并在后台运行 16 个进程。然而,在节省资源方面,更好的方法是完全避免运行图形服务器。让系统启动到终端并在那里运行进程。这将为您节省数百兆字节的 RAM。

答案2

差异非常小,不太可能对您的使用情况产生影响(假设硬件相对较新),尽管看起来 gnome 终端服务器对选项卡使用的内存比对 windows 的内存略少。这在系统监视器中很容易看到。

四个窗口显示内存使用情况类似于:

4个窗户

四个选项卡显示与此类似的内存使用情况:

4 个标签

答案3

关于窗口/标签使用的资源

直觉地,就像 Elder Geek 在他的回复,标签应该使用更少的内存。

差异并不大,即使是绝对值在今天的计算机中也不大。你应该关心的是在终端打印文本的时间

带数字的示例

让我们来看一个简单的命令:find test。它将打印目录中所有文件的名称test。此目录包含 55483 个文件,总共需要在终端中写入 4935616 个字符。

以下是我使用以下命令测量经过的时间的方法time

time find test
...
**** lot of printed chars
...
real    0m5.017s
user    0m0.175s
sys     0m0.221s

本次测试耗时5.0秒,下面是一些测试结果:

+---------------------------+-------------------------------------------+--------------+
|          Command          |                 remarks                   |   duration   |
+---------------------------+-------------------------------------------+--------------+
| find test                 | terminal                                  | 5.1 seconds  |
| find test                 | terminal (hidden behind another window)   | 5.5 seconds  |
| find test                 | terminal (minimized)                      | 5.5 seconds  |
| find test > /tmp/test.txt | output redirected to a file               | 0.1 seconds  |
| find test                 | text console                              | > 10 seconds |
| find test                 | text console, switched to another console | 0.3 seconds  |
+---------------------------+-------------------------------------------+--------------+

我不会再做任何测试,我想你已经明白了。

结论

脚本的性能还取决于它们向终端写入多少内容。

相关内容