| [ CnUnix ] in KIDS 글 쓴 이(By): testors (testors) 날 짜 (Date): 2003년 4월 25일 금요일 오후 01시 40분 45초 제 목(Title): Re: 계산 코드 옵티마이즈.. > for(k=0;k<100;k++) a[(i*NX +j)*NY+k] > 대신에 > ii=(i*NX+j)*NY; > for(k=ii;k<ii+100;k++) a[k] > 가 몇배 빠른 경우도 경험해 봤습니다. int/double/퍼포먼스 쓰레드에서 벗어난 그냥 코딩 스타일 이야기입니다.. ^^ C++ 에서 i, j, NX 중 하나가 사용자 정의 타입이라면 연산자 오버로딩등으로 전자와 후자의 실행결과가 달라질수도 있겠죠. 컴파일러도 나름대로 최적화 하려고 노력하겠지만 애매하다 싶으면 그냥 그대로 컴파일 하겠죠. 옵티마이징 되는 규칙을 확실히 파악하고 있는게 아니라면 위와같이 개발자가 의도해서 명확히 옵티마이징 가능한 부분은 그냥 인간이 하는게 좋은 코딩 습관인것 같네요. - Testors |