C プログラミングでは…</p>
POSIX スレッドを使用せずにコードを並列化および同期するライブラリはありますか?
OpenMP について聞いたことがあります。しかし、Hello World 実装のシンボル テーブルを確認したところ、OpenMP は PThreads 上に構築された単なるライブラリであることがわかりました。
編集
@tmyklebuの回答の下にある私のコメントを参照してください
C プログラミングでは…</p>
POSIX スレッドを使用せずにコードを並列化および同期するライブラリはありますか?
OpenMP について聞いたことがあります。しかし、Hello World 実装のシンボル テーブルを確認したところ、OpenMP は PThreads 上に構築された単なるライブラリであることがわかりました。
編集
@tmyklebuの回答の下にある私のコメントを参照してください
私の質問は「なぜpthreadを避けたいのですか?」だと思います。pthreadは、カーネルのスレッド化および同期プリミティブへの健全で移植可能なインターフェースを提供します。
そうは言っても、カーネルが同期に関与する理由がない場合があるため、プラットフォームのネイティブアトミックビルトイン(cmpxchgまたはLL / SCまたはあなたが持っているもの)を直接使用すると便利なことがよくあります。
Linuxでは、futex
システムコールを確認してください。
Intelはこの「スレッディングビルディングブロック」をリリースしました。AMDにも似たようなものがあります。私もほとんど使ったことがないのでコメントはしません。
MPIも重要です。