マルチプロセッシングに関する多くの情報がありますが、私の問題の正しい方法がわかりません:
いくつかのデータを計算する関数があります-毎回約5秒かかります。この関数を 2 ~ 100 回実行する必要があります。関数は独立して実行できるため、1 つの呼び出しに 20 秒かかり、別の呼び出しに 3 秒しかかからない場合でも、最終結果には問題ありません。このケースは、マルチプロセッシングのセットアップに最適です。しかし、100 個の関数呼び出しに対して 100 個のプロセスを並行して開始することは、私には意味がありません。
私が探しているキーワードは何ですか?キュー、プール、マネージャー? システムのコア数に応じて、常に x ケースを計算したいと考えています。これらの計算の 1 つが完了し、CPU に空きコアがあると、リストから次のケースを取り出して、トランジスタを再度ヒットする必要があります。それらがすべて完了したら、出力にアクセスしたいと思います。
前もって感謝します!