|
스노우 레퍼드에서 지원하는 3가지 핵심 기능
스노우 레퍼드는 64비트 지원 멀티 코어 프로세서와 고성능 GPU가 탑재되는 그래픽, 그리고 32비트 운영체제의 수용 한계를 넘어선 대용량 메모리(RAM)가 제공되는 하드웨어 환경 변화에 맞춰 3가지 핵심적인 기술 변화를 꾀했다고 밝혔다.
64비트 운영체제로의 전환
첫 번째는 바로 64비트 운영체제로의 전환인데 기존 32비트 운영체제로는 4GB 메모리도 제대로 지원하지 못하는 상황이었으나, 64비트로 전환하면서 이론상 최대 160억 기가바이트의 메모리를 사용할 수 있게 되었다.
또한 64비트 연산 기능을 지원하므로 64비트 만들어진 애플리케이션에서는 최대 2배 가량 빠른 속도를 구현한다.
애플은 스노우 레퍼드에 들어가는 OS X의 주요 애플리케이션 15가지를 모두 64비트 버전으로 다시 만들어 성능을 향상시켰다. 스노우 레퍼드에 탑재된 64비트 메일 기능을 사용하면 기존 레퍼드보다 메시지 이동 시간은 2.3배 빨라졌고, 검색 기능은 1.9배, 실행 속도는 1.8배 빨라졌다.
그리고 스노우 레퍼드는 윈도우처럼 32비트와 64비트 버전을 따로 발매하지 않고 하나의 운영체제 안에 32비트 및 64비트를 모두 지원하도록 설계되었다.
물론 MS 윈도우도 64비트 버전에 32비트 애플리케이션을 설치할 수 있게 프로그램 설치 경로가 별도로 제공되고 있지만 스노우 레퍼드에서는 드라이버 지원 장치가 반드시 64비트 버전을 갖지 않는다고 하더라도 32비트 드라이버를 설치하면 32비트 환경에서 돌아갈 수 있다고 한다.
멀티 코어 CPU를 위한 GCD(Grand Central Dispatch)
두 번째 핵심 기술 변화는 멀티 코어에 대한 적극적인 지원이다. 현재의 CPU가 발열이나 기술 한계로 CPU 클럭 경쟁을 멈춘 대신 코어 숫자를 늘려서 멀티 스레드 환경에서의 성능을 향상시키는 멀티 코어(Multi Core) 경쟁에 들어섰기 때문에, 인텔 CPU를 사용하는 애플도 Mac OS X에 멀티 코어에 최적화된 기능을 탑재했다.
최대 8개의 멀티 코어를 지원할 수 있는 스노우 레퍼드는 멀티 코어를 통해 제공되는 더 많은 스레드 처리 기능을 활용하기 위해 GCD(Grand Central Dispatch)를 발표했다.
GCD는 소프트웨어 개발자들이 그들의 애플리케이션을 멀티 코어를 위해 완전히 다시 만들지 않고도 일부분을 GCD를 이용해 재작성하면 멀티 스레드 환경에 최적화된 성능을 낼 수 있다고 한다.
예를 들어 기존 OS X 10.5 레퍼드의 메일 기능에 대한 스레드는 메일을 사용할 때나 사용하지 않을 때나 일정한 스레드를 차지하고 있었지만, GCD가 적용되면 메일 기능을 이용할 때는 종전보다 많은 스레드를 할당하고 사용하지 않을 때는 스레드를 최소화해서 시스템 자원을 원활하게 이용하도록 개선되었다.
GPU를 이용한 개방형 표준, OpenCL 지원
세 번째 핵심 기술은 OpenCL(Open Computing Language)에 대한 지원이다.
일찍이 보드나라에서도 기사로 다룬바 있는 OpenCL은 그 동안 엔비디아나 AMD와 같은 그래픽 칩셋 제조사들이 GPU를 이용한 독자적인 병렬 컴퓨팅 기술(CUDA, ATI Stream)을 제공했던 것과 달리, CPU와 GPU를 비롯해 다른 프로세서들에서도 이를 이용해서 컴퓨팅 리소스를 제어할 수 있게 하는 일종의 API 개념이다.
CPU와 GPU는 자신에게 맞는 개별적인 프로그래밍 기술을 가지고 있는데, OpenCL에서는 이 둘 사이의 차이에 따른 문제점을 개선하고 이들을 범용적인 목적(병렬 컴퓨팅)이 가능하도록 공통 분모를 만들어 효율성을 극대화 시키게 된다.
애플은 이미 2008년 6월부터 AMD, 인텔, 엔비디아를 비롯한 다른 여러 기업들과 함께 OpenCL 워킹 그룹을 만들었고, 표준 공식 기관인 Khronos Group에 OpenCL
스펙의 초안을 제공하는 등 사실상 OpenCL 도입을 주도해왔다.
AMD와 엔비디아의 성능 경쟁을 통해 이미 단일 GPU가 1테라플롭스(TeraFLOPs) 이상의 성능을 제공하는 시대에 왔는데, 애플은 OpenCL이 C 기반의 언어로 구성되어 사용하기 쉽고 자동 최적화와 수치 정확성을 통해 하드웨어 성능을 최대한 끌어낼 수 있을 것으로 전망했다. 특히 개방형 표준으로 무료로 제공되기 때문에 주요 기업들이 OpenCL의 멤버로 참여하고 있다고 밝혔다.
OpenCL에 대한 보다 자세한 내용은 보드나라의 이전 기사 'OpenCL 1.0 표준 승인에 따른 병렬 컴퓨팅 환경의
변화'를 참고하기 바란다.
|