Измерим шеллы в попугаях
Иногда возникает вопрос, какой шелл быстрее. Измеряем скорость запуска на уже не раз упоминавшемся CoreQuad 2.66GHz:
Как видим, весьма мудро в дебиане решили выкинуть bash в пользу dash. Правда, дефолтовый /bin/sh указывает в ленни на /bin/bash, так что нелишним будет в скриптах явно писать /bin/dash. Это полезно как с точки зрения быстродействия, так и потому, что в дальнейшем не придется разбираться, нет ли где в коде "башизмов". zsh приятно удивил, хотя именно для скриптов его редко используют, а для интерактивной работы разница скорости запуска в единицы миллисекунд, как правило, несущественна.
Касаемо тикля - имеет смысл уже сейчас переходить на 8.6 в "мелких" скриптах, т.к. скорость запуска идентична таковой для версии 8.5, а к релизу, если повезет, может еще улучшиться. Версия 8.4 для новых приложений интереса уже не представляет.
$ time echo " "|dash
real 0m0.001s
user 0m0.000s
sys 0m0.000s
$ time echo " "|bash
real 0m0.002s
user 0m0.000s
sys 0m0.004s
$ time echo " "|perl
real 0m0.002s
user 0m0.000s
sys 0m0.000s
$ time echo " "|zsh
real 0m0.003s
user 0m0.004s
sys 0m0.000s
$ time echo " "|tclsh8.4
real 0m0.005s
user 0m0.004s
sys 0m0.004s
$ time echo " "|tclsh8.5
real 0m0.007s
user 0m0.004s
sys 0m0.000s
$ time echo " "|tclsh8.6
real 0m0.007s
user 0m0.008s
sys 0m0.000s
Как видим, весьма мудро в дебиане решили выкинуть bash в пользу dash. Правда, дефолтовый /bin/sh указывает в ленни на /bin/bash, так что нелишним будет в скриптах явно писать /bin/dash. Это полезно как с точки зрения быстродействия, так и потому, что в дальнейшем не придется разбираться, нет ли где в коде "башизмов". zsh приятно удивил, хотя именно для скриптов его редко используют, а для интерактивной работы разница скорости запуска в единицы миллисекунд, как правило, несущественна.
Касаемо тикля - имеет смысл уже сейчас переходить на 8.6 в "мелких" скриптах, т.к. скорость запуска идентична таковой для версии 8.5, а к релизу, если повезет, может еще улучшиться. Версия 8.4 для новых приложений интереса уже не представляет.
Comments