2009년 1월 29일 목요일

소프트웨어가 멀티코어 칩의 발목을 잡게 될까?

 Gartner는 수요일에 멀티 코어 프로세서의 급속한 성장과 각 프로세서가 처리할 수있는 쓰레드의 개수들이 소프트웨어에 미치는 영향에 대해 경고를 했습니다.

 현재 소프트웨어는 프로세서 당 2개내지 4개의 코어제품에서 더 빠른 속도를 내도록 노력하고 있으며, 하이엔드 서버에선 8개에서 32개까지 있죠. 지금으로 부터 4년안에 소켓당 1024개를 지닌 제품을 볼 수도 있을 것이라고도 하죠.

 분석가 Carl Claunch는  "사용중인 소프트웨어 구성의 대부분은 오늘날의 하드웨어 구성에서 가능하도록 지원하고 있고 미래에는 더욱 가속화될 것입니다."라고 말했습니다.

 첨단 멀티코어 머신에 현재의 소프트웨어를 돌리는 것은 "유모차에 페라리 엔진을 장착한 것과 같다"고 말했습니다.

 문제는 오늘날 칩 설계의 혁신 속도라고 Claunch는 말했다. 더 많은 코어와 각 코어에 더 많은 쓰레드를 추가할 수 있는가가 칩 개발의 쟁점이라고 덧붙여 말했다. 매번 세대가 바뀔때 마다 같은 수의 소켓에 들어가는 프로세서의 수는 2배로 늘어나고 있다.

Claunch는 오늘날 서버에 실행하는 소프트웨어는 모두 프로세서의 수에 Hard Limit과 Soft Limit을 가지고 있으며, 문제의 일부는 한계가 존재하지만 그것을 찾기 어렵다는데 있다고 덧붙였다

 운영체제는 프로세서번호를 8비트 필드에 잡아 사용하기 때문에 256개 프로세서라는 Hard Limit이 존재한다고 합니다.
 Soft Limit은 실제 상황에서 구전을 통해서 발견되는 경우로, 소프트웨어 설계의 특성이 원인으로 더 많은 프로세서를 추가했음에도 성능 증가가 형편없거나 많은 경우 유용한 작업의 감소를 치르게 된다고 합니다.

결론은 소프트웨어 기인한 문제로 시스템 아키텍쳐의 한계가 발생했고, 해결책은 멀티코어의 발전에 따라 새로운 운영체제로 마이그레이션을 서둘러야 한다는 얘기가 되겠죠.

 다른 작업을 하면서 한거라 일부 주요 내용만 편집한데다 의역도 좀 심합니다.
자세한 내용이 궁금하시면 ZDnet Uk에 방문해 확인하시기 바랍니다.

 멀티 코어 기술은 엄청난 속도로 발전하고 있지만 소프트웨어와 운영체제는 그 속도를 따라가질 못하고 있었네요.

 특히, Intel이 코어가 많아질 경우 발생할수 있는 문제를 시험하기 위해 1,000개의 코어를 가진 CPU의 개발을 발표하고, Dell이 수년안에 80개 코어를 가진 제품을 선보이겠다는 로드맵을 작년 11월에 발표하기도 한 것을 생각하면 너무 많이 뒤쳐져 있네요.

 지금의 개발속도를 감안하면 현재의 소프트웨어와 운영체제는 몇년안에 나올 칩을 제대로 받쳐주질 못해 오히려 성능 하락이 발생하거나 자원을 제대로 활용하지 못해 일부 코어는 작업을 분배받지 못하는 일도 생기지 않을까 싶네요.