推奨されるプロジェクト ディレクトリ構造 - 2023.2 日本語

AI エンジン カーネルおよびグラフ プログラミング ガイド (UG1079)

Document ID
UG1079
Release Date
2023-12-04
Version
2023.2 日本語

AI エンジン プロジェクトには、わかりやすくし、再利用しやすくするため、次のディレクトリ構造およびコーディング プラクティスをお勧めします。

  • 適応型データフロー (ADF) グラフ クラス定義 (グラフ クラス adf::graph から導出された ADF グラフ) はすべて、ヘッダー ファイルに含める必要があります。同じヘッダー ファイルに、複数の ADF グラフ定義を含めることができます。このクラス ヘッダー ファイルは main アプリケーション ファイルに含め、実際の最上位グラフはファイル スコープで宣言します。
  • ヘッダー ファイルを含める順序に依存性がないようにする必要があります。すべてのヘッダー ファイルは、それら以外の必要なヘッダー ファイルをすべて含み、自己完結している必要があります。
  • グラフのヘッダー ファイルにファイル特定の変数やデータ構造定義を含めないでください。static を含むすべての定義は、個別のファイルで宣言する必要があり、これらのファイルを参照するカーネルの header プロパティで特定できます (ルックアップ テーブル を参照)。
  • adf::source を使用してカーネル ソースとして指定できるのは、1 つのソース ファイルのみです。サブ関数がライブラリとして別々のソース ファイル (util.hpputil.cpp など) で定義されている場合は、次の回避策を使用してください。
    • すべてのライブラリ ソース ファイルをヘッダー ファイル (lib.hpp など) に含めます。
      #pragma once
      #include <util.hpp>
      #include <util.cpp>
    • その後、ヘッダー ファイル lib.hpp をカーネル ソース ファイルに含めます。