Adobe PhotoshopのエンジニアがIntel Macの課題を詳細に解説 | AppleInsider

Adobe PhotoshopのエンジニアがIntel Macの課題を詳細に解説 | AppleInsider

プリンス・マクリーンのプロフィール写真

· 2分で読めます

Adobe Photoshop に携わるソフトウェア エンジニアは、同社がハイエンド グラフィック スイートの次のメジャー リリースまでネイティブ Intel Mac サポートを提供しない決定を下したのは、Apple Computer の Xcode 開発環境への移行に伴う膨大な作業のためだと語っています。

先月、Adobe の最高経営責任者であるブルース・チゼン氏は、Photoshop、Illustrator、InDesign、GoLive、Acrobat の次期メジャーリリースを含む Creative Suite 3 は 2007 年第 2 四半期までは提供されないと述べた。

「最初の(68Kから)PowerPCへの移行が終わったとき、Appleは賢いやり方をしました。本当に賢いやり方です」と、Adobeのエンジニアであるスコット・バイヤー氏は自身のウェブサイトに書いています。「68Kコードを実行するエミュレータは、PowerPCコードを呼び出すタイミングを認識し、Universal Procedure呼び出しベクトルを使ってスタック上のデータを操作していました。」

これにより、Adobe は、顧客に配布されたプラグインを通じて、68k の「重い」ルーチンの多くを PPC ネイティブ バージョンに置き換えることができました。

「プラグインを使うことで、Photoshopは完全にネイティブなアプリケーションと同等の速度向上を実現できました。しかも、ここが重要なポイントなのですが、Photoshopのコードの大部分を再コンパイルする必要はなく、それに伴うテストの負荷、膨大なデバッグ作業、その他あらゆる作業も必要ありませんでした」とバイアー氏は記している。「今回は様々な理由から、それが不可能でした。」

開発者がユニバーサルバイナリ(PowerPC MacとIntel Macの両方でネイティブに動作するアプリケーションのバージョン)を適切に構築するには、アプリケーションのコードベースをAppleのXcode開発環境に移行する必要があります。「つまり、今回は、Photoshopのプラットフォームで利用可能なパフォーマンスのほとんどを短期間で実現できる、低料金の選択肢がないということです」とByer氏は記しています。「つまり、近道はないということです。」

「そうなると、実際に作業を行う必要があります。アプリケーション全体を XCode に移植し、ユニバーサル バイナリとして再コンパイルするのです」と Byer 氏は続ける。「そして、それは決して簡単な作業ではありません。」

AppleのXcodeは比較的新しい開発環境であるため、多数のファイルを高速に開くような非常に大規模なプロジェクトの開発にはこれまで不向きだったとバイアー氏は説明した。そのため、アドビはこれまでVisual StudioとMetroworksの開発環境に依存してきた。これらの環境は、よりコンパクトなデバッグ情報と、ソース管理システムでテキストマージ可能なより安定したプロジェクト形式を特徴としている。 

「これらはXCodeが追い上げを図っている点です」とバイアー氏は述べた。「現在、Appleは驚くべき速さで追い上げを見せていますが、実のところ、大規模なアプリケーションをうまく処理できるXCodeはまだ完成していません。そして、この規模のコードベースでは、コンパイラの切り替えには想像以上に多くの作業が伴うのです。」

Adobe が同社のソフトウェアスイートの現在のバージョンである Photoshop CS2 のユニバーサルバイナリをリリースするのは「まったく意味がない」とエンジニアは主張する。

「ツールセットの切り替え、つまりエンジニアリングと品質エンジニアリングの両方で膨大な作業量が発生すること、Photoshop CS2のリリースから既にどれほど時間が経っているか、そしてワークステーションクラスのマシンがまだ準備できていないことを考えると、皆さんも同意されると思います」とバイアー氏は書いている。「その頃にはきっとかなり強力なIntelベースのタワーマシンになっているであろうそのマシンのパワーを、Photoshop CS3が最大限に引き出せるようにすることに集中する方が、古いコードベースを新しいツールに移行する膨大な作業を行うよりもはるかに良いのです。」