학문적 이유로 AArch64에서 sqrt 함수의 성능을 사용하고 있습니다. 단일 플로트 sqrtf 기능 코드 : 더블 플로트 SQRT에 대한AArch64에서 sqrt 함수의 성능
fsqrt s0, s0
ret
코드 기능 : 여기에서 FSQRT에 대한 이론적 대기 시간을 말하는 겁니다
fsqrt d0, d0
ret
단일 sqrt는 배의 2 배인 것 같습니다.
하지만, 프로파일 링 동안 나는이 번호를 받고 있어요 : 나는 사이클 같은 수의 시간을 가져 갈께요326 ms sqrt
82 ms sqrtf
. 그 숫자에서 보면 sqrtf는 4 배 더 좋습니다.
왜 적절한 이유를 찾을 수 없습니까? 실제로 인터넷에서이 지침이 실제로 어떻게되는지에 대한 적절한 설명을 찾을 수 없습니다.
일부 정보 또는 방향이 유용 할 것입니다.
지침의 정렬을 변경하고 다시 측정해야하므로 필요에 따라 반복하십시오. 명령의 단일 인스턴스를 측정하려는 경우 성공할 가능성은 거의 없습니다. –
@old_timer 루프에서 백만 건의 함수 호출에 대한 성능을 측정하고 있습니다. 그것은 문제가되어서는 안됩니다. –