60
ハードウェアヘルパー: あなたとG4

Hardware Helperには、たくさんのメールが届いています。その多くは、新しいG4プロセッサに関する質問、推測、嘲笑、称賛、憶測などです。私はそれらの質問のほとんどに回答しましたが、これらのメールはすべて、この件についてより多くの情報が必要であることを改めて浮き彫りにしています。新しいG4システムの購入を検討している方、現在のシステムをG4にアップグレードしたい方(「G4アップグレードカードの購入方法」も参照)、すでにG4をお持ちの方、あるいは単にG4プロセッサについて興味がある方は、ぜひこのまま読み進めてください。

チップはいくつの道を歩かなければならないのでしょうか?

G4は、Appleの協力を得てMotorolaが開発した最新のPowerPCマイクロプロセッサです。約2年間の開発期間を経て、1999年10月中旬に発売されました。当初は400MHz、450MHz、500MHzの速度で生産される予定でしたが、Motorolaの製造上の問題により、350MHz、400MHz、450MHzの速度で出荷されました。そのため、AppleはG4 Power Macの出荷を延期せざるを得なくなり、また昨秋にはG4製品ラインの全製品から50MHzの速度を急遽削減せざるを得ませんでした。幸いなことに、これで全て解決しました。AppleはG4を販売し、速度も回復し、Motorolaはこのチップの生産を完璧に完了しました。

G4の動作はG3と似ています。FPU( 浮動小数点ユニット、 高度な数値計算を処理するチップ上の実行ユニット)はG4の方がG3よりも強力ですが、プロセッサ全体の性能はほぼ同じです。実際、G4は、G3アーキテクチャへの変更は、G4のマルチプロセッシングまたはマルチメディアパフォーマンスの向上につながる場合にのみ行うという前提で設計されました。G4には、高速化されたFPU以外にもハードウェア面での改良が加えられています。メモリ管理ユニット(MMU)が改良され、より多くの物理RAMと最大2MBのL2キャッシュをサポートできるようになりました。

しかし、G4とG3の大きな違いは、128ビットのベクター実行ユニットと、それを制御するオンチップハードウェア、そして新しい命令群 の追加です 。これはAppleがVelocity Engineと呼ぶ技術ですが、MotorolaはAltiVecと呼ぶことを好みます。

AltiVecについて

G4アーキテクチャの大きな速度向上は、AltiVecによるものです。標準のPowerPCアーキテクチャに追加されたこの技術は、G4が単にデータ処理 速度が速いだけでなく、 G3とは全く異なる方法で処理することを意味します。つまり、G4は複数のデータ部分を同時に処理することが可能です。128ビットのデータを16個の8ビットブロック、8個の16ビットブロック、または4個の32ビットブロックに分割することが可能です。

AltiVecは、特定の種類の問題の解決に大きなメリットをもたらします。例えば、AltiVecテクノロジーを搭載したG4は、G3よりも数倍高速に2Dおよび3Dグラフィックスをレンダリングできます。また、AltiVecはサウンドのエンコード、オーディオデータの操作、ハイエンドの暗号化アルゴリズムの処理も、前世代機よりも高速に行うことができます。

ただし、落とし穴があります。Macが680×0プロセッサからPowerPCに移行した時のような状況では、この新しいパワーを活用するには、ソフトウェアをAltiVec/Velocity Engineに対応させるように修正する必要があります。ソフトウェアがAltiVecに対応しない場合は、同じ速度の標準のG3と同じように動作します。

お使いのプログラムがAltiVecを活用するために変更されているかどうか知りたいですか?Hardware Helperが、彼と Macworldの尊敬すべき同僚数名が G4向けに最適化されていることを確認したアプリケーションのリストを作成しました。

AltiVecの活用

G4 が AltiVec を使用して特定の命令をより効率的に処理する利点を確認するために、現実世界の小さな問題を考えてみましょう。画面上の 8 つのピクセルを赤から青に変える必要があります。

G3では、プロセッサは1つのピクセルの位置のデータをメモリに読み込みます。そして、そのピクセルを青に変更するための計算を行います。その後、G3はそのピクセルを退避し、次のピクセルの処理を開始します。AltiVecを搭載したG4では、プロセッサは各ピクセルのデータを、AltiVecが処理できる8つの16ビットデータブロックのいずれかにキューイングできます。その後、G4は8つのピクセルデータセットすべてに一度に変更を適用し、すべてを一度に青に変更します。その後、G4はそのデータをすべて退避し、次のタスクに進みます。

このような並列処理により、G4はより大きなチャンクでデータを処理できます。しかし、これらの命令はマルチメディアアプリケーションや暗号化などに最も有効です。PhotoshopがG4向けに最適化された最初のアプリケーションとなったのには理由があります。AltiVecのサポートによって大きなメリットを享受できるからです。

次の疑問は、なぜ あらゆるものが AltiVecを活用できないのか、ということです。なぜモトローラはAltiVecをさらに複雑にして、より幅広いアプリケーションで動作するようにしなかったのでしょうか?

RISCのG4

G4は、PowerPCファミリーの他の製品と同様に、RISC(縮小命令セットコンピュータ)プロセッサです。CISC(複雑命令セットコンピュータ)プロセッサと呼ばれる別のクラスのチップもあります。例えば、PentiumはCISCプロセッサです。CISCプロセッサは、プロセッサが実行できる大規模で複雑な命令セットを備えていますが、RISCプロセッサは、シンプルで高速な命令セットを備えています。

RISCの根底にある考え方は、プロセッサが理解できる命令の数を減らすことで、残りの命令をより効率的に実行できるというものです。ほとんどのプロセッサは少数のタスクを常に実行し、他のタスクをめったに実行しないため、あまり使用されない命令を削除することでパフォーマンスを大幅に向上させることができます。プロセッサがこれらのタスクを実行するには複数のステップが必要になりますが、それらのタスクは非常にまれにしか使用されないため、最も頻繁に使用される命令を合理化することによるメリットは、複雑な命令による速度低下を上回ります。

プロセッサは1秒間に数百万もの命令を実行できます。プロセッサの速度定格(MHz)はまさにこのことを意味しています。400MHzのプロセッサはすべて1秒間に4億サイクルを実行します。しかし、その400MHzのプロセッサが必ずしも1秒間に4億命令を実行するわけではありません。プロセッサは、ハードドライブやRAMからデータが到着するのを待つために、何もせずに待機している場合があります。さらに、プロセッサが1つの命令を完了するのに1サイクル以上かかる場合もあります。

G4にAltiVec命令を追加すると、チップが若干複雑になります。そのため、AltiVecはRISC命令セットを可能な限り小さく、合理化するよう慎重に設計されています。複雑な命令が多すぎると、RISCアーキテクチャの全体的な目標に反してしまいます。

RISCとCISCのどちらも本質的に優れた方式ではないことに注意することが重要です。どちらにも長所と短所があります。技術の進歩によってCISCプロセッサがより良い選択肢になる可能性は十分にあります。しかし、今日の技術の観点から見ると、RISCの方が効率が良いように見えます。だからこそ、G3とG4は、よりクロック速度の高いIntelやAMDのチップよりも優れた性能を発揮できるのです。

最後の言葉

G4は、G3よりも大幅に高速です。G4の性能を最大限に活用できるように最適化されたアプリケーションであれば、G3よりも大幅に高速です。しかし、すべてのアプリケーションでG4の性能を最大限に活用できるわけではありません。G4はマルチメディア処理に最も適しており、一般的にはマルチメディア処理向けのアプリケーションが最適化されています。あらゆるアプリケーションでAltiVecを利用できる部分はありますが、現時点ではAltiVecを最大限に活用できるアプリケーションのみが最適化されています。G4マシン、特にG4へのアップグレードを検討する前に、普段どのようなタスクを実行しているかを理解し、高速なG3の方がパフォーマンスが向上するかどうかを検討してください。

もし最終的にG4への羨望に苛まれているだけだと判断されたら、それを素直に認めましょう。そして、それがG4を購入する理由だと確信し、クレジットカードを取り出しましょう。

Macworld.com編集アシスタントのDAVID READ([email protected] )は、夜になると黒いマントを羽織り、ハードウェアヘルパーとして活躍します。日中はMacworldでビジネスソフトウェアとシステムハードウェアを担当しています。