2013-10-08 98 views
0

是否有理由將多維數組線性化爲平坦的生產力?我的意思是,即使假設你只是從編譯器獲取指針操作,並在計數索引時明確執行它們。那麼有什麼意義呢?Microoptimizing D鋸齒狀陣列

回答

2

使它們變平可能會使它們更長時間地停留在CPU緩存中(因爲它們位於同一塊內存中),這可以減少緩存未命中次數,從而提高性能。但是,您必須對代碼進行簡介和基準測試,以確切瞭解實際性能影響對於任何特定程序的影響。當然,我不會擔心這類事情,除非分析表明你應該弄清楚如何優化鋸齒狀陣列以減少性能瓶頸。