怎么利用好SSE指令集

zxm0377 2007-11-10 02:31:45
现在Intel的指令集有SSE,SSE2,SSE3,SSSE3和将来的SSE4,听说SSE4听说SSSE3和SSE4有些指令对图象应用还是不错的. 我怎样才能充分的利用到我的软件中?要做专门特别的优化吗?
...全文
1105 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
rouqu 2007-12-16
  • 打赏
  • 举报
回复
up
neituib 2007-12-15
  • 打赏
  • 举报
回复
内部推荐能使得寻找更好地职位更为容易

内推网 内部推荐 求职快线
redleaves 2007-12-14
  • 打赏
  • 举报
回复
IPP的性能很不错,要实现和它一样的功能,几乎没有太大的优化余地..
不过IPP想用好也不太容易,它有太多的版本,针对不同的环境.而且对于不同的应用,有很多重复的功能.比如:如果用矩阵库来做图像变换,就比用图像库来变换要慢得多~~
而手工写的好处是可以因材适用...很多时候,要比用IPP来得更舒服一些...
SSE并不复杂,而且很适合用来优化平凡算法,反而如果要实现一些优化算法的时候,没法用它.
楼主可以先用ICL做并行优化,生成一个SSE代码的模板,然后在这个基础上改...因为手工分配寄存器实在是很恼火的事...
redleaves 2007-12-14
  • 打赏
  • 举报
回复
嗯~~不错~~
很久没有联系了.你最近如何?还在老地方呀?
你的数学库写了那么久了,很有毅力,很PF你呀~
自己写汇编是不错,不过不是每个人都愿意去搞这个东西.
而且SSE优化并不是什么算法都适用,大多数时候要调整算法来适合指令,还是比较费力的.
另外,你的网站我上不去....
gxqcn 2007-12-14
  • 打赏
  • 举报
回复
我觉得仔细阅读相关指令集的用户手册,自己试着直接写汇编,才能真正达到随心所欲自由的境界。

to redleaves:
老友,相别数年,近来安好?结婚生子没?
我的主页新近申请了顶级域名www.emtah.ac.cnHugeCalc升级到了V8.0.0.0,它的核心算法部分嵌入了五千多行汇编(ALU&SSE2),可自动侦测用户CPU的型号,支持多核并行计算及SSE2指令加速等,在双核上测试,精确计算40,000,000!,仅需67.570732s,比最新的 Mathematica V6.01 快了61%!更多的测试结果可见本社区算法版上的“200秒,可以做什么?——测测你的电脑精确计算能力”。
ben_jiang 2007-12-14
  • 打赏
  • 举报
回复
我就用SSE指令集优化过, 效果还是有的
举个简单的例子,我把memcpy 函数,改写成这样:


WORD * pDest,*pSrc;
pDest = ReadBuffer;
pSrc = SwitchBuffer ;

int nCount = 320*240*sizeof(WORD) / 16;
__asm
{

mov ESI, pSrc
mov EDI, pDest
mov ecx, nCount
loop1:
movdqa xmm0, [ESI]
movdqa [EDI], xmm0


add esi,16
add edi,16
dec ecx
jnz loop1

}

OpenHero 2007-12-12
  • 打赏
  • 举报
回复
to mengmengswat :
dearbook上就有
还有intel的网站上就有
不过翻译的几本比较少,最好是看英文的
有更多的资料
kelkch 2007-12-12
  • 打赏
  • 举报
回复
现在电脑越来越快了,能用库还是库吧,以后升级兼容移植都好些. 仅个人意见.
mengmengswat 2007-12-12
  • 打赏
  • 举报
回复
每个人的开发习惯都不同,自己有自己方便的方法. 另外,楼上OpenHero说的intel的书哪有卖的?? 介绍下啊
OpenHero 2007-12-07
  • 打赏
  • 举报
回复
其实可以多看看intel的几本书,然后看看intel国外的论坛,上没有很不错的资料
最主要的还是多实践
kalvenyan 2007-12-05
  • 打赏
  • 举报
回复
最近我们也在考虑使用IPP库来减轻使用SSE指令的难度,但是试用了一下,感觉IPP库函数的结果在性能上比自己SSE改写的要差,你可以对比一下ippsDiv_32f,和用SSE指令_mm_div改写的结果。我现在认为IPP库的主要优势是提供了一些现成的算法函数,即不用自己去开发一些算法。
Simore 2007-11-21
  • 打赏
  • 举报
回复
还是建议用现成的库吧,不管是Intel的还是第三方的。

自己写成本太高,而且不一定比别人的好。

但是如果LZ是超级牛人,那就另当别论了,呵呵
flyingdog 2007-11-18
  • 打赏
  • 举报
回复
可以使用Intel专门提供的库,也可以自己写汇编。也可以找一些第三方的库。
当然自己写汇编是非常麻烦的。Intel的库在性能上非常出色。
关键还在于自己的软件的需求。
mengmengswat 2007-11-13
  • 打赏
  • 举报
回复
可以利用Intel的高性能多媒体函数库(IPP)进行调优,对一些图象,视频,音频处理还是很好的.Intel的软件对SSE指令集应用到软件中的支持,应该没有问题.可能还会很方便.

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧