Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is ACE (C++ library) still used for high performance computing?

Tags:

c++

tcp

boost

ace

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?

like image 770
user997112 Avatar asked Dec 03 '11 14:12

user997112


1 Answers

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).

like image 162
sergio Avatar answered Sep 24 '22 06:09

sergio