我需要使该过程尽可能实时运行。
所有通信都是通过共享内存完成的 - 内存映射文件 - 根本没有系统调用 - 它在共享内存上使用忙等待。
该进程以实时优先级运行,并且所有内存都被锁定mlockall(MCL_CURRENT|MCL_FUTURE)
,成功并且进程有足够ulimits
的内存锁定所有内存。
当我在它上面运行它时,perf stat -p PID
我仍然会得到一些轻微的页面错误。
我用进程亲和力和没有进程亲和力对此进行了测试。
问题:
是否有可能完全消除它们——即使是轻微的页面错误?