社区
英特尔边缘计算技术
帖子详情
普通P4处理器用MKL效果很差,是不是CPU不支持指令集的原因?
oxromantic
2006-12-18 03:52:39
没用MKL时耗时3.8s
用了MKL耗时100+s
...全文
875
18
打赏
收藏
普通P4处理器用MKL效果很差,是不是CPU不支持指令集的原因?
没用MKL时耗时3.8s 用了MKL耗时100+s
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
housisong
2006-12-28
打赏
举报
回复
pow(x,y)的实现的时候,有一个两难的选择,就是要不要特殊处理y是整数的情况;
因为y是整数的时候就可以用一个快速算法完成(一般用2分法);
如果y有小数部分,就会采用其他方案,(不考虑正负号)一般的实现是:exp(ln(x)*y) ,这个就比较慢了
有的库设计者可能会要求调用者自己决定调用intpow或pow函数,从而得到最快的速度;
有的库的实现可能就把这两个函数都实现在pow里,对调用者降低要求
茶禅如水
2006-12-28
打赏
举报
回复
可以参考 intel c编译器关于openmp帮助,因为mkl是用openmp实现的,应该有关系
茶禅如水
2006-12-28
打赏
举报
回复
以递增方式不需要选择判断的语句,而你的8,16,32,64,128,256,512,1024,10240,40960的方式计算应该要有if的,如果你用openmp的话,分支语句会降低性能
oxromantic
2006-12-27
打赏
举报
回复
你是说MKL pow 用法有问题还是cpu不支持?
IntelPerLib() ( ) 信誉:100 Blog 2006-12-25 21:58:28 得分: 0
这个结果像是合理的.
赖勇浩
2006-12-27
打赏
举报
回复
今天下午试了这些情况,发现从n值从1到1000递增的方式计算总是好过以8,16,32,64,128,256,512,1024,10240,40960的方式计算。真的很奇怪啊。。。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
有关示意代码能说明这个问题吗? 期望中应该不是这样的...大的数据应该会更好.
-----------
我用vdInvSqrt的时候,发现集成1024个再用vdInvSqrt并没有在较小的n使用的时候好用。。。
IntelPerLib
2006-12-27
打赏
举报
回复
有关示意代码能说明这个问题吗? 期望中应该不是这样的...大的数据应该会更好.
-----------
我用vdInvSqrt的时候,发现集成1024个再用vdInvSqrt并没有在较小的n使用的时候好用。。。
茶禅如水
2006-12-27
打赏
举报
回复
mkl是没有问题的 我的机器是赛扬2.66GHz的 没用mkl的代码最快跑2.2s 单线程
用了 mkl 速度可以到1.4s 而且 符合 小数点后7位精度的要求 (还没有在双核上测试 添加mkl后的代码)
intel的mkl 中几乎每个函数都有相关代码例子的,可以看一下到底怎么用
IntelPerLib
2006-12-27
打赏
举报
回复
CPU是支持的. 指数为2的时候,就不要用MKL 函数了, 没有效率.
-----------------------------------------
你是说MKL pow 用法有问题还是cpu不支持?
PrideRock
2006-12-27
打赏
举报
回复
up
赖勇浩
2006-12-25
打赏
举报
回复
我用vdInvSqrt的时候,发现集成1024个再用vdInvSqrt并没有在较小的n使用的时候好用。。。
IntelPerLib
2006-12-25
打赏
举报
回复
这个结果像是合理的.
oxromantic
2006-12-25
打赏
举报
回复
MKL pow去掉用乘法结果 0: Potential: 686445.957
10: Potential: 280129.985
20: Potential: 206437.945
30: Potential: 170828.518
40: Potential: 147831.460
50: Potential: 133650.139
60: Potential: 122234.989
70: Potential: 114473.868
80: Potential: 106560.989
90: Potential: 99199.081
100: Potential: 93318.977
110: Potential: 89056.673
120: Potential: 85229.771
130: Potential: 82200.783
140: Potential: 79693.601
150: Potential: 77797.890
160: Potential: 75235.849
170: Potential: 73208.540
180: Potential: 71404.941
190: Potential: 69980.301
200: Potential: 68477.591
Seconds = 3.227000000
MKL Times = 1.041000000
MKL OpCount = 9849
IntelPerLib
2006-12-22
打赏
举报
回复
将MKL的Pow调用去掉有改进吗?
oxromantic
2006-12-20
打赏
举报
回复
0: Potential: 686445.957
10: Potential: 280129.985
20: Potential: 206437.945
Seconds = 10.539000000
MKL Times = 10.334000000
MKL OpCount = 2058
Press any key to continue . . .
这是我的测试结果, MKL pow 一次对10240*3操作, invsqrt对10240个数据操作
测试21次运算,调用MKL函数次数2058, 但耗时10.334s
oxromantic
2006-12-19
打赏
举报
回复
我每次送的都是10000个数据,但性能就很差了
我在虚拟机中编译的,这个有关系吗
m2213231
2006-12-19
打赏
举报
回复
MKL里面的vdSqrt这种函数在计算向量的时候才会提高速度,也就是说把数据一组一组地送给函数,而不要直接一个一个地给。
比如这样vdSqrt(100,src,dest),src和dest都是数据指针,例子的函数调用不一定正确,就是说这个意思。
IntelPerLib
2006-12-19
打赏
举报
回复
有测试代码说明这个问题吗? 输入的计算数据是否合法?
Intel 工具有一个技术支持的网站. https://premier.intel.com 你也可到上面提交你的一个问题. 这个网站是需要注册的,在申请工具的时候, 需要选择"技术支持"
--------------------------------
我每次送的都是10000个数据,但性能就很差了
我在虚拟机中编译的,这个有关系吗
oxromantic
2006-12-19
打赏
举报
回复
发现很多人遇到这个问题,是不是还要开启什么编译参数之类?
基于
CPU
和Intel
MKL
的深度学习实验
参加了今年的AWS Summit,里面有一个很有意思的环节是Intel组织了一个基于AWS的深度学习上手课程。为什么在AWS上呢?这个课程以及代码的地址在这里https://github....
(TF)Anaconda安装Tensorflow+Keras+Jupyter Notebook 老电脑(
CPU
不
支持
AVX
指令集
)
(TF)Anaconda安装Tensorflow+Keras+Jupyter Notebook老电脑(
CPU
不
支持
AVX
指令集
) 目录 -1、安装anaconda最新版本 -2、增加国内镜像源 -3、设置环境变量 -4、安装Tensorflow(
CPU
版本) -5、老
CPU
,没有AVS
指令集
的
CPU
,安装SSE版本 -6、测试Tensorflow ...
MKL
库性能对比(转载)
英特尔数学核心函数库(Intel Math Kernel Library,
MKL
)是一套经过高度优化和广泛线程化的数学例程,专为需要极致性能的科学、工程及金融等领域的应用而设计。核心数学函数包括BLAS、LAPACK、ScaLAPACK1、稀疏矩阵解算器、快速傅立叶转换、矢量数学及其它函数。通过限制线程数量、观察 dgemm 的性能变化,以下示例展示了线程如何影响性能。使用矩阵乘法(cblas_cgemm)为例来对比不同环境与配置的性能差距。1.2 使用嵌套循环(C)计算矩阵乘法。1.1 使用dgemm(
amd的
cpu
跑python_AMD用于深度学习到底Yes吗? 基于
mkl
和openblas的numpy运算速度小测与安装教程...
AMD最近几年似乎是太Yes了,2016年到现在,股价从2块钱涨到40块钱,在很多地区的DIY市场份额超过英特尔,苏妈NB啊!但在科学计算领域,
CPU
没有相关的配套软件
支持
是不行的。想自己组装个深度学习主机到底能不能上AMD?该文章用numpy库对openblas和
mkl
简单测试,来回答这个问题。目录0. 基本概念0.1 做深度学习还要看
CPU
吗?0.2 什么是
mkl
与openblas?0.3 A...
别再让
CPU
空转了!手把手教你用AVX-512
指令集
优化Python科学计算(附代码对比)
本文详细介绍了如何利用AVX-512
指令集
优化Python科学计算,提升5-10倍性能。通过Cython、Numba和Intel
MKL
等工具链,实现向量化编程,绕过GIL限制,充分发挥现代
CPU
的SIMD能力。附有代码对比和实战案例,帮助开发者快速掌握硬件加速技术。
英特尔边缘计算技术
568
社区成员
7,024
社区内容
发帖
与我相关
我的任务
英特尔边缘计算技术
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
复制链接
扫一扫
分享
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章