非規格化數需要微程式碼協助,它會導致明顯的效能懲罰。
要避免 x87 非規格化數:
選擇大到足以避免下溢的數據型別。
調整運算元/結果的範圍,以降低發生下溢情況的可能性。
在 x87 堆疊上儲存中間性結果,直到已計算出那些結果並存儲到記憶體。
將程式碼轉換成 SSE 或 SSE2。
如需有關詳細資訊,請參閱最新的優化手冊。
使用者/原始碼編碼規則 15。(影響度 H,通用性 ML)應該儘可能避免非規格化浮點常數。