Картинка блога

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

Прежде всего меня интересуют следующие языки: PHP, C#, Python и Java, так как, мне удалось познакомится только с этими серверными языками. Еще меня больше интересует производительность для Web. К сожалению, тесты являются математическими, по этому в обычном мире (мире штамповки сайтиков) цифры могут отличатся. Далее речь пойдет о тестах с сайта The Computer Language Benchmarks Game. Эти ребята единственные в сети, которых мне удалось найти, проделавшие огромную работу, оценив скорость и потребление памяти одних и тех-же алгоритмов на разных языках программирования.

На момент написания статьи тесты опубликованны для четырех машин, с операционной системой Ubuntu:

В 2008 году для тестирования использовались Gentoo : Intel® Pentium® 4 и Debian : AMD™ Sempron™. Сейчас эти тесты помечены как устаревшие.

Так как проект живет под маркой OpenSource. Исходные коды всех тестов общедоступны (пример binary-trees на Mono), и при желании можно попробовать тесты на своей машине. Проект позволяет сравнивать языки между собой (Mono vs CPython).

Согласно тестам, затраченное время выстроилось в следующую последовательность: Pyhon > PHP > C# Mono > Java6, а по памяти Java > PHP > Mono > Python. Вот такой вот парадокс. Еще интересный момент, который может быть актуальным на многоядерных серверах, это распределенность по процессорам, его тоже можно посмотреть на сайте.

На сайте также указано количество кода, которого потребовалось написать для реализации алгоритма. Мне кажется это не актуально, и не сильно влияет на скорость разработки, как например реализация разного рода дизайнеров и подсказки в IDE.

Метки:, , ,

6 комментариев в “Производительность и скорость работы языков программирования.”

  1. Интересная заметка. Давно искал что-то подобное. Спасибо автору)

  2. Ilyusha, спасибо за ссылку на сайт. Как и обещал, зашел)

  3. Да. Интересное сравнение. Спасибо)

  4. Интересно, буду ждать продолжения.

  5. Программирование это отлично

  6. Интересно было прочесть, узнал новое для себя