Игра компьютерных тестов

редактировать
Проект бесплатного программного обеспечения

Игра компьютерных тестов ( ранее называвшийся The Great Computer Language Shootout ) - это бесплатное программное обеспечение проект для сравнения того, как данное подмножество простых алгоритмов может быть реализовано в различных популярных программах. languages ​​.

Проект состоит из:

  • набора очень простых алгоритмических проблем
  • различных реализаций вышеуказанных проблем на разных языках программирования
  • набора модульных тестов для проверки того, что представленные реализации решают поставленную задачу
  • Структура для запуска и синхронизации реализаций
  • Веб-сайт для облегчения интерактивного сравнения результатов
Содержание
  • 1 Поддерживаемые языки
  • 2 Показатели
  • 3 Программы тестирования
  • 4 История
  • 5 Предостережения
  • 6 Влияние
  • 7 См. Также
  • 8 Ссылки
  • 9 Внешние ссылки
Поддерживаемые языки

Из-за ограничений ресурсов поддерживается только небольшое подмножество общих языков программирования, на усмотрение оператора игры.

Список поддерживаемых языков
Метрики

Следующие аспекты каждого для данной реализации измеряются:

Обычно для одной и той же проблемы можно увидеть несколько решений на одном языке программирования. Это подчеркивает, что в рамках данного языка может быть предложено решение либо с высокой абстракцией, либо с эффективным использованием памяти, либо быстрым, либо с лучшим распараллеливанием.

Тестовые программы

С самого начала выбор пал на очень простые игрушечные задачи, каждая из которых создавала различные задачи программирования. Это дает пользователям Benchmark Game возможность тщательно изучить различные реализации.

История

Проект был до 2007 года известный как The Great Computer Language Shootout.

Порт для Windows поддерживался отдельно между 2002 и 2003 годами.

Исходные коды были заархивированы на GitLab.

Есть также старые форки на GitHub.

Проект постоянно развивается. Список поддерживаемых языков программирования обновляется примерно раз в год в соответствии с тенденциями рынка. Пользователи также могут представить улучшенные решения любой из проблем или предложить уточнение методологии тестирования.

Предостережения

Сами разработчики подчеркивают тот факт, что тем, кто проводит исследования, следует проявлять осторожность при использовании таких микробенчмарков:

[...] тесты JavaScript мимолетно малы, и их поведение существенно отличается от поведения реальных приложений. Мы задокументировали многочисленные различия в поведении и на основании этих измеренных различий пришли к выводу, что результаты тестов могут ввести в заблуждение разработчиков движка JavaScript. Кроме того, мы наблюдаем интересное поведение в реальных приложениях JavaScript, которое не удается продемонстрировать в тестах, что свидетельствует о том, что ранее неизученные стратегии оптимизации могут оказаться продуктивными на практике.

Воздействие

Результаты тестов выявили различные проблемы с компилятором. Иногда конкретному компилятору не удавалось обработать необычные, но в остальном грамматически правильные конструкции. В других случаях производительность во время выполнения была ниже ожиданий, что побудило разработчиков компиляторов пересмотреть свои возможности оптимизации.

Различные исследовательские статьи были основаны на тестах, их результатах и ​​методологии.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-10 06:48:48
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте