CTKの概要

提供: CTK: Cell ToolKit Library
移動: 案内検索

メインページ」に戻る / 「CTKユーザマニュアル」に戻る

目次

CTKとは?

  • CTK (Cell ToolKit)とは、Cell Linux上でのC/C++言語によるプログラム開発を支援するためのオープンソースのライブラリです。
  • SPEプログラムの実行制御や複数SPEプログラム・PPEプログラム間の並列処理のための基本的なAPIを提供します。また、典型的なSPE呼び出しのためのいくつかのC++テンプレートを定義しています。
  • CTKのもっとも基本的な目標は、Cellプログラミングをより書きやすくすることです。「ものすごく便利な機能」は提供していませんが、Cellプログラムを書く上で誰もが書かなければならないようなコードをなるべく少なくするためのAPIを数多く提供しています。
  • CTKを使って開発されたアプリケーションは、IBM, Sony, 東芝の各種Cell Linux環境上でソースコードレベルの互換性を持ちます(SPEモジュールはバイナリレベルで互換性があります)。また、セルフ・クロスのどちらでもCTKを使った開発が可能です。
CTKは、IPA (情報処理推進機構) の2006年上半期のオープンソースソフトウェア事業の支援を受けて開発されました。

CTKが提供する主なAPI

  • CTKは主に以下のようなAPIを提供します:
    • SPEコンテキストおよびSPEスレッドの実行と制御
    • SPEスレッドグループの実行と制御
    • SPE間、あるいはPPE・SPE間での同期のためのプリミティブ
    • DMA転送、メールボックス通信、シグナル通知のためのヘルパAPI
    • SPEオーバレイタスクの実行と制御
    • SPEプログラムの関数オブジェクト化テンプレート
    • PPEコールバックの定義と呼び出しのためのヘルパテンプレート
    • 共有メモリ領域のためのテンプレート
    • アラインされたメモリ領域の確保、SPE上でのスリープ、デクリメンタあるいはタイムベースレジスタを使ったプロファイリング(計時)、DMAダブルバッファなどのための各種ヘルパAPI

CTKが動作する(可能性のある)環境

  • CTKは以下の環境でビルドおよび実行をテストしています:
    • Sony PS3 + Libspe 1.0, 1.1 or 1.2
    • Sony PS3 + Libspe 2.0.0, 2.0.1 (SCEパッチ版) or 2.0.2
    • IBM Cell Blade + Libspe 2.0.0
    • 東芝Cell Reference Set + 東芝SDK環境
(* CTKは、LibspeあるいはLibspe相当の下位SPEライブラリに依存しています)
  • また、以下の環境でのビルドをテストしています:
    • Intel x86 PC + 東芝SDKクロス開発環境
    • Intel x86 PC + Cell SDK 1.1 (Libspe 1.1ベース) クロス開発環境
    • Intel x86 PC + Cell SDK 2.0 (Libspe 2.0.0ベース) クロス開発環境
    • Intel x86 PC + Cell SDK 2.1 (Libspe 2.0.2ベース) クロス開発環境

免責事項および複製・改変・再配布条件

  • CTK(本ライブラリ)は、LGPL (GNU Library or Lesser General Public License)に基づいて株式会社フィックスターズが無保証で公開しているものです。
  • 本ライブラリや本ライブラリに付随するドキュメントの使用に関連するいかなる損害についても株式会社フィックスターズは責任を負いません。
  • 複製・改変・再配布条件についてはLGPLに従うものとします。

メインページ」に戻る / 「CTKユーザマニュアル」に戻る