高頻度取引/ハイ パフォーマンス コンピューティングに興味があり、「ACE」に出会いました。
http://www.cs.wustl.edu/~schmidt/ACE-overview.html
しかし、ウェブサイトの論文の多くが 1995 年のものであることに気付きました。このフレームワークはまだ使用されているのでしょうか。
それともブーストがこれに取って代わりましたか?ACE にはブーストに必要なライブラリが含まれていますか?
高頻度取引/ハイ パフォーマンス コンピューティングに興味があり、「ACE」に出会いました。
http://www.cs.wustl.edu/~schmidt/ACE-overview.html
しかし、ウェブサイトの論文の多くが 1995 年のものであることに気付きました。このフレームワークはまだ使用されているのでしょうか。
それともブーストがこれに取って代わりましたか?ACE にはブーストに必要なライブラリが含まれていますか?
彼らのsubversion リポジトリを見ると、現在 ACE は多くの開発を行っているようには見えず、おそらくバグ修正またはマイナーな拡張のみです。一方、ACE は、実際にはより活発な同じグループによる他のフレームワークの基盤です。いずれにせよ、ディスカッション フォーラムは関連する活動と ACE への絶え間ない関心を示しています。
ACE とブーストに関するご質問については、2 つのライブラリが同等であるとは思いません。ACE は、リアクター、サービス コンフィギュレーター、完了トークン、メモリ管理などの特定のパターンを提供する、クロスプラットフォームの高度なネットワーク (リアルタイムおよび組み込みシステム上でも) を可能にすることを目的としています。「移植性」層 (私が間違っていなければ ACEOS) は基本的な層に過ぎませんが、私の意見では、現在の ACE の真の価値提案ではなく、他のサブシステムを有効にするために存在します。
全体として、 POSA2で説明されているような高度なネットワーク パターンには、ACE が適していると思います。OS 上の抽象化レイヤーだけが必要な場合は、boost が最適です (より現代的で広く採用されています)。
ACEはかなり前に関心を集めてきましたが、最近のサーバー設計では、より高速(低遅延)とマルチコアスケーラビリティ(より高い同時実行性)が提供されています。
レイテンシー(高頻度取引オペレーターはマイクロ秒ごとに戦う)が心配な場合は、独自のベンチマークを実行してください。(weighttpApacheBench互換)ストレスツールは、私が見た中で最も効率的です(ABのような4秒のテストの代わりに、「-t 4」オプションを使用して4つのワーカースレッドを使用します)。
はシングルスレッドツールであるためApachebench、SMPサーバー(マルチスレッドまたはマルチプロセス)を飽和させることはできません。