[問題] 多維陣列 VS 一維陣列
假設
integer A(10,10,10)
integer B(1000)
結構上看起來用的記憶體要一樣
但是我聽到有種說法是A使用的記憶體會比B還來的大!?
實際上是???
另外就是B的元素在記憶體上的分布是連續的這點不用質疑
那麼A呢??
A(i,j,k)
書上說按照 i -> j -> k 的順序下去讀是連續的
但是聽到上面第一種的說法害我開始懷疑B的連續性...
假如真的是連續的
那麼A從1讀到1000
跟B從(1,1,1)讀到(10,10,10)
速度上會有差?? ( 我在實際應用上的矩陣B可能是300*300*300
補個計概問題
請問一下電腦在執行指令時
不同的動作之間的速度比大概是怎麼樣的一個情況呢?
ex.
浮點相乘: xxx Hz / s
浮點相除: ooo Hz / s
邏輯判斷: !!! Hz / s
讀記憶體: ??? Hz / s
寫記憶體: @@@ Hz / s
掃記憶體: ... Hz / s
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.23.27
※ 編輯: iohan 來自: 123.195.23.27 (09/28 22:59)
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章