如何在一台机器上使用多个版本IPP??

如何在一台机器上使用多个版本IPP??,第1张

最近在用IPP实现AES的加密模块,为了对比几个版本IPP在加密模块上的性能,

要在同一台机器上装几个版本的IPP。

并在运行同一个执行文件的时候链接不同版本的IPP库。

为了实现这种做法,我们需要在编译的时候链接IPP的动态库。

在运行执行文件的时候,修改链接库的目录。

下面举一个例子,系统是linux,Windows应该同理。

假设源代码文件a.cpp,编译生成的执行文件为a_exec,另外IPP有两个版本:ipp版本A,ipp版本B。

1)如果版本A和版本B的大版本号一致,例如都是6.1.***,那么可以不用重新编译

编译的命令为:

g++ -o a_exec a.cpp -I /ipp版本A or B的安装目录/include, ipp_aes.cpp -L /ipp版本A or B的安装目录/sharedlib -

lpthread -lippcpem64t -lguide

生成的执行文件 a_exec 在执行的时候可以选择链接版本A的库或是版本B的库。

执行命令为:

# export export LD_LIBRARY_PATH=/ipp版本A/sharedlib

# ./a_exec

结果为使用IPP版本A的结果

# export export LD_LIBRARY_PATH=/ipp版本B/sharedlib

# ./a_exec

结果为使用IPP版本B的结果

2)如果版本A和版本B的大版本号不一样,比如A为6.1.***,B为5.*.**,文件需要分别编译:

使用版本A:

# g++ -o a_exec a.cpp -I /ipp版本A的安装目录/include, ipp_aes.cpp -L /ipp版本A的安装目录/sharedlib -lpthread -lippcpem64t -lguide

# export export LD_LIBRARY_PATH=/ipp版本A/sharedlib

# ./a_exec

使用版本B:

# g++ -o a_exec a.cpp -I /ipp版本B的安装目录/include, ipp_aes.cpp -L /ipp版本B的安装目录/sharedlib -lpthread -lippcpem64t -lguide

# export export LD_LIBRARY_PATH=/ipp版本B/sharedlib

# ./a_exec

这样就可以分别得到使用不同IPP库的性能数据了。

如果要在另外一台机器上运行这个执行文件,

只需把执行文件,以及相应IPP版本的动态库拷贝到这台机器上,并在执行前运行:

# export export LD_LIBRARY_PATH=ipp库所在的目录

就可以看到这个执行文件在这台机器上的性能数据了。

OK,就是这样。

P.S. 最新版的IPP性能还真是不错。

P.P.S.希望我也能跟duofeng同学一样把工作里遇到的方法记录下来,哪怕只是很小很小的一点。

P.P.P.S.这次测试的数据以及编写的代码应该会在不久后就可以发布。

常在一个论坛玩的,上面有许多关于这方面的帖哦,也有很多热心的朋友。相信那里会有人帮你解答。请百度7GG,相信你会喜欢那里

最简单的就是ping ip了,也是最常用的,比如 ping 192.168.1.1 另外,还有-c\-s\-W选项 ping -c 4 192.168.1.1表示ping4次 ping -s 2048 192.168.1.1表示每次发送2K的ping测试包 至于-W是用于设置每次ping的间隔时间,以秒为单位 以上就是Linux...


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/385440.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存