04.04.2013 Views

Real-time Music Synthesis in Java - bomers.de

Real-time Music Synthesis in Java - bomers.de

Real-time Music Synthesis in Java - bomers.de

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

8<br />

<strong>Real</strong>-<strong>time</strong> <strong>Music</strong> <strong>Synthesis</strong> <strong>in</strong> <strong>Java</strong> us<strong>in</strong>g the Metronome Garbage Collector<br />

<strong>Java</strong> for <strong>Real</strong>-<strong>time</strong>: Current Practice<br />

Avoid allocation after setup<br />

• Low-level programm<strong>in</strong>g, vulnerable to allocation by libraries<br />

Allocate from object pools<br />

• Only works for homogeneous objects, suffers from “free” bugs<br />

Use Scoped memory constructs of RTSJ<br />

• Manual, suffers from unpredictable run-<strong>time</strong> exceptions<br />

Use a generational collector<br />

• Puts off the <strong>in</strong>evitable, slow when survival rate is high<br />

Use an <strong>in</strong>cremental collector<br />

• Often works but subject to numerous failure mo<strong>de</strong>s<br />

Use reference count<strong>in</strong>g (automatic or manual)<br />

• Does not collect cycles (at least not predictably)<br />

Bacon/Bomers ICMC’07 - Copenhagen 30 August 2007

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!