blas daxpy와 dcopy inc = 1 일 때 (:, t) = b (:, t)를 사용하는 것보다 빠릅니까?

StackOverflow https://stackoverflow.com/questions/1010891

문제

제목이 말합니다. Fortran에서 다음과 같은 종류의 작업을 수행하고 있습니다.

a(:,t) = b(:,t)
c(:,t) = x(i,t)*d(:,t)

사용의 이점이 있습니까? daxpy 그리고 dcopy 이 경우 BLAS의 서브 루틴은 Inc = 1?

도움이 되었습니까?

해결책

당신이 눈치 채게 될 차이는 없습니다.

BLA는 Fortran 77과 호환되어야합니다.

이 서브 루틴은 배열 또는 매트릭스가 1 줄의 코드를 복사하기 위해 거기에 있습니다. 주기는 매트릭스 역전과 같은 다른 루틴에서 호기를받는 경향이 있으므로 복사는 일반적으로 성능 문제가 아닙니다.

성능이 걱정된다면 합리적인 방법으로 코딩하십시오. 그렇다면 내가 할 일은 몇 번 방해하십시오. 이것은 시간이 실제로 어디로 가는지 보여줄 것입니다. 복사에 많은 시간을 보내면 알려줄 것입니다. 그렇지 않다면, 그것은 당신에게 말할 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top