printf() マクロ - 2023.2 日本語

AI エンジン ツールおよびフロー ユーザー ガイド (UG1076)

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

x86 シミュレータは、複数のカーネルを個別のスレッドで並列に実行します。これは、printf() デバッグ メッセージを標準出力で表示したときに、メッセージが混ざって表示され、どちらのメッセージなのかはっきりしない場合があります。どのカーネルがどの行のメッセージを出力したのかを特定するには、X86SIM_KERNEL_NAME マクロを使用すると便利です。次に、このマクロを printf() と組み合わせて使用する例を示します。

注記: X86SIM_KERNEL_NAME を使用するには、次のコードに示すように adf/x86sim/x86simDebug.h を含める必要があります。
#include <adf/x86sim/x86simDebug.h>

void simple(input_window_float * in, output_window_float * out) {
   for (unsigned i=0; i<NUM_SAMPLES;i++) {
       float val = window_readincr(in);
       window_writeincr(out,val+0.15);
   }
   static int count = 0;
   printf("%s: %s %d\n",__FILE__,X86SIM_KERNEL_NAME,++count);
}