#include

#include "ipp.h"

#define PRINT_INFO(feature, text) printf(" %-30s= ", #feature); \

printf("%c\t%c\t", (cpuFeatures & feature) ? 'Y' : 'N', (enabledFeatures & feature) ? 'Y' : 'N'); \

printf( #text "\n")

int main(int argc, char* argv[])

{

const IppLibraryVersion *libVersion;

IppStatus status;

Ipp64u cpuFeatures, enabledFeatures;

ippInit(); /* Initialize Intel(R) IPP library */

libVersion = ippGetLibVersion();/* Get Intel(R) IPP library version info */

printf("%s %s\n", libVersion->Name, libVersion->Version);

status = ippGetCpuFeatures(&cpuFeatures, 0);/* Get CPU features and features enabled with selected library level */

if (ippStsNoErr != status) return status;

enabledFeatures = ippGetEnabledCpuFeatures();

printf("Features supported: by CPU\tby Intel(R) IPP\n");

printf("------------------------------------------------\n");

PRINT_INFO(ippCPUID_MMX, Intel(R) Architecture MMX technology supported);

PRINT_INFO(ippCPUID_SSE, Intel(R) Streaming SIMD Extensions);

PRINT_INFO(ippCPUID_SSE2, Intel(R) Streaming SIMD Extensions 2);

PRINT_INFO(ippCPUID_SSE3, Intel(R) Streaming SIMD Extensions 3);

PRINT_INFO(ippCPUID_SSSE3, Supplemental Streaming SIMD Extensions 3);

PRINT_INFO(ippCPUID_MOVBE, Intel(R) MOVBE instruction);

PRINT_INFO(ippCPUID_SSE41, Intel(R) Streaming SIMD Extensions 4.1);

PRINT_INFO(ippCPUID_SSE42, Intel(R) Streaming SIMD Extensions 4.2);

PRINT_INFO(ippCPUID_AVX, Intel(R) Advanced Vector Extensions instruction set);

PRINT_INFO(ippAVX_ENABLEDBYOS, Intel(R) Advanced Vector Extensions instruction set is supported by OS);

PRINT_INFO(ippCPUID_AES, Intel(R) AES New Instructions);

PRINT_INFO(ippCPUID_CLMUL, Intel(R) CLMUL instruction);

PRINT_INFO(ippCPUID_RDRAND, Intel(R) RDRAND instruction);

PRINT_INFO(ippCPUID_F16C, Intel(R) F16C new instructions);

PRINT_INFO(ippCPUID_AVX2, Intel(R) Advanced Vector Extensions 2 instruction set);

PRINT_INFO(ippCPUID_ADCOX, Intel(R) ADOX/ADCX new instructions);

PRINT_INFO(ippCPUID_RDSEED, Intel(R) RDSEED instruction);

PRINT_INFO(ippCPUID_PREFETCHW, Intel(R) PREFETCHW instruction);

PRINT_INFO(ippCPUID_SHA, Intel(R) SHA new instructions);

PRINT_INFO(ippCPUID_AVX512F, Intel(R) Advanced Vector Extensions 512 Foundation instruction set);

PRINT_INFO(ippCPUID_AVX512CD, Intel(R) Advanced Vector Extensions 512 CD instruction set);

PRINT_INFO(ippCPUID_AVX512ER, Intel(R) Advanced Vector Extensions 512 ER instruction set);

PRINT_INFO(ippCPUID_AVX512PF, Intel(R) Advanced Vector Extensions 512 PF instruction set);

PRINT_INFO(ippCPUID_AVX512BW, Intel(R) Advanced Vector Extensions 512 BW instruction set);

PRINT_INFO(ippCPUID_AVX512VL, Intel(R) Advanced Vector Extensions 512 VL instruction set);

PRINT_INFO(ippCPUID_AVX512VBMI, Intel(R) Advanced Vector Extensions 512 Bit Manipulation instructions);

PRINT_INFO(ippCPUID_MPX, Intel(R) Memory Protection Extensions);

PRINT_INFO(ippCPUID_AVX512_4FMADDPS, Intel(R) Advanced Vector Extensions 512 DL floating-point single precision);

PRINT_INFO(ippCPUID_AVX512_4VNNIW, Intel(R) Advanced Vector Extensions 512 DL enhanced word variable precision);

PRINT_INFO(ippCPUID_KNC, Intel(R) Xeon Phi(TM) Coprocessor);

PRINT_INFO(ippCPUID_AVX512IFMA, Intel(R) Advanced Vector Extensions 512 IFMA (PMADD52) instruction set);

PRINT_INFO(ippAVX512_ENABLEDBYOS, Intel(R) Advanced Vector Extensions 512 is supported by OS);

return 0;

}

linux ipp,Get Started with Intel® Integrated Performance Primitives相关推荐

  1. 如何下载 Intel Integrated Performance Primitives –intel IPP

    如何下载 Intel Integrated Performance Primitives –intel IPP 进入http://downloadcenter.intel.com/Default.as ...

  2. Intel的ipp库(Integrated Performance Primitives)

    IPP库包含了许多底层优化的函数.如果已经安装了IPP库,opencv在运行时也会自动调用.NVIDIA公司针对GPU开发了的GPU加速的图像.视频.信号处理库NPP(NVIDIA Performan ...

  3. 第1篇 初识IPP(Integrated Performance Primitives)

    因为工作需要,开始学习IPP 学过IPP的人都知道,IPP中文资料少之又少,只能抱着官网发布的英文手册死磕, 现在边学边用快一年了,把自己懂的皮毛分享出来,献给有需要的人 IPP概述: https:/ ...

  4. linux安装 icc编译器,安装 Intel Compiler (ifort icc icpc)

    在下载目录下解压 heqin@heqin-dell:~/Downloads$ tar zxvf parallel_studio_xe_2017_update7.tgz 进入解压后的文件夹 heqin@ ...

  5. Intel.VTune.Performance.Analyzer.v8.0.014 分析软件

    为什么80%的码农都做不了架构师?>>>    Intel.VTune.Performance.Analyzer.v8.0.014 分析软件 Introduction_to_Ther ...

  6. Linux(Ubuntu)下WiFi网卡(intel ax201)驱动与Nvidia显卡驱动冲突的解决办法

    Linux(Ubuntu)下WiFi网卡(intel ax201)驱动与Nvidia显卡驱动冲突的解决办法 环境: 系统 Ubuntu 22.04 LTS 网卡ax201(微星b660m迫击炮wifi ...

  7. linux下更新硬盘FW,Intel SSD硬盘 FW 更新方法

    Download and copy/unzip Intel SSD configuration manager to your Linux system. Copy and rename FW ima ...

  8. linux 音频驱动的流程,Intel平台下Linux音频驱动流程分析

    [软件框架] 在对要做的事情一无所知的时候,从全局看看系统的拓扑图对我们认识新事物有很大的帮助.Audio 部分的驱动程序框架如下图所示: 这幅图明显地分为 3 级. 上方蓝色系的 ALSA Kern ...

  9. Linux的pcie模拟网卡,Intel英特尔PCIe万兆网卡虚拟功能驱动4.11.1版For Linux(2021年3月5日发布)...

    驱动说明 Intel英特尔PCIe万兆网卡虚拟功能驱动4.11.1版For Linux(2021年3月5日发布) 英特尔万兆网卡Linux ixgbe最新驱动,支持2.6.18~5.11.2内核版本, ...

  10. linux内核 gpu,科学网—Intel GPU虚拟化方案 KVMGT 正式进入Linux 内核 4.10 - 戚正伟的博文...

    Linus Torvalds 在内核邮件列表上宣布释出 Linux 4.10.Linux 4.10 的主要特性包括:加入了 GPU虚拟化方案 Intel GVT-g for KVM (a.k.a. K ...

最新文章

  1. [python教程入门学习]python学习笔记(CMD执行文件并传入参数)
  2. android 获取应用的资源id和uri
  3. 图论 —— 环与块 —— 负权环
  4. 最新搜索引擎网站提交登录入口和收录入口大全
  5. Matlab与Access数据库的连接
  6. 门店销售系统开发实例
  7. ADC RF中频采样 Vivado Verilog 联合 matlab 进行带通滤波器设计与仿真
  8. 真人发音计算机在线用,文字转语音真人发声在线怎么转换?这种操作最简单
  9. java中extend与implement的区别
  10. vue轻量级后台管理系统基础模板
  11. 发布一个太空大战小游戏
  12. 腾讯云的服务器解析域名步骤
  13. springBoot的mcv(视图)控制
  14. Docker buil提示https://registry-1.docker.io/v2/: read tcp 10.221->:443: read: connection reset by peer
  15. 如何获取layui表格选中行的数据
  16. 用python画小猪佩奇代码_用python画个小猪佩奇(turtle示例源码)
  17. php图片特效,css3实现图片头像扫光高亮效果
  18. 中国古代地方官制------地方行政机构之沿革简释
  19. 测评:借助6款强大的工具阻止内部攻击
  20. Appium如何点击屏幕中央(iOS和android)

热门文章

  1. Unity3D基础数学向量
  2. 半同步/半异步模式,半同步半反应堆reactor模式
  3. YOLO v3源码详解
  4. 怀旧小霸王游戏机网页源码
  5. 二元logistic回归、ROC曲线及cutoff值
  6. cherry键盘使用备忘
  7. 如何修改psd文件?psd样式怎么修改文字?
  8. 百度地图改变定位图标
  9. 如何找出当前活动桌面背景图像的位置/路径(Ubuntu 18.04,GNOME)?
  10. 密码:大写字母 小写字母 数字 特殊字符(四种里至少三种)