「OpenCL」ってなに?
そもそも「OpenCL」とはなにものか?
いずれiPhoneアプリも無関係ではいられなくなる「OpenCL」について、Cocoaアプリの開発者ならみんな読んでいるであろうマイコミジャーナルのコラム「OS X ハッキング!」がわかりやすく解説してくれています。
OS X ハッキング! 305回 もっとわかりやすく「OpenCL」を解説する - マイコミジャーナル
つまり、「OpenCL」とは極端にいうと、CPUの仕事をそれ以外のチップに肩代わりさせる技術を手軽に利用するための仕組みを言うようですね。
特に、今や有り余るパワーを持つことになったGPUに処理を肩代わりさせる事で全体のパフォーマンスと操作性を向上させることができるようになります。
そして何より重要なのは、ソフトとハードの線引きがより明確になるという事。
プログラマでない人は意外に思えるかもしれないけど、ソフトを開発するうえで高いパフォーマンスを発揮するためにはプログラマはハードウェアの仕様の事をある程度知っておかなくてはならないんです。これは動作周波数がいくらとかといった次元の話ではなく、そのハードウェアが内部でどのように動いてデータを処理しているのかといった事をかなり細かく理解しておかなければ、そのハードウェアのパフォーマンスを引き出すことはできません。
極端な例だと、MacのCPUのPower PCとインテルチップ(x86系)の例があります。Power PCとx86系は全く中身の違うCPUなので同じプログラムを動かす事は出来ません。これが動くのはApple(とアプリの開発者たち)が様々な技術を駆使して表面上同じように動作するようにしているからです。
MacのCPUの例は極端でしたが、「OpenCL」の技術はプログラマがハードの専門知識を持たなくてもパフォーマンスの高いアプリを開発できるようになる技術なんです。
このことは、特に携帯電話のような組み込み機器で大きな意味を持ちます。今のケータイは高いパフォーマンスを維持するためにソフトとハードががんじがらめに絡み合っている状態です。
幾重にも絡まった知恵の輪を想像してもらったら良いでしょう。
「OpenCL」はこの絡み合った知恵の輪を解きほぐして一つ一つに分けてくれる技術といえるでしょう。
iPhoneアプリの開発環境であるiPhoneSDKは非常に強力な開発環境ですが、それでもいずれはiPhoneの性能の限界を引き出すためにクリティカルで綱渡りのようなソースを記述するときがくるでしょう。
そんなとき、「OpenCL」があればプログラマは無理をする事無くハードウェアの限界を引き出すことができるようになります。
「OpenCL」がiPhoneのシステムの一部となったとき、あなたはきっと今まで以上に素晴らしい体験が出来ると思いますよ。(*)
(*) と、なったらいいなぁ……。 いや、マジでw
Sponsored link
| 固定リンク
|
« KONAMI、iPhoneアプリ配信開始。第一陣は「SILENT HILL The Escape」「DanceDanceRevolution S Lite」「フロッガー」の三作品。 | トップページ | ほんとにiPhone nanoはでるの?制作者としては、正直なところ出て欲しくないんですが。 »
「iPhone」カテゴリの記事
- Appleスペシャルイベントまとめ(2010.09.02)
- 「電波疑獄」次なる一品はこちらです。(2010.07.21)
- 今週の一言。(2010.07.21)
- Apple、iPhone4用バンパーを無料頒布へ。(2010.07.17)
- Apple、本日特別会見。(2010.07.17)
「iPhoneアプリ開発」カテゴリの記事
- 日本語で依頼できる、iPhoneアプリ説明文の翻訳サービスをいくつか。(2010.05.24)
- Adobeの隠し球炸裂。iPhoneアプリを作れる「Flash Professional CS5」(2009.10.07)
- あなたもiPhoneアプリクリエイターになりませんか?
iPhoneアプリクリエイター発掘・育成プロジェクト「寺子屋 - 青りんご」(2009.10.05) - 【ゲーム開発者の皆様へ】
デジタルコンテンツ協会、「ゲーム開発者の実態調査」アンケートを実施中。(2009.10.05) - 【書評】iPhone SDK 3 プログラミング大全 ゲームプログラミング(2009.09.28)
「個人的メモ」カテゴリの記事
- 日本語で依頼できる、iPhoneアプリ説明文の翻訳サービスをいくつか。(2010.05.24)
- あたらしい世界を迎えるアナタへ。(2010.02.06)
- お手軽にiPhoneゲームを作りたいだと!?ならばこれを使いたまへ!!的な、iPhoneゲーム制作を支援するフレームワーク。(2009.05.22)
- 大容量iPhoneアプリをインストールする際の注意事項。(2009.05.03)
- iPhoneアプリで、OpenGLを使うには。(2009.01.23)









コメント