【開発環境】
自作アプリケーションで用いているPPCのAltiVecコードをx86のSSE/SSE2コードに書き換える作業を行ってみました。「浮動小数点処理5%+OpenGL処理5%+整数処理90%」といった処理内容です。画像フィルタのように100%SIMD向きの処理ではなく、少々無茶な使い方なのですが(笑)それでもPowerMac G5でAltiVecに書き換えたところ、かなり処理速度が向上したので、SSE/SSE2にも期待していました。ところが結果は...
PowerMac G5 2GHz Dual (Normal) 53秒
PowerMac G5 2GHz Dual (AltiVec) 38秒
iMac Core Duo 1.83GHz (Normal) 20秒
iMac Core Duo 1.83GHz (SSE/SSE2)30秒
という感じで、SSE/SSE2を用いた方が遅くなってしまいました(涙)。まあ、Core Duo搭載のiMacはSSE/SSE2を使わなくても整数処理が大変高速なので、結果的にはまったく問題ないのですが(笑)、SSE/SSE2はAltiVecよりも使いどころを考慮しないといけないようですね。
AltiVecからSSE/SSE2への書き換えについては「Universal Binary化の実践」というセミナを開催して詳しく解説する予定です。興味ある方は是非ご参加ください。
http://www.mosa.gr.jp/htmdocs/article/seminar-180407.php
インテル社のウェブサイトには、以下のMac OS X向け開発ツールのβ版リリースが登録されています。これらMac OS X用ツールに関して、インテル社の担当にお話しを聞く機会に恵まれました。現在商品版を開発中であり近々発売時期を発表できるそうです。その時点でβ版のダウンロードはストップされるそうなので、興味ある方は今のうちにダウンロードして試してみましょう!
「インテル(R) C++コンパイラ 9.0」
「インテル(R) Fortranコンパイラ 9.0」
「インテル(R) MKL( Math Kernel Library)ライブラリ 8.0」
「インテル(R) IPP( Integrated Performance Primitives)ライブラリ 4.1」
http://www.intel.com/cd/software/products/asmo-na/eng/227389.htm
gcc以外の本家本元コンパイラが入手できるようになるのは、デベロッパとしても頼もしいかぎりです。これら商品の日本での販売はエクセルソフト株式会社が行い、1年間無料サポート(日本語Q&AもOK)が受けられるそうです。また上記ツール以外にも、インテル社製の「アナライザ(VTune)」「スレッド化ツール」「クラスタ・ツール」などもありますので、これらについてもMac OS X対応に期待したいと思います。
また、インテル社は4月6日と7日に、東京プリンスホテル パークタワーで「インテル・デベロッパー・フォーラム Japan 2006」を開催します。興味がある方は参加してみてはいかがでしょうか?
http://www.intel.co.jp/jp/idf/
【テクニカルドキュメント】
前回から2月24日の期間中、Apple社のDocumentationサイトには新規ドキュメントがひとつも登録されませんでした。その代わり、デベロッパ向け読み物は2つ登録されています。「Working with Quartz Composer」の方については、前号の木下さんの記事も参考にしてみてください。
「Taking Advantage of PDF Kit in Your Cocoa Application」(読み物)
http://developer.apple.com/cocoa/pdfkit.html
「Working with Quartz Composer」(読み物)
http://developer.apple.com/graphicsimaging/quartz/quartzcomposer.html
前回から2月24日の期間中、新規テクニカルノートは2つ登録されましたが、新規テクニカルQ&Aの方はひとつも登録されませんでした。テクニカルノートの方は、両方とも内容の改訂です。TN2125の方は、Windows用QuickTimeに関する記述が追加されています。
TN2118「Kernel Core Dumps 」
TN2125「Thread-safe programming in QuickTime 」
http://developer.apple.com/technicalnotes/index-rev-date.html
【サンプルソースコード】
前回から2月24日の期間中、Apple社のSample Codeサイトには、新しいサンプルソースコードがひとつだけ登録されました。Core Imageのフィルタを用いてQuickTime Movieを再生するCarbonアプリケーションです。Core Imageに関する機能はCocoa APIですので、CarbonアプリケーションモデルからObjective-Cで記述したルーチンを呼ぶことになります。QuickTime Movieの表示先には、AGLでコンテキストを設定したOpenGLの環境を使用しています。
「QTCarbonCoreImage101」(QuickTime関連)(初版)
http://developer.apple.com/samplecode/index-rev-date.html
【デベロップメント SDK】
前回から2月24日の期間中、Apple社のSDKサイトには新しいSDKが2つ登録されました。Mac OS X 10.4.5対応「Kernel Debug Kit」(PowerPC版とIntel版あり)です。
「Kernel Debug Kit 10.4.5 (Intel)」
「Kernel Debug Kit 10.4.5 (PowerPC)」
http://developer.apple.com/sdk/
また「Darwin Source Code」サイトに、Mac OS X 10.4.5に対応したPPC用とx86用のソースコードが登録されました。
「Mac OS X 10.4.5 (Darwin 8.5) for PPC」
http://www.opensource.apple.com/darwinsource/10.4.5.ppc/
「Mac OS X 10.4.5 (Darwin 8.5) for x86」
copyright 2006 Ottimo, Inc. All rights reserved
無断転載・引用禁止
Contact us: koike@ottimo.co.jp