かつて、チップメーカーは処理速度を向上させることで、コンピューターチップの性能を毎年向上させてきました。しかし近年、マイクロプロセッサ業界は処理速度に根本的な限界に直面しています。そのため、チップメーカーは方向転換を余儀なくされ、より優れた性能を求めて別の道を模索せざるを得なくなりました。最新の解決策は、複数のプロセッサコアを搭載したチップを設計することです。その結果、今日の高性能チップは、 ソフトウェアを設計に合わせて変更する ことで、これまで以上に多くの処理能力を発揮します。
クロック速度を超えて
わずか1年前まで、ほとんどのMacに搭載されていたプロセッサは、計算処理の大部分を担う頭脳であるシングルコアでした。複数のコアを搭載していたのは、最もパワーを必要とするプロフェッショナル向けのハイエンドPower MacシステムのCPUだけでした。しかし現在では、販売されているすべてのMacモデルに少なくとも2つのプロセッサコアが搭載されています。つまり、独立した2つの頭脳が1つのチップに詰め込まれているのです。Mac Proには デュアルコアチップが2つ搭載されており、合計4つのプロセッサコアを備えています。そしてIntelも最近、 4つの プロセッサコア を搭載したチップを発表しました 。
従来のシングルコアコンピュータは、非常にシンプルに動作しました。Macに必要な処理はすべてパイプラインに投入され、Macのプロセッサは各項目を順番に、可能な限り高速に処理していました。チップが高速であればあるほど、コンピュータの動作速度も速かったのです。
しかし、チップの速度が停滞し始めると、IBM、Intel、AMD などのチップメーカーは、プロセッサ コアの追加という別の速度向上策に目を向けました。
あなたのソフトウェアは優れていますか?
Mac OS Xはデフォルトで、与えられたすべてのタスクを最も余裕のあるプロセッサコアに割り当てます。また、デフォルトでは、実行するすべてのプログラムは単一の自己完結型タスクです。つまり、(あくまで仮定の話ですが)16コアのMacで16個のプログラムを実行している場合、実質的に各プログラムが1つのコアを占有することになります。
|
| オリバー・ウルフソンによるイラスト |
しかし、膨大な処理能力を必要とするプログラムが1つあったらどうでしょうか?OS Xがそれを単一のタスクと見なした場合、オペレーティングシステムはそれを1つのコアに割り当てるだけなので、そのプログラムはMacの総処理能力の16分の1しか使用できません。
もちろん、それは受け入れられません。そのため、ほとんどのハイエンドプログラム(Adobe PhotoshopやAppleのFinal Cut Proなど)は、処理を小さなタスクに分割し、それぞれを異なるプロセッサコアに分散させるように設計されているのです。
マルチコア Mac がほぼ普及した現在、あらゆる種類のアプリケーションのプログラマーは、ソフトウェアを複数のコアをサポートするように修正し、機能を小さなタスク セットに分割して、次に利用可能なプロセッサ コアに簡単に委託できるようにする必要があります。
さらに、マルチコアシステムに対応できるよう既に変更されているソフトウェアも、より効率化を図る必要があります。初代Intel iMacのテストでは、3Dレンダリング、iTunes MP3エンコード、iPhotoインポートといった一部のタスクが両方のコアを効率的に使用していました。また、別のテストでは、iMovieの一部のフィルターが全く効率が良くないことが判明しました。Photoshop自体もばらつきがあり、一部のタスクではマルチコア向けに非常に最適化されていましたが、他のタスクでは全くマルチコアに適していませんでした。
いずれにせよ、コンピュータ性能の未来はもはやチップメーカーだけの手には負えないようだ。少なくともある程度は、ソフトウェア開発者へと権力が移行している。チップメーカーはコンピュータ筐体内の電力を継続的に増加させる方法を見つけてきたが、プログラマーはそれを最大限に活用する方法を見つけなければならないだろう。
購入アドバイス
Macユーザーはどうすればいいのだろうか?ある意味では、できること はあまりない 。現在購入できる新しいMacは、複数のプロセッサコアを搭載したものだけだ。しかし、別の観点からは、声を上げるべきだ。あなたが最も重要と考えるソフトウェアプログラムを開発している企業に、そのアプリケーションがあなたのマルチコアMacを最大限に活用できているか聞いてみよう。AppleのCHUDツールをダウンロードし、プロセッサコアを1つ無効にした状態で自分のMacをテストすれば、お気に入りのプログラムが、あなたが支払ったIntelの処理能力を本当に活用できているか確認できる。当面は、IntelとAppleは、ますます多くのプロセッサコアを搭載したチップとコンピュータをリリースし続けるだろう。だから、Intelが4コアチップをリリースし、AppleがMac Pro(Octopus?)にその4コアチップを2つ搭載したとき、それらのパワーを活用できるMacソフトウェアが数多く登場することを期待しよう。
[ Jason Snell は Macworld の編集ディレクターです。 ]