Ma *_*a Y 5 python windows bash
我想在我的笔记本电脑上同时运行两个 python 脚本,而不会降低它们的计算速度。
我搜索并看到了这个问题,说我们应该使用bash文件。我已经搜索过,但我不明白我应该做什么以及如何使用这种称为bash.
python script1.py &
python script2.py &
Run Code Online (Sandbox Code Playgroud)
我对此缺乏经验,我需要您的专业建议。我不明白如何做到这一点,在哪里以及如何做到这一点。我正在使用 Windows 64 位。
最好的事物
PS: The answer I checked the mark is a way to run in parallel two tasks, but it does not decrease the calculation time for two parallel tasks at all.
如果您可以在 Windows 上的 Git Bash(参考)下安装GNU Parallel,那么您可以通过以下方式在不同的 CPU 上运行这两个脚本:
\n\n\xe2\x96\xb6 (cat <<EOF) | parallel --jobs 2\npython script1.py\npython script2.py\nEOF\nRun Code Online (Sandbox Code Playgroud)\n\n并行手册页中的注释:
\n\n\xe2\x96\xb6 (cat <<EOF) | parallel --jobs 2\npython script1.py\npython script2.py\nEOF\nRun Code Online (Sandbox Code Playgroud)\n\n请注意,该问题已更新为指出并行化不会缩短计算时间,这通常不是正确的说法。
\n\n虽然并行化的好处高度依赖于机器和工作负载,但并行化显着提高了多核计算机上受 CPU 限制的进程的处理时间。
\n\n以下是在我的四核 MacBook Pro 上使用 Spigot 算法(代码)计算 50,000 位 Pi 的演示:
\n\n单任务(52秒):
\n\n\xe2\x96\xb6 time python3 spigot.py\n...\npython3 spigot.py 52.73s user 0.32s system 98% cpu 53.857 total\nRun Code Online (Sandbox Code Playgroud)\n\n在 GNU 并行中运行相同的计算两次(74 秒):
\n\n\xe2\x96\xb6 (cat <<EOF) | time parallel --jobs 2 \npython3 spigot.py \npython3 spigot.py \nEOF \n...\nparallel --jobs 2 74.19s user 0.48s system 196% cpu 37.923 total\nRun Code Online (Sandbox Code Playgroud)\n\n当然,这是在一个忙于运行操作系统和所有其他应用程序的系统上,因此它不会将处理时间减半,但它仍然是一个很大的改进。
\n\n另请参阅相关的 Stack Overflow 答案。
\n| 归档时间: |
|
| 查看次数: |
1493 次 |
| 最近记录: |