Windows 操作系统上的软实时 - 需要考虑什么?

发布于 2024-12-05 23:17:31 字数 342 浏览 0 评论 0原文

当我们在Windows上构建软实时应用程序时,我们应该考虑什么(软件和硬件):每XXX毫秒发生一次并且应该在YYY毫秒内完成的任务。 (尽管错过截止日期的后果很糟糕,但应用程序仍然可以从错过的截止日期中恢复 - 因此是“软”实时)。

我已经想到了几个问题: 是否有应该更改、查看的注册表设置? 使用外置显卡比板载显卡更好吗?

预期答案示例: 如果您使用 TCP,您应该阅读(并禁用)Nagle 算法,因为它会延迟数据包发送。

(这也许可以在社区维基中转出)

What consideration should we have (both software and hardware) when we build a soft-realtime application on windows : a task that occurs every XXX milliseconds and that should be completed within YYY milliseconds. (Altough consequences of missing a deadline are bad, the application can still recover from missed deadline - hence the "soft" realtime).

A few questions that already comes to my mind:
Are there registry settings that should be changed, looked at?
Is it better to use external graphic card instead of onboard video?

Example expected answer:
You should read on (and disable) Nagle Algorithm if you use TCP as it can delay packet sending.

(This could maybe be turned in community wiki)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

GRAY°灰色天空 2024-12-12 23:17:31

考虑使用 多媒体类调度程序服务

来自文档

多媒体类调度程序服务 (MMCSS) 支持多媒体
应用程序,以确保其时间敏感的处理接收
优先访问CPU资源。该服务支持多媒体
应用程序在不否认的情况下尽可能多地利用 CPU
将 CPU 资源分配给优先级较低的应用程序

另一个可用的选项是调整 线程优先级,但您需要非常小心,不要对此过于激进。

Consider using Multimedia Class Scheduler Service

From the doc

The Multimedia Class Scheduler service (MMCSS) enables multimedia
applications to ensure that their time-sensitive processing receives
prioritized access to CPU resources. This service enables multimedia
applications to utilize as much of the CPU as possible without denying
CPU resources to lower-priority applications

Another option availale to you is to adjust your thread priorities but you need to be very careful not to get to aggressive with this.

夏雨凉 2024-12-12 23:17:31

从硬件角度来看,这会在服务器级设备上运行吗?如果是这样,则适用通常的步骤。禁用超线程、睿频加速和 CPU C 状态。在关键进程上实现一定程度的 CPU 亲和性。

Hardware-wise, will this be running on server-class equipment? If so, the usual steps apply. Disable hyperthreading, turbo boost, and CPU C-states. Implement some level of CPU-affinity on your critical processes.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文