Bei deinem fiel mir auf, dass es zunächst mit time=50 flüssig lief, aber dann immer langsamer wurde. In der Console sah man, dass die Ausgaben für die Nase immer mehr wurden, bis zu über 100 auf einmal. Richtig bin ich nicht durchgestiegen, aber ich habe es mal so geändert:
https://jsfiddle.net/Sempervivum/2wjdgL9t/
und dann läuft es mit time=50 dauerhaft flüssig.