インテル® Cilk™ Plus は、ワークスチール・モデルを使用して並列処理を行っています。アイドルスレッドは新しいスレッドをスポーンするキーワードによって作成される継続をスチールするため、スポーンされた関数呼び出しと継続は並列で実行できます。
アプリケーションの実行をシリアル化して、ワークスチールを行わないようにすると、不具合の原因が並列処理にあるのか、アルゴリズムにあるのかを特定するのに役立ちます。アプリケーションのシリアル化は動的に行うことができるため、アプリケーションの再コンパイルや再起動は必要ありません。
アプリケーションの実行中にシリアル化を有効にすると、すでにスチールされた完了していない作業は並列で実行されますが、新たなワークスチールは行われません。スチールされた作業が完了すると、プログラムは完全にシリアル化されます。
インテル® Cilk™ Plus を使用するアプリケーションのシリアル化を有効または無効にするには、次の操作を行います。