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
父主题: 基础函数