サンフランシスコ発--Appleは、ムーアの法則がコンピュータチップを導いてきた新たな方向性に対応し、Mac OS Xの性能向上を目指している。
Appleが主催したWorldwide Developer Conference(WWDC)において、Mac OSのエンジニアリング担当バイスプレジデントのCraig Federighi氏は、Mac OS X 10.6である「Snow Leopard」で、マルチコアのプロセッサおよびグラフィックスプロセッサを最大限に活用可能な新技術「Grand Central Dispatch」へと注目を集めた。
コンピュータチップは長年、より高速のクロックスピードによるパフォーマンス向上を図ってきたものの、多くのプロセッサエンジニアが、過度の消費電力を要求し、過剰な熱を生じさせるチップに関する問題に悩まされてきた。さらに、クロックスピードの高速化は、時として、メモリアクセス速度が対応しきれず、チップが早期にアイドル状態に達することをも意味してきた。
そこで、新たな方向性として、同一のチップ上に、複数の処理エンジンを搭載するマルチコアプロセッサという手法が採用されている。しかしながら、このアプローチを取ることで、典型的なPCソフトウェアが、1度に1つのスレッドの指令を受けて稼動するように記述されていることに起因する問題も浮き彫りになった。マルチコアプロセッサは、ソフトウェアが、同時に複数の処理を実行可能な時に、最大限に威力を発揮するものの、これは、プログラムの側に、よりタイトな要求が課されることを意味している。
Grand Central Dispatchは、マルチスレッド構造のソフトウェアのプログラミング、OS側のサービス利用、プログラム実行能力の最適化などを容易にし、ソフトウェア開発者が、この問題に適切に対応できるように設計されている。
また、Federighi氏によれば、Macで複数のスレッド処理を向上することにもつながっているという。たとえば、Appleの「Mail」アプリケーションを利用中、現在のMac OSである「Leopard」では、アイドル状態の時も、ビジー状態の時も、ほぼ同じ数のスレッドを用いている。
だが、Federighi氏は「ビジー状態の時、マルチコアを最大限に活用すべく、複数のスレッドを用いる。一方、アイドル状態の時、すべてのスレッドは開放され、全リソースがシステム側に戻される。もし、あらゆるアプリケーションに、この法則を適用できるならば、パフォーマンスや応答速度などの面で、多大の恩恵がもたらされるだろう」と語った。
新たなMac OS Xでは、「General-Purpose Graphics Processing Unit(GPGPU)」と呼ばれるプログラミング技術もサポートされており、グラフィックスチップが、グラフィックスの表示という通常のタスクに加え、他のコンピューティングタスクも実行可能となっている。
このGPGPUテクノロジを動作させるために、Appleは、「OpenCL」という、NVIDIA、AMD傘下のATI、Intelや他のグラフィックスチップメーカーをサポートするC言語ライクなプログラミング技術を用いている。
グラフィックスチップが、あらゆる種類のコンピューティングタスクに適しているというわけではないものの、次々と表示が変化する建造物、跳ね返るボールといった、現実世界のアクションのシミュレーションで必要となる、しばしばテレビゲームで要求されるような数学的な計算処理には適している。
Mac OS Xは、9月に29ドルのアップグレード価格で発売される。前回の(Leopardへの)アップグレード価格は129ドルであり、大幅な値下げが行われた。
さらに、Appleは、急速に普及してきている、64ビットのx86プロセッササポートにも取り組んでいる。64ビットプロセッサの大きなメリットの1つに、4Gバイト以上のメモリのサポートが挙げられる。Federighi氏は、FFT(Fast Fourier Transforms)の処理速度が倍に向上するなど、数学的処理の高速化をアピールしている。
Appleは徐々に、Mac OS Xで、完全な64ビット対応を進めることに取り組んできた。「Snow Leopardでは、あらゆる主要なアプリケーションが、64ビットモードで記述される最終段階に達する」と、Federighiは述べている。
この記事は海外CBS Interactive発の記事をシーネットネットワークスジャパン編集部が日本向けに編集したものです。 原文へ
CNET Japanの記事を毎朝メールでまとめ読み(無料)
ものづくりの革新と社会課題の解決
ニコンが描く「人と機械が共創する社会」
ZDNET×マイクロソフトが贈る特別企画
今、必要な戦略的セキュリティとガバナンス