fortran subroutine_Fortran:派生数组与数组传递进子程序耗费时间比较
生活随笔
收集整理的這篇文章主要介紹了
fortran subroutine_Fortran:派生数组与数组传递进子程序耗费时间比较
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在優化程序的過程中發現其中存在大量的派生類型變量(type),同時發現Fortran子程序可以接受type類型數組中元素,即將type類型中元素當作獨立的數組傳遞。傳遞過程如下所示:
...為了測試派生類型數組傳遞的速度,編寫如下程序進行對比
module更改不同的num值可以得到程序耗時結果,
從表格中可以看出傳遞type數組中元素所耗時間是直接傳遞數組所需時間的3倍,當然兩種數組的大小應該在10000000以上才能體現差別。盡管在傳遞數組中元素在程序編寫上很方便,但是程序中存在需要頻繁傳遞變量的子程序時需要格外的注意。避免傳遞type數組額外耗時的解決方案:
總結
以上是生活随笔為你收集整理的fortran subroutine_Fortran:派生数组与数组传递进子程序耗费时间比较的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何用python自动改试卷_利用Pyt
- 下一篇: filter函数的用法_动态数组函数系列