Windows 와 Linux 간 Simulation 의 속도 차이

제 직업 특성상 물, 불, 연기 같은 Fluids simulation을 돌리느라 컴퓨터를 자주 이용하는 편입니다.

Side Effects 사의 Houdini 라는 3D Graphic 툴을 주로 사용하는데,
Houdini for Windows 와 Houdini for Linux 의 성능 차이가 대략 30% 정도라 하더군요.

그래서 Liquid Fluids Simulation을 가지고 테스트 해 봤습니다.

약 60,000,000 개의 particle을 가지고 물을 만들 때, 60 frame 을 진행한 후 시간 측정을 해보니

Windows - 10분 59초
Ubuntu - 9분 24초

라는 결과가 나왔습니다.

같은 시스템에 설치를 하여 테스트한 결과인데, 이렇게 차이가 나는 이유는 뭘까요?
대기 시간이라고 해야 하나요? 각 프레임의 연산에 넘어가기 전 Windows 에서 모래시계가 나타나는 시간이
우분투에서는 상대적으로 적더군요…

case by case 입니다
가장 일반적인 이유는 뭐에서 먼저 개발 했냐는거죠.
처음에 unix workstation등에서 돌리려고 gcc로 unixor linux에서 개발을 하다가 후에 window로 포팅한 경우라면
당연히 linux에서 빠르고 반대라면 window에서 빠르겠죠

또하나는 OS자체의 덩치 인데요 Win7 설치후 올려보면 암것도 없는 순수OS인데도 메모리나 자원을 상당히 쓰고 있습니다
linux의 경우엔 요즘은 상당히 무거워졌지만 그래도 상대적으로 사용량이 적죠. 프로그램자체가 메모리가 클수록 유리하게
되어 있다면 . linux가 유리하겠죠 반대로 뭐 디바이스 드라이버를 많이 쓴다 하면 최적화 차이로 windows가 빠르죠

IRIX 용으로 먼저 개발된 application인데… 그래서 그렇군요.

application 파일을 받을 때 보면
houdini 13 for linux gcc4.6 이라는 식으로 표현되던데
gcc 가 GNU Compiler Collection 이란 것도 이제야 알았습니다.

근데 검색하다보니 gcc를 별도로 설치하는 것 같던데
리눅스를 처음 설치할 때에는 포함이 안되어 있나요?

그리고, gcc 버전이 확실히 표기되어 있지만 gcc가 설치되어 있지 않더라도 application은 작동 가능한가요?

[quote="bluedog7":31lprjsh]case by case 입니다
가장 일반적인 이유는 뭐에서 먼저 개발 했냐는거죠.
처음에 unix workstation등에서 돌리려고 gcc로 unixor linux에서 개발을 하다가 후에 window로 포팅한 경우라면
당연히 linux에서 빠르고 반대라면 window에서 빠르겠죠

또하나는 OS자체의 덩치 인데요 Win7 설치후 올려보면 암것도 없는 순수OS인데도 메모리나 자원을 상당히 쓰고 있습니다
linux의 경우엔 요즘은 상당히 무거워졌지만 그래도 상대적으로 사용량이 적죠. 프로그램자체가 메모리가 클수록 유리하게
되어 있다면 . linux가 유리하겠죠 반대로 뭐 디바이스 드라이버를 많이 쓴다 하면 최적화 차이로 windows가 빠르죠[/quote:31lprjsh]

gcc는 윈도우의 비주얼 스튜디오에 포함된 녀석과 같은 컴파일러입니다.
소스를 gcc로 컴파일해서 실행가능한 파일을 만들고 나면 실행할 때는 gcc가 필요없습니다.

어떤 컴파일러에 어떤 버전으로 컴파일을 했느냐에 따라서 기본 라이브러리의 버전이 결정되고 최적화나 여러가지의 것들이 결정되는 경우가 있어서 실행 파일을 무엇으로 컴파일했는지 알려주는 경우들이 있지요.
윈도우 어플리케이션은 대부분 비주얼 스튜디오로 컴파일하죠.
컴파일에 사용한 비주얼 스튜디오의 버전에 따라 설치할 때 기본 라이브러리를 추가 설치하기도 합니다. (vc_redist.exe 같은)

하지만 실행해서 사용만 하는 경우라면 문제가 생기기 전까지 대개는 신경 안 쓰시고 사용하셔도 됩니다.