当我们在Windows上构建软实时应用程序时,我们应该考虑什么(软件和硬件):每XXX毫秒发生一次任务,应该在YYY毫秒内完成。 (错过截止日期的后果很糟糕,应用程序仍然可以从错过的截止日期恢复 - 因此“软”实时)。
我已经想到了一些问题: 是否有应该更改的注册表设置,看看? 使用外部显卡而不是板载视频会更好吗?
预期答案示例: 如果使用TCP,则应该读取(并禁用)Nagle Algorithm,因为它可以延迟数据包发送。
(这可以在社区维基中转换)
答案 0 :(得分:1)
硬件方面,这将在服务器级设备上运行吗?如果是这样,通常的步骤适用。禁用超线程,turbo boost和CPU C状态。在关键进程上实现某种程度的CPU亲和性。
答案 1 :(得分:1)
考虑使用Multimedia Class Scheduler Service
来自文档
多媒体课程安排程序服务(MMCSS)支持多媒体 应用程序,以确保他们的时间敏感处理接收 优先访问CPU资源。此服务支持多媒体 应用程序尽可能多地利用CPU而不否认 优先级较低的应用程序的CPU资源
另一个可供选择的选项是调整你的thread priorities,但你需要非常小心,不要对此采取激进措施。