[閒聊] 來加速一個有趣的東西吧

看板C_Sharp (C#)作者 (.)時間12年前 (2013/03/17 11:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/2 (看更多)
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)
文章代碼(AID): #1HHJ8gzj (C_Sharp)
文章代碼(AID): #1HHJ8gzj (C_Sharp)