IPP优化为什么速度没有提高

medea8213 2009-02-04 02:23:41
电脑配置如下:intel P4,CPU 3.00GHz,512M
在下面的这样的代码中,使用IPP函数的处理时间反而比C代码的慢,一直找不到原因,希望各位大侠指点,非常感谢!!!
for(i=0; i<288; i+=16)
{
refline=ref+i*392;
srcline=src;

for(int j=0; j<4; j++)
{
L0=L1=L2=L3=0;
#ifdef _IPP_
ippiSAD4x4_8u32s((Ipp8u*)srcline,16,(Ipp8u*)refline,392,&L0,0);
ippiSAD4x4_8u32s((Ipp8u*)srcline+4,16,(Ipp8u*)refline+4,392,&L1,0);
ippiSAD4x4_8u32s((Ipp8u*)srcline+8,16,(Ipp8u*)refline+8,392,&L2,0);
ippiSAD4x4_8u32s((Ipp8u*)srcline+12,16,(Ipp8u*)refline+12,392,&L3,0);
refline += 4*392;
srcline += 4*16;

#else

for (int k = 0; k<4; k++)
{
L0 += abs(*refline++ - *srcline++);
L0 += abs(*refline++ - *srcline++);
L0 += abs(*refline++ - *srcline++);
L0 += abs(*refline++ - *srcline++);
L1 += abs(*refline++ - *srcline++);
L1 += abs(*refline++ - *srcline++);
L1 += abs(*refline++ - *srcline++);
L1 += abs(*refline++ - *srcline++);
L2 += abs(*refline++ - *srcline++);
L2 += abs(*refline++ - *srcline++);
L2 += abs(*refline++ - *srcline++);
L2 += abs(*refline++ - *srcline++);
L3 += abs(*refline++ - *srcline++);
L3 += abs(*refline++ - *srcline++);
L3 += abs(*refline++ - *srcline++);
L3 += abs(*refline++ - *srcline++);
refline += 392-16;
}

#endif
}

}
...全文
498 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

567

社区成员

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

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