LabVIEW效能議題討論 (有測試題件與答案)

那一個計算時間最短呢? Case 1? Case 2? Case 3?

答案:
image

請同學說說,造上以上效能差異的原因。大家討論一下。

用以前學C的經驗,看起來像是

case 1
a. call function (效率會比直接把code寫在主程式慢一些,每一圈都多了進入與離開function的記憶體操作時間)
b. call by value (因為Input array size很大,每一圈進入function時又會完整複製一份,所以多了很多記憶體操作的時間)

case 2
a. call function (同case 1)
b. call by reference (相較於case 2 這邊只傳入的是array的 reference,使用的都是同一塊記憶體位置,大約省去了99.99%的複製時間)

case 3
相較於case 2,又少了call function的記憶體操作時間

2個讚