CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): flexable (플__)
날 짜 (Date): 2002년 9월 30일 월요일 오전 04시 47분 48초
제 목(Title): Re: C 언어에서...?


> Compiler를 믿으라고 몇번이나 얘기해도 이상하게 반복적으로 비슷한
> 질문을 하시는 분들이 이 보드에 많네요.  ;-0

음, 제 얘기도 "질문"으로 분류하셨나요? 저는 일종의 답으로 커멘트를
달았던 건데.. 첫 포스팅만 질문이었고 나머지는 다 (맞던 틀리던) 답
이었던 걸로 알고 있는데 말이죠. 어쨌거나 다시 한 번 정리하자면:

-- Strength reduction은 보통의 경우 성능 향상에 실제로 도움이
   되는 경우가 많습니다. 고로 어지간한 컴파일러에서 기본적으로
   제공하지요.

-- gcc의 경우 제가 직접 체크를 안 해봐서 strength reduction을
   예를 들어 -O0 레벨에서도 하는지는 모르겠다는 얘기였구요. 뭐
   컴파일러 매뉴얼이나 생성된 어셈블리 코드를 보면 금방 알 수 
   있겠죠.

-- 펜티엄 4의 경우 strength reduction이 반드시 좋은 게 아닐 수도 
   있다는 곁다리 얘기를 하나 추가했지요. 컴파일러가 만약 P6용
   옵티미제이션을 한다면 오히려 안 좋을 수도 있다는 예로 한 번
   들었죠.

-- 저도 기본적으로 "컴파일러를 믿으라"는 주의자입니다. 믿는 건
   좋은데 성능이 정말 문제가 되는 경우에 컴파일러 옵션 잘 체크
   해서 어느 정도 성능 향상을 얻을 수 있는 건 사실이라는 거죠.


> gcc가 성능이 안 좋은지는 잘 모르겠는데,
> 빠르기+Optimization은 둘째가라면 서러울 컴파일러일텐데요.
> 적어도 졸라리스/리눅스에서는 제일 빠릅니다.   빠른걸 위해서 하도 꼼수가
> 많이 숨어있어서 성능(?)이 그저 그럴수는 있겠습니다만.

일단 제가 "성능"이라고 말한 건 (당연한 얘기지만 헷갈리시는 것 
같으니 확실히 하자면) 컴파일 속도가 아니라 컴파일된 바이너리의 
속도였구요..

gcc가 옵티미제이션에서 둘째 가라면 서러울 컴파일러라고 믿고 
계시다니 소프트웨어 개발이 생업이라면 그 생업에 지장이 좀 
있으실듯. (하긴 리넉스 커널이 최고라고 믿고 살아가는 사람들도 
있으니까 거기에 비하면 아무 것도 아니겠습니다만)
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.