IntervalZero RTX64 4.x 帮助文档

⌘K
  1. 主页
  2. 文档
  3. IntervalZero RTX64 4.x 帮助...
  4. RTX64 安装与激活
  5. 优化子系统部署

优化子系统部署

通常情况下,Runtime 环境仅提供功能,不一定要进行性能优化。下面表格列出了部署 RTX64 运行时建议的 RTSS 子系统配置。可以使用 RTX64 控制面板,或使用本机(或托管)代码框架,以编程方式配置这些设置项,从而提高子系统和应用程序性能。

对于运行 Windows 10 或 Windows 11 的系统,建议使用其 LTSC(长期服务通道)版本。参考 Support for Windows 10 Updates(RTX64 对 Windows 10 的支持)页面,了解 Windows 10 对 RTX64 的支持描述。参考 Support for Windows 11 Updates(RTX64 对 Windows 11 的支持)页面,了解 Windows 11 对 RTX64 的支持描述。

RTX Subsystem(子系统)配置选项

改变内部系统行为

控制面板设置推荐的值
Change the HAL Timer Period
更改 HAL 定时器周期
应用程序的定时器周期必须始终大于 HAL 定时器周期设置。默认 HAL 设置为 100。

注意:将 HAL 定时器周期设置为低于 20 微秒时要特别小心。如果 HAL 定时器周期设置得太短,可能会对性能产生负面影响或导致系统挂起。建议在要部署的所有系统上全面测试实时应用的定时器周期,以验证硬件是否有能力完成程序的编译和运行。
Free the Stack on TerminateThread calls
调用 TerminateThread 时释放堆栈
在 TerminateThread 调用时释放堆栈
Use priority inversion
使用优先级反转
使用优先级反转(默认)
Optimize performance with Intel® Resource Director Technology (RDT)
使用 Intel RDT 优化性能


注意:此功能依赖于硬件。
优化性能(已启用)
缓存分配技术(CAT:Cache Allocation Technology)模式:
o 平坦性能模式(Flat performance mode)(默认):所有 RTSS 逻辑处理器都同等配置所有 RTSS L3/L2 缓存;
内存带宽分配(MBA:Memory Bandwidth Allocation)模式:
o 平坦性能模式(Flat performance mode)(默认):所有 RTSS 内核均配置为最小内存延迟。

更改内存分配行为

更多信息,请参阅 RTX64 控制面板中的 Managing Memory(管理内存)部分。

控制面板设置推荐的值
Manage Subsystem and application memory behavior:
管理子系统和应用程序内存行为:

● Use local memory (deterministic)
使用本地内存(确定性)
● Use Windows memory (non-deterministic)
使用 Windows 内存(非确定性)
Use local memory (deterministic)
Zero memory on allocation
分配 0 内存
Disabled
禁用
Process memory allocation space / Minimum size for external MSpace (kilobytes)
进程内存分配空间/外部MSpace 的最小值(千字节)
基于应用程序的本地内存使用情况。部署之前,可以调用 RtQueryProcessMSpace 查询本地内存使用情况。
Process memory allocation space / Auto expand MSpaces
进程内存分配空间/自动扩展 MSpaces
Disabled
禁用
Process memory allocation space / Auto shrink MSpaces
进程内存分配空间/自动回收 MSpaces
Disabled
禁用
System process memory allocation space / Minimum size for internal MSpace (kilobytes)
系统进程内存分配空间/内部 MSpace 的最小值(千字节)
基于应用程序的本地内存使用情况。部署之前,可以调用 RtQueryProcessMSpace 查询本地内存使用情况。
System process memory allocation space / Minimum size for external MSpace (kilobytes)
系统进程内存分配空间/外部 MSpace 的最小值(千字节)
基于应用程序的本地内存使用情况。部署之前,可以调用 RtQueryProcessMSpace 查询本地内存使用情况。
System process memory allocation space / Commit at Subsystem startup
系统进程内存分配空间/子系统启动时提交
Disabled
禁用
System process memory allocation space / Auto expand MSpaces
系统进程内存分配空间/自动扩展 MSpaces
Disabled
禁用

重要提醒!Auto expand MSpaces 禁用时,需要为整个系统中内部和外部资源配置子系统的内存用量。包括网络组件(NAL 和 RT-TCP/IP 栈)以及 RTX64 运行时提供的其他工具和实用程序。如果子系统没有足够的可用内存,实时进程将无法运行或无法创建 IPC 对象,并返回ERROR_NOT_ENOUGH_MEMORY
System process memory allocation space / Auto shrink MSpaces
系统进程内存分配空间/自动回收 MSpaces
Disabled
禁用
Network memory allocation space / Network Abstraction Layer (NAL) memory allocation space / Minimum size for MSpace (kilobytes)
网络内存分配空间/网络抽象层 (NAL) 内存分配空间/MSpace 的最小值(千字节)
基于 NAL 的本地内存使用情况,这取决于启用的接口数量。
Network memory allocation space / Network Abstraction Layer (NAL) memory allocation space / Commit at Subsystem startup
网络内存分配空间/网络抽象层(NAL)内存分配空间/子系统启动时提交
Disabled
禁用
Network memory allocation space / Network Abstraction Layer (NAL) memory allocation space / Auto expand MSpaces
网络内存分配空间/网络抽象层(NAL)内存分配空间/自动扩展 MSpaces
Disabled
禁用
TCP/IP 堆栈内存分配空间/网络抽象层 (NAL) 内存分配空间/MSpace 的最小值(千字节)
TCP/IP Stack memory allocation space / Network Abstraction Layer (NAL) memory allocation space / Minimum size for MSpace (kilobytes)
TCP/IP 栈进程外部 MSpace 的最小值。该值需要足够大才能支持 RT-TCP/IP 栈堆分配。

如果您将 TCP/IP 栈与虚拟网络结合使用,则应使用以下公式来确定需要分配的内存量:

Minimum=1.5*(([50]_k+(8_k*(numEnabledInterfaces-1)))+([150]_k*((numEnabledInterfaces+1)/2))+(400*numSockets))

在这个算式中:
● 第一个接口为50k;每个附加接口8k
● 150k 是一个连接的大小;(interfaces+1)/2 的数量旨在完善总连接大小的估计
● 400 是 socket 的大小
● 将整个值乘以 1.5,再次四舍五入估算值
TCP/IP Stack memory allocation space / Network Abstraction Layer (NAL) memory allocation space / MSpace memory allocated to the TCP/IP Stack heap (kilobytes, not including memory allocated by device drivers at startup)
TCP/IP 堆栈内存分配空间/网络抽象层 (NAL) 内存分配空间/分配给 TCP/IP 堆栈堆的 MSpace 内存(千字节,不包括设备驱动程序在启动时分配的内存)
3072 KB

注意:TCP/IP 栈必须确保在启动时分配所有必要的内存。该分配的内存应该足够大,以包含所有发送和接收缓冲区。
TCP/IP Stack memory allocation space / Network Abstraction Layer (NAL) memory allocation space / Auto expand MSpaces
TCP/IP 堆栈内存分配空间 / 网络抽象层 (NAL) 内存分配空间 / 自动扩展 MSpaces
Disabled
禁用

更改监控设置

控制面板设置推荐的值
Enable instrumentation within the subsystem for monitoring real-time applications
在子系统内启用测试以监控实时应用程序
禁用以获得最低延迟

配置看门狗定时器设置

控制面板设置推荐的值
Monitor for runaway threads/Timeout
监控失控线程/超时
禁用以提升性能

配置异常支持

控制面板设置推荐的值
Choose a method for treating a faulting process
选择处理故障进程的方法
Terminate Faulting Processes (default)
终止故障进程(默认)
Choose a method for each exception type
为每种异常类型选择一种方法
Structured Exception Handling (default)
结构化异常处理(默认)

控制电源管理设置

控制面板设置推荐的值
Enable Windows idle detection
启用 Windows 空闲检测
Not selected(未选择)

注意:为了消除 RTSS 定时器响应延迟带来的抖动,建议禁用 Windows 空闲检测。所以,当子系统运行时,可能会在 Windows 任务管理器中看到 100% CPU 使用率。这种类型的 100% CPU 使用率,对 Windows 负载平衡不会产生任何影响。
Windows Energy/Performance Bias
Windows 节能/性能偏差
Override Windows (覆盖 Windows 设置)

注意:为了在笔记本电脑上运行 RTX64 时获得最佳性能,建议在 Windows 设备管理器中将显示适配器转换为 Microsoft 基本显示适配器。如果没有转换,则可能会遇到延迟。

配置远程调试

控制面板设置推荐的值
Allow remote debugging connections on this computer
允许此计算机上的远程调试连接
Not selected(未选择)

配置实时应用程序输出

控制面板设置推荐的值
Display real-time process output in console windows
在控制台窗口中显示实时进程输出
Not selected(未选择)
Display a separate console window for each real-time process
为每个实时进程显示单独的控制台窗口
Not selected(未选择)
Set the buffer size (lines)
设置缓冲区大小(行)
1000(默认值)
Log real-time process output
记录实时过程输出
Not selected(未选择)