我想为速度优化以下Fortran代码
let $coAdminVal := $administrativeUnits/au:AdministrativeUnit[@gml:id = $administerVal]/au:coAdminister/@xlink:href
let $coAdminVal := $administrativeUnits/au:AdministrativeUnit[matches(@gml:id, $administerVal)]/au:coAdminister/@xlink:href
let $coAdminVal := $administrativeUnits/au:AdministrativeUnit[contains(@gml:id, $administerVal)]/au:coAdminister/@xlink:href
let $coAdminVal := $administrativeUnits/au:AdministrativeUnit[string(@gml:id) = $administerVal]/au:coAdminister/@xlink:href
尺寸和DO ii = 1, N
A (:,:) = A (:,:) + C (ii) * B (:,:, ii )
ENDDO
尺寸。
我在考虑使用BLAS
A(M,M)
但这看起来效率不高,因为我还有一个循环。是否可以使用增量以及如何使用?
在我的情况下,N总是>中号