Небольшое исследование производительности hashmap в C++ на ОС Аврора
Для применения в приложении Вектор-Д, работу над которым я приостановил в апреле 2025 (начался сезон по кондиционированию и там уже следующие несколько месяцев было не до кодинга), мне потребовалось оценить производительность hashmap для генерации svg-кода, поскольку hashmap являются довольно быстрым средством для работы с данными.
Код проекта для Аврора IDE:
zip
hashmapbenchmark.zip28.09 Kb
Выяснилось, что для получения максимальной скорости следует использовать std::unordered_map<int,std::string> вместо std::unordered_map<int,QString>.
Подробности - в коде простого проекта hashmapbenchmark и на скриншоте ниже с T800 на Аврора 5.1.3.85:
P.S. Конечно, в таком подходе есть свои минусы (значительно меньшее количество символов, доступное для использования), но плюсом является высочайшая производительность.
P.S.S В Вектор-Д уже готов C++ код для генерации svg из hashmap - надеюсь, в ближайший месяц успею выложить наброски переделанного с практически 95% QML-приложения на Qml-C++ решение (объем работ в qml-части там достаточно большой и нудный и это даже без добавления нового функционала)