ZT - 怎樣提高呼叫數學函式的程式的效能(6)
下面是一個用於計時 DFT 程式碼的 Fortran 驅動器程式。
program main interface subroutine dft(x,a,phi,n) real*8 x(n),a(n),phi(n) integer n end subroutine subroutine init(a,n) real*8 a(n) integer n end subroutine subroutine consume(a,b,c) real*8 a(*),b(*),c(*) end subroutine end interface ! Parameters: ! nmax is the problem size. ! nrep is the number of repetitions of the ! problem. This should be chosen so that ! the elapsed time is long enough to give ! sufficient timing resolution. ! cyc is the clock frequency in Hz for the ! processor that the program is to be run on. ! (Can be found from AIX command pmcycles.) integer, parameter :: nmax=1000 integer, parameter :: nrep=100 real*8, parameter :: cyc=4704000000.d0 real*8 x(nmax), a(nmax), phi(nmax) real*8 tx, ty, accum, del(4) intrinsic sin, sqrt real*8 rtc del(4)=0.d0 acc = 0.d0 do k=1,nrep tx=rtc() call init(x,nmax) call dft(x,a,phi,nmax) ty=rtc() call consume(x,a,phi) do j=1,nmax acc = acc + a(j) + phi(j) end do del(4) = del(4) + (ty-tx) end do del(1) = del(4)/real(nmax,8) del(2) = del(1)/real(nrep,8) del(3) = cyc*del(2) print *,'acc=',acc/real(nrep,8),' n=',nmax, & ' r=',nrep, ' a=',del(1),' b=',del(2), & ' c=',del(3),' w=',del(4) end program |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16896827/viewspace-1036479/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ZT - 怎樣提高呼叫數學函式的程式的效能(1)函式
- ZT - 怎樣提高呼叫數學函式的程式的效能(2)函式
- ZT - 怎樣提高呼叫數學函式的程式的效能(4)函式
- ZT - 怎樣提高呼叫數學函式的程式的效能(5)函式
- ZT - 怎樣提高呼叫數學函式的程式的效能(7)函式
- [Q]怎樣建立基於函式索引zt函式索引
- 怎樣提高伺服器的效能伺服器
- 透過使用型別庫提高VB呼叫DLL函式的效能 (轉)型別函式
- 利用函式的惰性載入提高 javascript 程式碼效能函式JavaScript
- 移除函式呼叫能有更好的效能函式
- 函式的呼叫方式和引數函式
- Itrace跟蹤程式呼叫庫函式引數選項-怎麼學習linux運維函式Linux運維
- 【C語言】函式的概念和函式的呼叫(引數傳遞)C語言函式
- 函式呼叫的引數規則與解包函式
- 怎樣測試程式的平均效能
- 像數學公式一樣徹底簡單理解JavaScript函式呼叫與this 指標公式JavaScript函式指標
- 函式呼叫引數變數傳值的問題函式變數
- 在C++中使用Lambda函式提高程式碼效能C++函式
- 淺析一個函式呼叫另一個函式的變數函式變數
- C程式函式呼叫&系統呼叫C程式函式
- 外部函式的呼叫函式
- js中的寫出想jquery中的函式一樣呼叫JSjQuery函式
- 我的MYSQL學習心得(6) : 函式MySql函式
- 程式中的函式引數函式
- 人人都能學會的python程式設計教程10:呼叫函式Python程式設計函式
- JS中函式內套函式的呼叫JS函式
- Javascript的函式呼叫與thisJavaScript函式
- Lua中呼叫ref和out修飾引數的函式/過載函式函式
- 數學函式函式
- java可以像python中的函式式工具裡的reduce那樣呼叫嗎?JavaPython函式
- js函式 函式自呼叫 返回函式的函式 (閉包)JS函式
- Swift 呼叫 Objective-C 的可變引數函式SwiftObject函式
- ASP中函式呼叫對引數的影響 (轉)函式
- C#程式碼與javaScript函式的相互呼叫C#JavaScript函式
- ES6函式引數函式
- 透過例子學習Lua(4)--函式的呼叫(轉)函式
- 學習javaScript必知必會(1)~js介紹、函式、匿名函式、自呼叫函式、不定長引數JavaScriptJS函式
- 函式呼叫棧的問題函式