blas daxpy와 dcopy inc = 1 일 때 (:, t) = b (:, t)를 사용하는 것보다 빠릅니까?
-
06-07-2019 - |
문제
제목이 말합니다. Fortran에서 다음과 같은 종류의 작업을 수행하고 있습니다.
a(:,t) = b(:,t)
c(:,t) = x(i,t)*d(:,t)
사용의 이점이 있습니까? daxpy
그리고 dcopy
이 경우 BLAS의 서브 루틴은 Inc = 1?
해결책
당신이 눈치 채게 될 차이는 없습니다.
BLA는 Fortran 77과 호환되어야합니다.
이 서브 루틴은 배열 또는 매트릭스가 1 줄의 코드를 복사하기 위해 거기에 있습니다. 주기는 매트릭스 역전과 같은 다른 루틴에서 호기를받는 경향이 있으므로 복사는 일반적으로 성능 문제가 아닙니다.
성능이 걱정된다면 합리적인 방법으로 코딩하십시오. 그렇다면 내가 할 일은 몇 번 방해하십시오. 이것은 시간이 실제로 어디로 가는지 보여줄 것입니다. 복사에 많은 시간을 보내면 알려줄 것입니다. 그렇지 않다면, 그것은 당신에게 말할 것입니다.
제휴하지 않습니다 StackOverflow