우리는 강력하게 우리의 모든 사용자가 시작하는 것이 좋습니다 -O3 -xHost -ipo
11 ifort 모두 부동 소수점 변환이 계산의 일부의 정밀도에 영향을 미치는 O3으로 활성화 특정이있는 경우 12 ifort, 특별히으로 떨어져 사람들을 설정할 수 있습니다 -fp-model precise -fp-model except
(또는, 더 크게, -fp-model strict
) 캐시에 대한 루프 차단, 루프 퓨전 및 언 롤링, 메모리 액세스 최적화와 같은 다른 최적화를 유지하면서 O3가 가능합니다.
개별 파일에서 부동 소수점 모델을 시도해보고 전 세계적으로 끄는 것이 아니라 차이점이있는 곳을 찾는 것이 좋습니다. ~ 15 %의 속도 충돌이 될 수 있으며 계산에 영향을 미치지 않는 곳에 유지할 수 있기를 원합니다. 정밀도가 어디에서 영향을 받는지 확실하지 않은 경우 해당 파일의 부동 소수점 모델 플래그를 켜거나 끄거나 반올림 모드로 재생할 수 있습니다 .
우리는 최근 x86 용 gnu 및 인텔 컴파일러에 중점을 둔 최적화 플래그에 대해 사용자들에게 간단한 대화를 나;습니다. 그 대화 에서 슬라이드를 볼 수 있습니다 .
우연히도, 우리는 코드에 대한 최적화 플래그를 선택하는 것에 대해 이야기하고 있지만 , 컴파일러가 루프를 벡터화하려고 시도한 곳이 어디인지 알기 위해 -vec-report 의 출력을 볼 가치가 있습니다 . 때로는 루프를 약간 변경하여 벡터화가 가능할 수 있습니다 (4 배 속도 향상). 보다 일반적인 -opt-report와 유사합니다 .