>> Edit article
이름
제목
패스워드
GCC를 이용해서 수치계산을 하는 빈도가 예전에 비해 높아졌습니다. 보통은 -O2나 -O3옵션 같은 Optimzation option을 켜고 하는데 이보다 더 많은 옵션들이 존재합니다. 제가 테스트 해본 바로. I686의 경우 CFLAGS=-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions 와 같이 주었더니 매우 빠르게 계산하더군요. 그리고 여러 홈페이지를 보니 gcc자체의 버그들이 아직 존재해서 -O3 같은 옵션은 문제가 많은가 봅니다. 참 이번에 제가 알아낸 팁 중에 하나로 -ffloat-store라는 옵션도 있습니다. 제가 돌리는 수치 프로그램의 경우 다른 Unix머신들에서는 문제없이 도는데 유독 리눅스 머신에서는 NaN이라는 것을 찍어 내더군요. 아직 많이 알려지지는 않았지만 Intel CPU계열의 register에 precision처리에서 문제가 많은가 봅니다. 이 경우 optimization option을 빼거나 아니면 -ffloat-store옵션을 같이 붙여주면 문제없이 돕니다. (double precision이상의 유효자리는 버리는 옵션이라고 설명이 있네요) 저처럼 수치 계산하시는 분들에게는 유용한 팁이 되길 바라겠습니다. 참 아래는 참조한 홈페이지 입니다. 모두 좋은 하루되세요. http://www.tldp.org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3/chap6sec64.html--내서명???
Copyleft
1999-2026 by
JSBoard Open Project
Theme Designed by
IDOO
All right reserved