![]()
nota XXXIV. УскорениеСразу после установки Rakudo Star 2010.08 хочется проверить производительность и - особо - утечку памяти. Опять попробуем простенький тест. Поскладываем числа от 1 до n. Делаем так: for (1..10000) {$sum+=} Время измеряем с помощью утилиты time: time ./script.pl Для perl 5 имеем: n sec 10000 0.004 1000000 0.146 100000000 14.329 Для perl 6 имеем: 10000 4.706 Это в шесть раз быстрее, чем было месяц назад. Однако... 1000000 Ошибка сегментирования Точно такой же результат, что и месяц назад. Память всё равно утекает. Если в бесконечном цикле делать: loop { $i++ } то по крайней мере три минуты программа у меня проработала. Но памяти она заняла где-то 400 мегабайт. Ждём следующего релиза. Делу ускорения может помочь гласность. Андрей Шитов на perl6.ru даёт ссылку на лечение утечки, которое недавно нашёл Мориц Ленц. Посмотрел, но в новом коде ракудо, видимо, уже использовали это лекарство. Там, где надо было заменить 'manual' на 'auto', уже стоит последнее. Поэтому ждём следующего релиза, но продолжаем пробовать вкусности perl 6. Extra
|
RSS stdin@perl6.su © Alexius Karmanov, 2010-2011