インテル® FPGA SDK for OpenCL: カスタム・プラットフォーム・ツールキット・ユーザーガイド

ID 683085
日付 10/31/2016
Public
ドキュメント目次

2.3.1. aocl_mmd_get_offline_info

aocl_mmd_get_offline_info関数は、requested_info_id引数に指定されたボードに関するオフライン情報を入手します。 この関数はデバイスに起因せず、aocl_mmd_open()コールからのハンドルが不要なため、オフラインです。

構文

int aocl_mmd_get_offline_info( aocl_mmd_offline_info_t requested_info_id,
                               size_t param_value_size,
                               void* param_value,
                               size_t* param_size_ret )

関数の引数

  1. requested_info_id—コール元に返すオフラインデバイス情報が示すaocl_mmd_offline_info_t型の列挙値です。
    表 17.  requested_info_id 引数での可能な列挙値
    名前 説明
    AOCL_MMD_VERSION MMD レイヤーのバージョンです。 char*
    AOCL_MMD_NUM_BOARDS 候補ボードの数です。 int
    AOCL_MMD_BOARD_NAMES 使用可能なボードの数です。
    重要: 各ボード名はセミコロン (;) で区切ります。
    char*
    AOCL_MMD_VENDOR_NAME ボードベンダーの名前です。 char*
    AOCL_MMD_VENDOR_ID 整数ボードベンダー ID です。 int
    AOCL_MMD_USES_YIELD 値 0 は、 インテル® FPGA SDK for OpenCL™ のホストランタイムにユーザーのプロセスの中断を指示します。ホストランタイムは MMD レイヤーからイベント更新 ( 割り込みなど ) を受信するとプロセスを再開します。

    値 1 は、イベントが終了するまでの待機中、SDKのホストランタイムにaocl_mmd_yield関数の継続的なコールを指示します。

    注意:
    aocl_mmd_yield関数が現在のスレッドを中断しない場合は、AOCL_MMD_USES_YIELDの 1 への設定は CPU の高使用率を引き起こす可能性があります。
    int
    AOCL_MMD_MEM_TYPES_SUPPORTED カスタム・プラットフォームがサポートするすべてのメモリータイプをリストしているビットフィールドです。このフィールドに次の列挙値を組み合わることができます。

    AOCL_MMD_PHYSICAL_MEMORY—カスタム・プラットフォームは、物理メモリー ( DDR や QDR など) と直接通信する IP を含んでいます。

    AOCL_MMD_SVM_COARSE_GRAIN_BUFFER—カスタム・プラットフォームは、OpenCL cl_memオブジェクトでの共有仮想メモリー (SVM) ポインターデータのキャッシュと、ホスト・プロセッサーと FPGA 間でキャッシュを同期するための明示的なユーザー関数コールの要件の両方をサポートしています。

    注: 現在、 インテル® AOCL_MMD_SVM_FINE_GRAIN_SYSTEMサポートのサブセットを除いたこの SVM のレベルをサポートしていません。

    AOCL_MMD_SVM_FINE_GRAIN_BUFFER—カスタム・プラットフォームは、個別バイトでの SVM ポインターデータのキャッシングをサポートしています。カスタム・プラットフォームは、ホスト・プロセッサーと FPGA の間のキャッシュを同期するために、ポインター割り当ての最中に収集したホストランタイムからの情報を必要とします。SVM ポインターがこの追加データを受信した後、board インターフェイスはホスト・プロセッサーと FPGA の間のキャッシュを自動的に同期します。

    注: 現在、 インテル® AOCL_MMD_SVM_FINE_GRAIN_SYSTEMサポートのサブセット以外のこの SVM レベルをサポートしていません。

    AOCL_MMD_SVM_FINE_GRAIN_SYSTEM—カスタム・プラットフォームは、個別バイトの SVM ポインターデータのキャッシュをサポートし、加えて、ホスト・プロセッサーと FPGA の間のキャッシュを同期するためのホストランタイムからの追加情報を必要としません。board インターフェイスは、すべての SVM ポインターにおいてホスト・プロセッサーと FPGA の間のキャッシュを自動的に同期します。

    重要: この SVM レベルでの インテル® のサポートは、暫定的なものです。機能のいくつかは完全にサポートされない場合があります。
    int ( ビッドフィールド )

  2. param_value_sizeparam_valueフィールドのビット単位のサイズです。size_t値は、列挙が定義で示す予期される応答の型のサイズと一致していなければなりません。

    例えば、AOCL_MMD_NUM_BOARDSint型の値を返した場合、param_value_sizesizeof (int)に設定します。param_size_ret引数で返されたバイト数と同じ数が表示されなければなりません。

  3. param_value—返された情報を受け取る変数へのvoid*ポインターです。

  4. param_size_ret—返されるデータのバイト数を受け取るsize_t*型のポインター引数です。

戻り値

負の戻り値はエラーを示します。