単一の CPU に限定されず、水平方向にスケーラブルにしたいので、(Amazon の言うように) クラスターに「ブランチ アンド バウンド」を実装することを検討しています。Judith Hippold と Gudula Runger による論文「Task Pool Teams: A Hybrid Programming Environment for Irregular Algorithms on SMP Clusters」があります。これは基本的に、共有メモリの代わりにアドホック ネットワークを除いて、Intel の TBB のようなボトムアップのタスク スティーリング フレームワークです。このライブラリが利用可能であれば、それを使用します (ローカルのスレッド部分を TBB に置き換えます)。残念ながら、私が見つけたどこからでもダウンロードできるようにはなっていないようです。他の実装や類似のライブラリがあるのだろうか?
Microsoft の Task Parallel Library にも同等のものがあるようには見えません。
(「threadpool」の後に (「thread-pool」の前に) 最もよく使用されるバリアントである「taskpool」というタグを作成しようとしましたが、十分なポイントがありませんでした。追加する価値があると思う人はいますか?)
編集:
私はまだ試していませんが、PEBBL (ここでは: software.sandia.gov/trac/acro/wiki/Packages) は非常に高いスケーリングを主張しています。回答者が Wiley の本「Parallel Branch-and-Bound Algorithms」、Crainic、Le Cun、Roucairol、2006 年、El-Ghazali Talbi が編集した「Parallel Combinatorial Optimization」、2006 年から言及している論文は、私が見つけた場所でした。他のライブラリがリストされています。いくつかはより良いかもしれません、私はこれを更新する権利を留保します:)。Google がこれらのライブラリを見つけられなかったのはおかしいです。私の Google が弱かったか、Google 自体が魔法にならないことがあるからです。