An update on incremental mode as of today's snapshot:

DrRacket now enables incremental mode when you're editing.
Specifically, the editor classes now request incremental mode when you
click or type in the editor.

This is an experiment to see whether incremental mode improves
DrRacket's behavior --- and also whether it increases DrRacket's
footprint by too much. If you use a snapshot version of DrRacket, keep
an eye on memory use, and let us know if it's a problem.

At Wed, 2 Dec 2015 08:44:42 -0700, Matthew Flatt wrote:
> The development version of Racket now supports an incremental
> garbage-collection mode that can eliminate long pauses in a program.
> For example, incremental mode is useful for avoiding pauses in games
> and animations.
> 
> For more information, see
> 
>   http://goo.gl/rYjTIi
> 
> You can try out incremental mode in a snapshot build:
> 
>   http://pre.racket-lang.org/
> 
> 
> The `2htdp/universe` library has been updated to request incremental
> mode, so a `big-bang` program will automatically use it. The programs
> that I've tried experience GC pauses that are bounded by 10ms or so
> (when run outside of DrRacket). In v6.3, the same programs see a pair
> of 130ms pauses every 2-3 minutes.
> 
> As another example, my son Oliver has a Pict3D-based game that now runs
> without big pauses:
> 
>   https://spaceorbs.weebly.com/
>   https://www.youtube.com/watch?v=mP8ud9Yztz8
> 
> The game uses a fork of Pict3D (github.com/mflatt/pict3d) where I've
> added a `(collect-garbage 'incremental)` call. That changes also makes
> animations in my Pict3D-based talk run without big pauses.
> 
> For Oliver's game, each GC pause is usually below 16ms on his machine,
> but sometimes between 16ms and 32ms. As a result, the game is still
> dropping frames, so it's not yet as good as we want --- but that's much
> better than before, and the game is comfortably playable. Further
> improvement might be just a matter of tuning the implementation of
> incremental mode.
> 
> 
> There's still room for improvement overall, and your mileage may vary.
> If you have an application that needs shorter GC pauses and the current
> implementation of incremental mode doesn't work well enough, I'm
> interested to hear about it.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Racket Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to racket-users+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to