2013-05-16 1 views
0

많은 벡터 계산이 필요합니다. 따라서 NEON을 사용해야하는 것이 좋습니다. 문제는 함수가 double에 의존한다는 것입니다. 이것은 두 가지 옵션을 제공합니다. 즉, 전체 코드를 다시 작성하여 부동 소수점으로 작업하거나, double을 입력으로 사용하여 함수를 생성하여 출력으로 두 배로하고, float으로 계산을 수행하는 것입니다.NEON으로 dotproduct를 계산하고 ARM 프로세서에서 double 값을 계산하는 방법

나는 다음과 같은 계산을 수행해야합니다

dotproduct = A[0]*B[0] + A[1]*B[1] + A[2]*B[2] 

배열은 복식으로 치수된다. NEON 내장 함수를 사용하여이 계산을 수행하려면 어떻게해야합니까?

+0

정확도가 아닌 성능이라고 가정하면 네온을 사용하고 메모리 공간/대역폭 비용을 줄일 수있는 곳마다 단 정밀도를 사용하는 것이 가장 좋습니다. – auselen

답변

4

NEON은 배정 밀도 연산을 지원하지 않습니다. 단 정밀도 값에서 작동하도록 함수를 다시 작성하거나 NEON 대신 스칼라 배정도 VFP 명령어를 사용해야합니다.

관련 문제