對Intel Sandybridge 系列CPU 中的管道進行去最佳化
此作業的目標是修改給定的程序以使其運行速度較慢,同時保持相同的演算法。這是為了更深入地了解英特爾 i7 管線的運作方式以及指令路徑如何重新排序以引入危險。
程序概述
該程序是對歐洲普通看漲期權和看跌期權進行定價的蒙特卡羅模擬。它使用 Box-Muller 演算法產生高斯隨機數並執行大量模擬來估計選擇權價格。
惡魔般的無能
目標是故意創建會減慢程式執行速度的不合格程式碼。以下是一些用「惡魔般的無能」來證明這種方法的合理性的想法:
錯誤共享
儲存轉送停頓
過多的時間測量
不利的數學運算
向量化效率低
資料結構
多執行緒誤用
其他建議
修改的影響
這些修改預計會顯著透過引入管道停頓、快取未命中和其他效能瓶頸來減慢程式的執行速度。這項作業鼓勵創造力和願意探索悲觀化程式碼同時保持原始演算法的不同方法的意願。
以上是我們如何取消優化蒙特卡洛模擬以暴露英特爾 Sandybridge 管道瓶頸?的詳細內容。更多資訊請關注PHP中文網其他相關文章!