Reflexes

Jesper Honig Spring, Filip Pizlo, Rachid Guerraoui, Jan Vitek
2007 Proceedings of the 3rd international conference on Virtual execution environments - VEE '07  
Commercial Java virtual machines are designed to maximize the performance of applications at the expense of predictability. High throughput garbage collection algorithms, for example, can introduce pauses of 100 milliseconds or more. We are interested in supporting applications with response times in the tens of microseconds and their integration with larger timing-oblivious applications in the same Java virtual machine. We propose Reflexes, a new abstraction for writing highly responsive
more » ... s in Java and investigate the virtual machine support needed to add Reflexes to a Java environment. Our implementation of Reflexes was evaluated on several programs including an audio-processing application. We were able to run a Reflex at 22.05KHz with less than 0.2% missed deadlines over 10 million observations, a result that compares favorably to an implementation written in C.
doi:10.1145/1254810.1254837 dblp:conf/vee/SpringPGV07 fatcat:auxvtxf63bbwzmmzzr2fwqld6a