2017-02-09 10 views
-1

intel tbbコミュニティバージョンtbb2017_20161128ossをコンパイルしています。コンパイル中にテストケースがほとんど実行されません。テストケースの1つで、警告が表示されます。 ./test_global_control.exe
TBB警告:現在、1人の作業員のリクエストは無視されます。より多くの労働者に対するさらなる要請は、制限が変更されるまで黙って無視されます。intel tbbコンパイルとテスト

プラットフォームに関するこの警告は何を意味しますか?私はITBBの特定のコンポーネントを使用することを控えるべきですか?

+3

プラットフォーム固有のものについて質問すると、あなたが話しているプラ​​ットフォームを知ることができます。あなたが使っているコマンド( '.exe'で終わるので)から推測できますが、' .exe'が終わったプログラムを持つプラットフォームでは珍しい '。/'を使います。 –

+0

私はLinuxのbashシェルで動作しています。ptompt – user2020871

答えて

1

通常、TBBテストの場合はの場合、「TBB警告」からの実行時警告は無視できます。一般的に、これらの警告は、プログラマにTBBを最適以下または間違って使用する可能性があることを伝えることです。しかし、テストでは、ライブラリは非常に複雑な方法で使用されるため、警告が出されることがあります。

この特別な警告は、プログラムが最初に使用できるワーカースレッドの数を制限してから、制限を超えてより多くのワーカーを要求しようとしていることを示しています。テストのためには、そのようなコーナーケースでその動作が正しいことを確認することが重要です。警告はその制御の範囲外です。

実際のアプリケーションでは、これらの警告は予期しない状況の診断に役立ちますので、無視しないでください。

+0

返信いただきありがとうございます。 – user2020871

+0

しかし私の懸念は、なぜ労働者の数がゼロに制限されているかということです。私が間違っていない場合、Noの作業者を決定するパラメータの1つに、ハードウェアスレッド(コア)の数があります。私は4つのスレッドを持つマシン上でITBBをコンパイルしていますが、依然としてゼロのワーカー数を示しています。だから私の質問は、コンパイル中に何かが見つからない、またはテストのときだけで、ITBBライブラリは他のアプリケーションが動いているのでリソースを取得できません。 – user2020871

+1

使用されているワーカーの数、特にクラスtbb :: global_controlの明示的な制御のためのTBBクラスがあります。このテストでは、テストのためにワーカースレッドの使用を防ぐためにこのテストが使用されています。だから、それを心配しないでください。 –

関連する問題