作者erspicu (.)
看板C_Sharp
标题[闲聊] 来加速一个有趣的东西吧
时间Sun Mar 17 11:02:00 2013
https://github.com/erspicu/dcraw.net.rw2/blob/master/dcraw.net/Program.cs
//----------------------------- 传说中的 Lanczos3 缩图演算法 ,待速度优化 start
// 参考
http://blog.csdn.net/yangzl2008/article/details/6693678 原Java Code
就是这段...
这地方拥有相当巨大的改善空间
应该是说这程式有大部分是从C移植过来的
然後Lanczos3是从Java移植过来的
有些是从C++移植过来的
当时後只是快速移植改写过来
还没顺应C#的风格重新修正
所已里面看起来很怪就是
不过比较有趣的是 Lanczos3 这里
牵涉到大量频率域转换 速度满差的
我还没有花时间下去好好处理一下
另外这个地方不能乱开平行多核处理
有先後相依顺序
上面有人文章提到优化的问题
我想这里应该是比较实际而且有趣
真正需要优化而且有严重效能瓶颈的地方
(缩一张图要好几秒...酷吧)
分享给大家 有兴趣玩看看吧
有几个地方需要处理
1.浮点数计算改用特殊方式的整数计算 这是只有整数运算的硬体环境常用的伎俩
不过在X86上已经有浮点计算能力的处理器上 不知道能换到多少效能
2.改用快速频率域转换计算(数学没学好,现在说不定已经是快速演算法版本了)
3.BITMAP相关存取改用低阶方式读写,Color这东西似乎不是很理想
4.平行跟GPU加入处理 (但是要解决有些地方不能发生竞逐关系)
5.许多地方改用低阶bitwise去处理
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.70.79.227
※ 编辑: erspicu 来自: 61.70.79.227 (03/17 11:26)