Core Image(コアイメージ)

投稿者: | 2019-07-14

初版作成日 2019年7月14日
最終更新日 2019年7月14日

プログラマブルGPUが有する処理能力を活用するためのパイプライン的な役割を果たす

米Appleより開発、提供等が行われている、アプリケーションフレームワーク。macOS(Mac OS X)、iPad OS、iOSを対象プラットフォームとし、米国時間2005年4月29日付にてリリースされた「Mac OS X 10.4 Tiger」において、中核機能の一つとして新たに実装された。グラフィックス関連機能をサポートする「Core」モジュールの一つとして、「Graphics and Media」カテゴリに属しており、独立したアプリケーションではなく、システムレベルで実装されている。

プログラマブルGPUが有する処理能力を最大限に活用するためのパイプライン的な役割を担っており、CPUやGPUの種類、或いはプロセッサ(コア)数の違いに起因する最適化の相違の吸収等に貢献。持ち得る諸機能により、種々のグラフィックス処理(レンダリング、フィルタ、合成、トランジション等)時における積極的なGPUの活用を可能とし、CPUリソースをグラフィックス処理から極力解放すべくした役割等を果たしている。また、プログラマブルGPU非搭載機種においても、CPUに対してグラフィックス処理の最適化を行う等、Mac OS Xにおけるグラフィックス処理に多大な影響を齎すに至っている。

アプリケーションが「gslang」で記述されたフィルタを実行する場合には、メーカーが異なる各種GPUのシェーダのコードにコンパイル、最適化を行った上で送付している(コードの最適化には、オープンソースのコンパイラ基盤「LLVM(Low Level Virtual Machine)」を利用している)。

「Core Image」は、「Quartz Extreme」との比較においてもハードウェア要件は高くなっており、持ち得るポテンシャルをフルに活用するためには「DirectX 9」以降に対応したグラフィックスカードが必須となる。実装当初は、「System Profiler(システムプロファイラ、Applications/Utilities/System Profiler.app)」における「Hardware(ハードウェア)」>「Graphics/Displays(グラフィック/ディスプレイ)」に「Core Image」項目が存在し、対応システムにおいては「Hardware Accelerated(ハードウェアによる高速化処理)」と表示されていた。

採用アプリケーションと、その他の「Core」モジュール

当グラフィックスフレームワークは、Pixelmator Teamによるラスターグラフィックスソフトウェア「Pixelmator Pro」、オープンソースの「GIMP(GNU Image Manipulation Program)」からフォークした「Seashore」等に採用されている。

その他にもmacOS、iPad OS、iOSには、マルチメディアAPIとGPU間において最適化を行うためのパイプライン的な役割等を担う「Core Video」、各種オーディオデバイス用のAPIとして実装されている「Core Audio」、及び「Mac OS X 10.5 Leopard」以降において 各種出力をアニメーションに纏めるべくした役割等を担う「Core Animation」等のメディアフレームワークも実装されている。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA