Рафаэль: постепенное замедление анимации с простой бесконечной анимацией

Этот вопрос по духу похож на другой вопрос, заданный два года назад:Почему частота кадров Рафаэля замедляется на этом коде?

Я использую Raphael 2.1.0 в Chromium 25 следующим образом:

<html>
<head>
  <title>Drawfun</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }
  </style>
</head>
<body>
  <script src="raphael.js"></script>
  <script>
    var paper = Raphael(10, 50, 320, 200);
    var anim = Raphael.animation({transform: "R360"}, 500).repeat(Infinity);

    var rect = paper.rect(50, 40, 10, 20);
    rect.attr("fill", "#f00");
    rect.attr("stroke", "#fff");
    rect.animate(anim);
  </script>
</body> 
</html> 

Первоначально, прямоугольник вращается плавно, как и следовало ожидать. Через минуту или две вращение будет работать со скоростью ~ 15 кадров в секунду. Через пять или восемь минут анимация запускается со скоростью ~ 5 кадров в секунду.

Профили Chrome CPU показывают, что по мере того, как анимация становится более прерывистой, скрипт тратит все меньше и меньше времени на(program) и все больше и больше времени вrepush а такжеeve.listeners.

Диспетчер задач Chrome не указывает на утечку памяти ни в пуле памяти JS, ни в Chrome, но показывает, что страница со временем потребляет все больше и больше ресурсов процессора.

При запуске этой страницы в последней версии Firefox анимация становится прерывистой, намного быстрее. Эти результаты были проверены на Linux и Windows, так что это не проблема ОС :).

Кто-нибудь знает, что может быть не так с моим кодом или внутренностями Рафаэля?

Ответы на вопрос(1)

Ваш ответ на вопрос