박PD님의 블로그에 MS VS 개발자와의 얘기 정리라는 글이 올라왔습니다만,
Incredibuild 기능은 잘 모르겠다.
 아예 컴퓨터를 클러스트링 하면 어떨까? NT 빌드팀은 그렇게 한다고 한다.
라는 구절이 흥미를 끌었습니다. 그래서 이것저것 뒤져보았습니다.

A computer cluster is a group of tightly coupled computers that work together closely so that in many respects they can be viewed as though they are a single computer.
흠. 클러스터링을 하면 무언가 특별한 처리가 필요할 것이라고 막연히 상상했는데, 어플리케이션 측에서 보기에는 컴퓨터 한대에서 돌아가는 것과 같은가 보군요.

그래도 프로젝트 단위의 병렬 컴파일 밖에 지원하지 않는 현 상황에서 클러스터링이 의미가 있을지 좀 의문인데, 윈도우즈를 구성하는 파일 숫자를 생각하면 프로젝트가 수백개일지도 모르겠습니다. 그렇다면 납득.

To that end, we’ve added a new switch to the compiler, /MP, to enable multi-process building at the source file level.
좀 더 찾아보니, VS 2008 에서는 소스 파일 단위로 병렬 컴파일이 가능해지는군요. 이렇게 되면 좀 더 인크레디빌드와 유사해지겠군요.

하지만, 클러스터링하는 것은 빌드 전용 머신으로 여러대의 머신을 투입해야하는 것이고, 인크레디빌드를 사용할 경우는 유휴자원을 사용할 수 있는 것이라서 정확히 같은 의미는 아니라고 생각합니다. NT 빌드팀 쯤 되면 클러스터링해서 빌드 머신 구축하는 것 쯤은 큰 문제가 아니겠지만, 일반적으로 선택할만한 옵션인지는 좀 의문입니다.

클러스터링해서 VS 2008을 돌려보고 싶다는 생각은 드는데, 머신도 없고 OS도 없군요. 그래도 서점가서 클러스터링 관한 책을 좀 살펴보아야겠습니다.

그리고, 이거 조사하다가 보니 근래의 기술 동향에 대해서 너무 공부를 안하고 살았다는 느낌입니다. 좀 더 열심히 살아야할 것 같습니다.

[REF] Computer Cluster [Wikipedia]
[REF] Multi-processor builds in Orcas [Visual C++ Team Blog]

'게임 만들기 > 프로그래밍' 카테고리의 다른 글

Koenig Lookup  (4) 2007.10.19
Uncanny Valley  (1) 2007.10.11
How to  (2) 2007.08.23
top