我正在将一个应用程序移植到 Windows,这是一个非常繁重的数据处理后台应用程序,可以对巨大的数据集(数百 GB)进行推理。
我注意到,在 Windows 上,我的应用程序努力保持一致的 CPU 使用率,而在 MacOs 上,我所要做的就是防止它进入睡眠状态,即使我将进程和线程优先级都设置为“实时”,使用 win32 也是如此调度程序在某个时候降低了他们的优先级(我会说很容易),
我知道在一个进程上锁定太多 cpu 会降低整个计算机的速度,但我基本上不在乎(或者至少想测试它)。
该应用程序的一个示例用法是,用户将数据转储到其中并让它通宵工作,而发生这种情况时,我想确保计算机正在为其提供全部功能。
尝试将进程/线程优先级设置为实时/最高