我有一个复杂的脚本(脚本只是示例,它可能是解压缩命令等,而在另一终端上是不同的命令;它们没有连接)和两个CPU。我可以在两个CPU不同的终端上运行两个不同的进程(或命令等)吗?(同时)可以吗?是否可以在每个终端中指定一个特定的处理器进行处理?
您甚至可以在带有“ taskset”的同一终端上运行2个或更多命令
从手册页(http://linuxcommand.org/man_pages/taskset1.html):任务集用于设置或检索给定PID的运行过程的CPU亲和力,或使用给定的CPU亲和力启动新的COMMAND -ity。CPU亲和力是一个调度程序属性,可将进程“绑定”到系统上一组给定的CPU。Linux调度程序将遵循给定的CPU亲和力,并且该进程将不会在任何其他CPU上运行。请注意,Linux调度程序还支持自然的CPU亲和力:出于性能原因,调度程序会尝试将进程尽可能长时间地保持在同一CPU上。因此,强制特定的CPU亲和力仅在某些应用程序中有用。
@eddiem已经共享了有关如何安装任务集的链接(http://xmodulo.com/run-program-process-specific-cpu-cores-linux.html),该链接还说明了如何运行任务集
简而言之:$ taskset 0x1 tar -xzvf test.tar.gz
这将发送tar命令以在CPU 0上运行
如果您想使用不同的CPU在同一终端中运行多个命令/脚本,那么我认为您可以将它们发送到后台,并在末尾附加“&”,例如
$ taskset 0x1 tar -xzvf test.tar.gz&
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句