wickedweasel
@wickedweasel

У вас тоже тормозит clearTimeout?

Камрады, я недавно постил pull request в node.js.

Но открылась еще одна интересная особенность: у меня на трёх разных машинах (под управлением разных убунт) помимо ускорения setTimeout на 5-50% получается 10-70-кратное ускорение clearTimeout (точнее, связки setTimeout + clearTimeout).
0.8.12; _ = null                    x    25 ops/sec ±4.13% (47 runs sampled)
0.9.3; _ = null                     x    17 ops/sec ±4.45% (49 runs sampled)
0.9.3 optimized; _ = null           x 1,042 ops/sec ±1.60% (97 runs sampled)


Прошу перепроверить за мной вот этот написанный мной бенчмарк: github.com/AlexeyKupershtokh/timers-benchmark. И отписаться результатами и информацией о версиях ОС, node.js, и т.д.

Для тех, кто не рискует запускать чужой код:
wget https://raw.github.com/joyent/node/v0.8.12/lib/timers.js -O timers1.js
diff timers1.js timers_0.8.12.1.js
diff timers1.js timers_0.8.12.2.js
diff timers1.js timers_0.8.12.3.js
wget https://raw.github.com/joyent/node/v0.9.3/lib/timers.js -O timers2.js
diff timers2.js timers_0.9.3.1.js
diff timers2.js timers_0.9.3.2.js
diff timers2.js timers_0.9.3.3.js
diff timers2.js timers_my.1.js
diff timers2.js timers_my.2.js
diff timers2.js timers_my.3.js


+ github.com/AlexeyKupershtokh/timers-benchmark/blob...
  • Вопрос задан
  • 3469 просмотров
Пригласить эксперта
Ответы на вопрос 3
wickedweasel
@wickedweasel Автор вопроса
Если использую ноду nodejs.org/dist/v0.9.3/node-v0.9.3-linux-x86.tar.gz, то на одной машине (Ubuntu 11.04, Linux wicked-desktop 2.6.38-16-generic-pae #67-Ubuntu SMP Thu Sep 6 18:18:02 UTC 2012 i686 i686 i386 GNU/Linux) получаю такие результаты:
wicked@wicked-desktop:~/timers-benchmark$ ../node-v0.9.3-linux-x86/bin/node run.js 
0.8.12; _ = null                    x  11 ops/sec ±7.61% (33 runs sampled)
0.9.3; _ = null                     x   8 ops/sec ±4.81% (25 runs sampled)
0.9.3 optimized; _ = null           x 621 ops/sec ±0.47% (94 runs sampled)
Ответ написан
wickedweasel
@wickedweasel Автор вопроса
на другой машине в node 0.8.4 на windows vista 32 bit:
D:\work\node\timers-benchmark>node run.js
0.8.12; _ = null                    x    70 ops/sec +2.85% (66 runs sampled)
0.9.3; _ = null                     x    42 ops/sec +4.38% (57 runs sampled)
0.9.3 optimized; _ = null           x 1,247 ops/sec +3.62% (92 runs sampled)

— ускорение в 18-30 раз.
Ответ написан
Комментировать
wickedweasel
@wickedweasel Автор вопроса
макбук с макосью:
0.8.12; _ = null                    x    89 ops/sec ±2.49% (70 runs sampled)
0.9.3; _ = null                     x    60 ops/sec ±2.53% (65 runs sampled)
0.9.3 optimized; _ = null           x 2,287 ops/sec ±1.27% (95 runs sampled)

— ускорение в 25-38 раз.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы