2013-01-22 10 views
3

Intel® 64 and IA-32 Architectures Optimization Reference Manual에는 다양한 CPU 명령어에 대한 대기 시간 및 처리량이 나와 있습니다.x86 : 초월 함수의 대기 시간 및 처리량

초월 함수 (FSIN 등)의 경우 일부 수치가 범위로 ​​표시됩니다 (C-29 페이지). 각주 4는 다음을 설명합니다.

동적 실행 환경에서 지연 시간 및 처리량이 크게 달라질 수 있습니다. 이 지침에는 대략적인 값 또는 값 범위 만 제공됩니다.

제 질문은 : 처리율과 대기 시간에 영향을주는 요소는 무엇입니까? 논쟁의 가치가 하나의 요소라고 생각합니다. 다른 것이 있습니까?

답변

4

비행 중에있는 다른 명령어들의 혼합은 지연과 처리량에 영향을 줄 수 있습니다. 이 명령어들은 마이크로 코드화되어 있습니다. 즉, ALU 리소스에 대한 다른 명령어와 경쟁해야하는 일련의 μops를 생성합니다. 그러한 경합의 경우, 성능에 악영향을 미칠 수 있습니다.

+2

나에게 이길. 나는 똑같은 말을하려고했다. 내가 추가 한 유일한 것은'FSIN'과 같은 연산이 내부 자원을 필요로하는 여러 단계를 의미하는 짧은 시리즈를 평가하는 것과 같은 일종의 연속적인 근사에 의해 구현 될 수 있다는 점을 강조하는 것입니다. 따라서 '충돌' 다른 작전과 함께. – JasonD

2

x87 제어 워드는 계산의 정확도 (64 비트, 53 비트 또는 24 비트 가수)를 지정하며 초월 함수의 성능, 특히 나누기 또는 제곱근을 사용하는 함수의 성능에 영향을 미칠 수 있습니다 . 일반적으로 큰 입력 값에 대해서는 매우 부정확하기 때문에 삼각 x87 명령을 사용하지 않는 것이 좋습니다.