[Moscow.pm] Оптимизация
Ivan B. Serezhkin
ivan на serezhkin.com
Ср Дек 5 13:36:08 PST 2007
Denis Evdokimov wrote:
> Я провёл тестирование и наткнулся на интересный момент.
> Простой перебор хеша с помощью each можно ускорить на 12-15%
>
> Запись, которую обычно используют:
> while(my($key, $value) = each %hash)
> {
> }
>
> Полностью аналогичная запись:
> {
> my($key, $value);
> while(($key, $value) = each %hash)
> {
> }
> }
>
> во втором случае мы получаем прирост производительности оставляя при
> этом туже область видимости, что и в первом.
Ага, угадайте, где хранятся имена переменных ? =)
Я переписывая цикл
while($condition) {
do_some_thig_with $cfg->{field}->{subfield};
}
на
my $operand=$cfg->{field}->{subfield};
while($condition) {
do_some_thig_with $operand;
}
получаю иногда прирост раза в три на коротких циклах.
--
Ivan B. Serezhkin
Подробная информация о списке рассылки Moscow-pm