Xe GT 频率管理

此组件负责原始 GT 频率管理,包括 sysfs API。

在底层,Xe 启用 GuC SLPC 自动化频率管理。 然后允许 GuC 向 PCODE 请求由该组件选择的最小值和最大值之间的任何频率。 此外,重要的是要强调 PCODE 是实际运行频率的最终决策者,它基于散热和其他运行条件。

Xe 的 Freq 提供一个用于频率管理的 sysfs API

device/tile#/gt#/freq0/<item>_freq 只读 文件

  • act_freq:由 PCODE 决定的实际已解析频率。

  • cur_freq:GuC PC 当前向 PCODE 请求的频率。

  • rpn_freq:渲染性能 (RP) N 级别,这是最低级别。

  • rpa_freq:渲染性能 (RP) A 级别,这是可实现的级别。 由 PCODE 在运行时基于多种运行条件计算得出

  • rpe_freq:渲染性能 (RP) E 级别,这是高效级别。 由 PCODE 在运行时基于多种运行条件计算得出

  • rp0_freq:渲染性能 (RP) 0 级别,这是最高级别。

device/tile#/gt#/freq0/<item>_freq 读写 文件

  • min_freq:最小频率请求。

  • max_freq:最大频率请求。

    如果 max <= min,则 freq_min 变为固定频率请求。

内部 API

int xe_gt_freq_init(struct xe_gt *gt)

初始化 Xe Freq 组件

参数

struct xe_gt *gt

Xe GT 对象

说明

需要在 GT Sysfs 和 GuC PC 组件准备就绪后进行初始化。

返回

失败时返回错误值,成功时返回 0。