ACE(C++库)仍然用于高性能计算吗?

发布于 2024-12-19 06:28:36 字数 286 浏览 2 评论 0原文

由于对高频交易/高性能计算感兴趣,我遇到了“ACE”:

http ://www.cs.wustl.edu/~schmidt/ACE-overview.html

但是,我注意到网站上的很多论文都是 1995 年的,我想知道这个框架是否仍在使用,如果没有,什么是是替代品吗?

或者boost已经取代了这个? ACE 是否包含所需的 boost 库?

Being interested in high frequency trading/High performance computing I came across 'ACE':

http://www.cs.wustl.edu/~schmidt/ACE-overview.html

However, I noticed a lot of the papers on the website are from 1995 era and I wondered is this framework still used and if not, what was it's replacement?

Or has boost replaced this? Does ACE contain desired libraries that boost doesnt?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

红尘作伴 2024-12-26 06:28:36

如果您查看他们的 subversion 存储库,似乎并没有如今,ACE 正在经历大量开发,可能只是错误修复或较小的扩展。另一方面,ACE 是同一组织的其他框架的基础,这些框架确实更加活跃。无论如何,论坛显示了相关活动和持续信息对 ACE 的兴趣。

至于你关于 ACE 与 boost 的问题,我认为这两个库并不相同。
ACE 旨在实现跨平台高级网络(甚至在实时和嵌入式系统上),提供特定模式,如反应器、服务配置器、完成令牌、内存管理等。 “可移植性”层(ACEOS,如果我没记错的话)只是一个基本层,但在我看来,它并不是当今 ACE 的真正价值主张,而是为了支持其他子系统。

总的来说,我认为对于高级网络模式,如 POSA2 中描述的模式, ACE是一个不错的选择。如果您只需要操作系统上的抽象层,则 boost 是最佳选择(更现代且广泛采用)。

If you have a look at their subversion repository, it does not seem that ACE is undergoing much development nowadays, possibly just bug fixing or minor extensions. On the other hand, ACE is the foundations of other frameworks by the same group that indeed are more active. Anyway, the discussion forum shows relevant activity and constant interest in ACE.

As to your question about ACE vs. boost, I don't think that the two libraries are on a par.
ACE is aimed at enabling cross-platform advanced networking (even on real-time and embedded systems), offering specific patterns like reactor, service configurator, completion tokens, memory management and so on. The "portability" layer (ACEOS, if I am not wrong) is just a basic layer, but it is not, in my opinion, the real value proposition of ACE nowadays, rather it is there to enable the other subsystems.

Overall, I think that for advanced networking patterns, like those described in POSA2, ACE is a good choice. If you need just an abstraction layer over the OS, boost is the way to go (more modern and widely adopted).

只是一片海 2024-12-26 06:28:36

我知道这是一篇旧文章,但对于那些想知道 ACE 仍在开发中的人来说:

https ://github.com/DOCGroup/ATCD/tree/master/ACE

I know it is a old post but for those who want to know ACE is still in development :

https://github.com/DOCGroup/ATCD/tree/master/ACE

倾城月光淡如水﹏ 2024-12-26 06:28:36

虽然 ACE 很久以前就引起了人们的兴趣,但最近的服务器设计提供了更高的速度(更低的延迟)和多核可扩展性(更高的并发性)。

如果您担心延迟(高频交易运营商为每一微秒而战),那么就做您自己的基准测试。 weighttp(ApacheBench 兼容)压力工具是我见过的最高效的(使用“-t 4”选项使用 4 个工作线程,而不是像 AB 那样进行 4 秒测试)。

由于 Apachebench 是单线程工具,因此它无法使 SMP 服务器(无论是多线程或多进程)饱和。

While ACE has created interest a long time ago, more recent server designs offer higher speed (lower latency) and multi-core scalability (higher concurrency).

If you are concerned about latency (high-frequency trading operators fight for every microsecond), then do your own benchmarks. The weighttp (ApacheBench compatible) stress tool is the most efficient I have seen (use the "-t 4" option to use 4 worker threads instead of a 4-second test like for AB).

Since Apachebench is a single-thread tool, it will not be able to saturate a SMP server (either muti-thread or multi-process).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文