CpuFeature
- 设置HMPP支持的指令集:
HmppResult HMPP_SetCpuFeatures (uint64_t cpuFeatures);
- 获取CPU支持的指令集:
HmppResult HMPP_GetCpuFeatures (uint64_t* cpuFeatures);
- 获取HMPP当前支持的指令集:
uint64_t HMPP_GetEnabledCpuFeatures()
参数
参数名 |
描述 |
取值范围 |
输入/输出 |
---|---|---|---|
cpuFeatures |
要设置的HMPP库支持的指令集(SetCpuFeatures)。 |
hmpp_core.h头文件中提供的几种后缀为_FM的宏。 |
输入 |
cpuFeatures |
目标地址,指向地址存放CPU支持指令集标记数(GetCpuFeatures)。 |
非空。 |
输出 |
返回值
HMPP_SetCpuFeatures
- 成功:返回HMPP_STS_NO_ERR。
- 失败:返回错误码HMPP_STS_UNKNOWN_FEATURE。
HMPP_GetCpuFeatures
- 成功:返回HMPP_STS_NO_ERR。
- 失败:返回错误码HMPP_STS_NULL_PTR_ERR。
HMPP_GetEnabledCpuFeatures
- 返回当前HMPP库支持指令集标记数。
错误码
错误码 |
描述 |
---|---|
HMPP_STS_NULL_PTR_ERR |
cpuFeatures指针为空指针。 |
HMPP_STS_UNKNOWN_FEATURE |
要设置的指令集不在支持的几种指令集中。 |
注意
目前只支持NEON_FM(在hmppcore.h中定义)一种模式。
示例
void CpuFeature() { uint64_t cpuFeatures; HmppResult result = HMPP_GetCpuFeatures(&cpuFeatures); printf("%s\n", HMPP_GetStatusString(result)); printf("cpuFeatures = %016x\n", cpuFeatures); result = HMPP_SetCpuFeatures(NEON_FM); printf("%s\n", HMPP_GetStatusString(result)); printf("enabledCpuFeatures = %016x\n", HMPP_GetEnabledCpuFeatures()); }
运行结果:
No Error cpuFeatures = 0000000000000001 No Error enabledCpuFeatures = 0000000000000001
父主题: 基础函数