ACE (библиотека C ++) все еще используется для высокопроизводительных вычислений? - PullRequest
4 голосов
/ 03 декабря 2011

Заинтересовавшись высокочастотной торговлей / высокопроизводительными вычислениями, я наткнулся на «ACE»:

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

Однако я заметил, что многие статьи на сайте относятся к 1995 году.эра, и я задавался вопросом, этот фреймворк все еще используется, и если нет, то чем он был заменен?

Или буст заменил это?Содержит ли ACE нужные библиотеки, которых нет в Boost?

Ответы [ 3 ]

4 голосов
/ 03 декабря 2011

Если вы посмотрите на их репозиторий subversion , то, похоже, что ACE в настоящее время находится в стадии разработки, возможно, просто исправление ошибок или незначительные расширения.С другой стороны, ACE - это основы других структур той же группы, которые действительно более активны.В любом случае, дискуссионный форум показывает соответствующую активность и постоянный интерес к ACE.

Что касается вашего вопроса о ACE и boost, я не думаю, что две библиотеки находятся на одном уровне.ACE нацелена на создание кроссплатформенных расширенных сетей (даже в режиме реального времени и встраиваемых системах), предлагая конкретные шаблоны, такие как реактор, конфигуратор служб, маркеры завершения, управление памятью и так далее.Уровень «переносимости» (ACEOS, если я не ошибаюсь) - это просто базовый уровень, но, на мой взгляд, в настоящее время он не является реальным ценным предложением ACE, скорее он предназначен для включения других подсистем.

В целом, я думаю, что для продвинутых сетевых шаблонов, подобных описанным в POSA2 , ACE является хорошим выбором.Если вам нужен просто уровень абстракции над операционной системой, повышение - это лучший способ (более современный и широко распространенный).

0 голосов
/ 08 мая 2015

Я знаю, что это старый пост, но для тех, кто хочет знать, ACE все еще находится в разработке:

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

0 голосов
/ 03 декабря 2011

Хотя ACE уже давно вызвал интерес, более поздние конструкции серверов предлагают более высокую скорость (меньшую задержку) и многоядерную масштабируемость (более высокий параллелизм).

Если вас беспокоит задержка (высокая частота)торговые операторы борются за каждую микросекунду), а затем делают свои собственные тесты.weighttp (совместимый с ApacheBench) инструмент стресса является наиболее эффективным из всех, что я видел (используйте опцию "-t 4", чтобы использовать 4 рабочих потока вместо 4-секундного теста, как для AB).

Так какApachebench - это однопоточный инструмент, он не сможет насытить SMP-сервер (многопоточный или многопроцессный).

...