gpt4 book ai didi

c++ - 将核心分配给流程的好处

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:50:57 25 4
gpt4 key购买 nike

引用whole core to process ,我想知道真正的好处。例如,我有一个多进程 Qt C++ 应用程序,比如说有 7 个进程,包括大量的科学计算和可视化。该应用程序在最新的 Ubuntu 和 8 核 CPU(4 个真实和 4 个虚拟)上运行。提示:几乎所有进程都是单线程的。在这种情况下,将单个进程分配给专用核心会带来任何性能优势吗?理想情况下,我会将所有进程分配给专用核心,但我有一个进程是多线程的并驱动一个设备。

最佳答案

是的,这是有好处的,但前提是您还要让其他进程远离您的专用内核。问题是你真的需要它,或者换句话说,你会觉得它在你的情况下吗?
内核在将进程分配给核心方面并不差,但它正在尝试负载平衡并且它不知道你的优先级,所以有时你不得不强制它。
好处是您的进程将较少受到缓存未命中和上下文切换的影响。但是如果你做很多系统调用,比如说 IO,你就会有上下文切换,我不确定你会觉得有什么不同。
专用核心通常用于您不希望被其他任何东西打断的时间关键线程。并且通常仅在 shm 和/或非内核 IO 上进行通信。

关于c++ - 将核心分配给流程的好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31533772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com