几年前,在Windows环境下,我做了一些测试,让CPU计算密集型+内存访问密集型+I/O访问密集型的应用程序运行多个实例。我开发了两个版本:一个在多处理下运行,另一个在多线程下运行。
我发现多处理的性能要好得多。我在其他地方读过(但我不记得那个网站了)。
其中说明原因是在多线程下,它们在为单个内存管道和 I/O 管道“战斗”,这使得与多处理相比性能更差
但是,我再也找不到那篇文章了。我想知道,直到今天,以下是否仍然成立?
在 Windows 中,让算法代码在多处理下运行,性能很有可能优于多线程。