티스토리 뷰
10월초 PlayPC에서 인텔 코어 i5 체험단 이벤트를 했고, 지나간 PC에 대한 추억을 담은 포스팅 하나를 트랙백으로 걸었는데, 생각지도 않게 당첨되어 지난주초에 인텔 코어 i5 CPU가 장착된 PC를 2주간 임대받았다.
PlayPC : 인텔 코어 i5 체험단에 참여하세요~
2주가 채 안되는 짧은 기간동안 코어 i5를 체험할 수 있다는 얘기를 들었을 때는 어떤 방식으로 테스트를 해 볼 것인가 고민을 했었다. 일반적으로 개인이 할 수 있는 코어 i5 테스트는 동영상 처리나 고사양의 시스템을 요구하는 3D 게임 등을 통해 경험을 하지만, 나는 동영상 처리나 게임을 하는 경우는 드물어서 한참 고민을 했다.
근무하는 회사는 휴대폰 소프트웨어를 개발한다. 임베디드 소프트웨어를 개발이 주력이며, 다양한 휴대폰 애플리케이션을 특정 휴대폰 플랫폼에 맞춰 개발하는 업무를 주로 한다. 따라서 이 시스템을 개발도구의 관점에서 테스트를 해보면 어떨까 하는 생각을 하게 되었다.
현재 회사 개발자들에게 지급된 PC는 Intel Core2Duo를 채용한 Dual Core 시스템들이다. 약 2년전에 구입했지만 열정이 넘쳐나는 우리 개발자들에게는 벌써 퇴물 취급을 받고 있다. 휴대폰 임베디드 시스템 개발은 대부분 업무용으로 지급된 개인 PC에서 코딩을 하고 그 자리에서 컴파일을 한다. 때로는 네트워크를 통해 컴파일을 하고 다시 각자의 개발 시스템으로 다운로드 받기도 한다.
개발자들에게 있어서 자신의 시스템은 컴파일 할 때 그 가치를 인정받는다. 코딩작업은 대부분 노트북에서 작업해도 될 정도로 가벼운 일이지만, 실제 오브젝트 파일이나 바이너리를 만들 때는 컴파일하는 컴퓨터의 성능에 전적으로 의존하게 된다.
특히 개발시스템의 경우 시스템의 처리 능력에 따라서 좀 더 수월하게 일을 처리할 수도 있고, 능률을 향상시킬 수도 있다. 느린 시스템에서 용량 큰 바이너리나 오브젝트 파일의 경우 컴파일 하나 걸어놓고, 밥 먹고 양치질하고 돌아와도 50%를 못 넘기는 경우도 허다하다.
더군다나 정식 버전 발행을 앞두고 버그를 잡거나 문제가 발생한 파일을 잡아낼 때는 시스템의 처리 속도는 너무나 중요하다. 1시간이면 처리할 수 있는 일을 시스템때문에 2시간, 3시간이 걸릴 수 있다는 것을 누구보다 잘 아는 개발자들은 늘 컴퓨터의 처리 속도나 능력에 관심이 많을 수 밖에 없다.
PlayPC에서 임대받은 인텔 코어 i5는 삼보에서 생산한 데스크탑 PC로 '린필드 750' (2.66GHz) CPU가 장착되어 있었다. 메모리는 4GB이며, 운영체제는 Vista가 설치되어 있었다. 일단 Vista는 최근에 나온 Window 7으로 교체해서 설치했다. 최적의 환경에서 테스트하는 것이 옳다는 판단이었다. 다행히 얼마전 Windows 7 런칭행사에서 득템한 Ultimate 버전이 있어 이를 설치했다.
Windows 7 는 Windows XP 설치보다 더 간단하고 빠른 시간에 설치할 수 있었다. 일단 처음에 시스템이 Vista가 설치되어 있을 때 좀 막막한 느낌이 들었다. 몇 번 Vista를 사용해 보았지만 쓸데없이 무겁다는 느낌을 많이 받았기 때문이다.
Windows 7을 설치하고는 개발자에게 인도하고 마음껏 테스트하라고 큰소리 쳤지만, 실제 처음 써보는 코어 i5 기반의 시스템이어서 걱정이 되었던 것도 사실이다. 만일 생각만큼 괜찮은 성능이 나오지 않는다면 맡긴 나도 부끄럽고 PlayPC 체험기도 문제가 있을 것 같다는 생각을 했다.
Core i5 시스템(왼쪽)과 Core2Duo 시스템(오른쪽)
시스템을 맡긴지 5일째 되는 날, 코어 i5 시스템을 테스트하는 개발자에게 가서 물어봤다. 다짜고짜 대체 어떠냐고 물었다. 돌아온 답은 일단 안심할 수 있는 긍정적인 답이었다.
'정말 빠릅니다. 이거 임대하지 말고 하나 구입하면 안될까요?' 라는 대답이었다. :)
그냥 Windows 7 설치때 좀 빠르다는 생각을 했었는데, 실제 쿼드코어를 제대로 활용하는 컴파일을 실행해본 개발자가 빠르다고 말을 하니 정말 빠르긴 빠르구나 하는 생각을 했다.
이젠 좀 더 구체적으로 데이터를 요구했다. 개발자는 내게 실제 개발하고 있는 코드의 컴파일 과정 하나를 보여주었다. 휴대폰에 들어가는 애플리케이션의 바이너리를 만드는 과정이었는데, 네트워크 컴파일과 Core2Duo 시스템의 로컬에서 컴파일 하는 과정을 각각 보여주었다.
테스트 PC 환경 |
네트워크 컴파일의 경우 19대의 Core2Duo 시스템의 로컬에서 부분 컴파일을 해서 중앙에 있는 서버(역시 Core2Duo)로 모으는 형태의 컴파일을 진행했다. 각각 시스템들은 모두 E6300 (1.8GHz), 2GB 메모리, Windows XP 환경이었다. 그리고 동시에 코어 i5에서 독자적으로 같은 프로젝트 파일을 컴파일 동작시켰다.
Core2Duo에서의 컴파일링 결과
결과는 네트워크 컴파일의 경우 네트워크 오버헤드 등이 포함되어 있어 로컬 PC보다 약간 느린데 컴파일을 완료하는데 약 15분 49초가 걸렸고, 코어 i5 시스템의 경우 약 8분 38초만에 끝냈다. 상당한 시간의 단축이 있었다는 것을 확인했다.
(현재 개발과 관련된 기밀 사항들은 모자이크 처리했다)
Core i5 컴파일링 결과
테스트에 사용한 컴파일러가 멀티코어를 지원하는 버전이었고, 이를 코어 i5가 실질적으로 사용할 수 있었기 때문에 Core2Duo에 비해 월등히 빠른 결과를 가져올 수 있었다. 또한 L3 캐시가 8MB에 이른다는 점도 하나의 장점으로 작용했다.
약 6일 가량 테스트를 마친 개발자의 의견을 물어보니, 코어 i5에 Windows 7을 탑재한 테스트 시스템을 사용할 경우 기존 Core2Duo 시스템에 비해 보통 2배 이상의 처리 능력을 보여주며, 컴파일 동안에 큰 속도저하 없이 계속 시스템을 사용할 수 있다는 점이 인상적이라고 했다.
특히 프로젝트가 몰릴 때는 개발자를 일찍 퇴근시켜줄 아주 기특한(?) 시스템이라고 치켜 세웠다. 일단 컴파일에서의 속도가 기존 사용했던 어떤 시스템들보다 빠르다는 점에 높은 점수를 줬다. 임베디드 시스템 개발자들에게 컴파일의 속도는 그야말로 경쟁력이라고 한다.
시험을 담당했던 개발자가 코어 i5의 테스트를 마치는 마지막에 속도 체감을 할 수 있는 사례 하나를 보여줬다. 자바 개발자들이라면 많이 사용하는 Eclips 프로그램의 구동속도를 비교한 영상이다. 이 장면을 영상으로 담아보았다.
(성우의 몸상태가 좋지 않아서 목소리도 작고, 다소 시골스럽더라도 이해 바랍니다. -.-)
* 먼저 실행한 PC는 'Core i5 + Windows 7'이고 화면 전환 뒤 PC는 'Core2Duo + Windows XP' 환경이다.
* 테스트를 위해 도움을 주신 회사 담당자들께 감사의 말씀 전합니다.
반응형
댓글