The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Сравнение эффективности 20 языков программирования"
Отправлено Ivan7, 06-Янв-24 05:48 
Результаты проведённых мной тестов (последний вариант с github) для x86-64 для C (Clang, GCC), Rust, Perl, Python, Ruby (время в секундах, меньше - лучше):

              matmul   nqueen   sudoku   bedcov
c:clang (c3)    0.93     3.18     2.23     1.08
c:clang (u3)    0.92     3.20     2.20     1.08
c:clang (ca)    1.30     3.33     2.23     1.10

c:gcc (g3)      0.97     3.27     2.49     1.08
c:gcc (g3p)     0.92     3.33     2.66     1.07
c:gcc (g2)      2.22     3.27     2.83     1.05

rust (ra)       1.38     3.63     2.58     1.26
rust (rb)       1.09     3.72     2.60     1.29

perl          272.77   212.20   151.92
python        350.95   241.83    87.68    81.35
ruby          373.35   134.63   171.00

(c3)  - clang -O3  (clang64)
(u3)  - clang -O3  (ucrt64)
(ca)  - clang с изначальными опциями компиляции (clang64)

(g3)  - gcc -O3    (ucrt64)
(g3p) - gcc -O3 + PGO (Profile Guided Optimization)  (ucrt64)
(g2)  - gcc -O2    (ucrt64)

(ra)  - rust с изначальными опциями компиляции (ucrt64)
(rb)  - rust с указанием целевой архитектуры Intel Haswell (ucrt64)

Система:
Два процессора Intel Xeon E5 2678v3 (по 12 ядер Haswell в каждом процессоре, 3.3 ГГц по всем ядрам (анлок турбобуста)),  128 ГБ серверной DDR3 1866 MHz.
Windows 10 + MSYS2 (всё с последними обновлениями), при тестах устанавливалась схема управления энергопотреблением "Максимальная производительность".
Тесты запускались на RAM-диске. Время измерялось утилитой time (time -f %e). Тесты на C и Rust запускались раз по 10, для Perl, Python, Ruby - 2 раза, т.к. долго ждать.
Для каждого теста выбиралось наименьшее время по всем запускам.
Для C и Rust опции компиляции изменены, включая указание целевой архитектуры Intel Haswell, но также приведены результаты тестов с исходными опциями компиляции: (ca), (ra).
Все компиляторы и интерпретаторы из состава MSYS2.

GCC 13.2.0 (ucrt64)
Clang 17.0.6 (ucrt64 и clang64)
rustc 1.75.0 (82e1608df 2023-12-21) (Rev1, Built by MSYS2 project) (ucrt64)
perl 5.38.2 built for x86_64-msys-thread-multi (msys)
Python 3.11.6 (msys)
ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x64-mingw-ucrt] (ucrt64)

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру