The memory architecture of non-uniform memory access (NUMA) systems cause applications to experience variable delays when accessing the main memory. The Real-Time Specification for Java assumes that all memory is uniformly accessed and provides limited support to control the allocation policies of threads and objects. As a result, programmers are unable to predict the behaviour of applications running on NUMA systems. This paper proposes a framework which gives visibility and more control to the programmers over the allocation policies of threads and objects on NUMA systems. A prototype implementation running on top of jRate and Linux has been evaluated on a 16 processor cc-NUMA platform by using the Sieve of Eratosthenes algorithm. Our initial results show that a 4 fold improvement in performance can be obtained by giving the programmer control over thread and object placement.
Download Not Available

BibTex Entry

@inproceedings{Malik2010,
 address = {New York, NY, USA},
 author = {Abdul Haseeb Malik and Andy Wellings and Yang Chang},
 booktitle = {JTRES '10: Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems},
 doi = {http://doi.acm.org/10.1145/1850771.1850776},
 isbn = {978-1-4503-0122-0},
 location = {Prague, Czech Republic},
 pages = {36--45},
 publisher = {ACM},
 title = {A locality model for the real-time specification for Java},
 year = {2010}
}