AUSTIN, TX

University of Texas At Austin

Grant: $499,996 - National Science Foundation - Jul. 27, 2009

Are you satisfied with this award? or

0% voted satisfied - 100% voted not satisfied - 2 vote(s) cast

Yes
No

Join the conversation: Post a comment about this award


Award Description: The goal of this proposal is to devise and implement a scalable virtual machine that includes scalable garbage collectors, profilers and just-in-time (JIT) compilers. As hardware vendors deliver chip multiprocessors (CMPs) as the next-generation general-purpose computing substrate, programmers are increasingly choosing managed languages for their next generation applications. The virtual machine (VM) stands between the two, integrating them together. However, VMs are not yet capable of providing scalable performance to applications on parallel systems composed of CMPs. VMs are limited in part because key features, such as dynamic profiling, compilation, and garbage collection, are often not themselves scalable. This VM scalability bottleneck is an impediment to application scaling. For example, because VMs are oblivious to application data partitioning, they can introduce unnecessary communication such as false sharing. This project seeks to solve this problem by designing and implementing scalable virtual machine (SVM) services. SVM includes novel dynamic profilers, just-in-time (JIT) compilers, and garbage collectors that are themselves scalable and support parallel applications. The project explores how to design and build a framework for parallel dynamic analysis, JIT compilation, and garbage collection that uses novel cost models of the application, analysis, JIT, and collector work to optimize for scalable high-performance. In particular, analysis, JIT, and garbage collector work is divided and scheduled in novel ways to mirror application partitions and threads. SVM will be developed within a Java Virtual Machine, but the algorithms will apply to other managed languages such as C\#, JavaScript, Python, and Ruby. The investigators will make both SVM and parallel applications publicly available, adding to the national research infrastructure.

Project Description: We have made progress on three fronts: (1) a scalable dynamic analysis framework; (2) invented z-rays for optimized array partitioning; and (3) scalable thread-local nursery collections. Before the grant began, we completed an initial design and implementation of a dynamic analysis framework that efficiently utilizes multicore cache architectures [OOPSLA 2009]. It introduces Cache-friendly Asymmetric Buffering (CAB), a lock-free ring buffer that implements efficient communication between application and analysis threads. We guided the design and implementation with a model of dynamic analysis overheads. The framework implements exhaustive and sampling event processing and is analysis-neutral. We evaluated the framework with five popular and diverse analyses, and show performance improvements even for lightweight, low-overhead analyses.This design has two problems: (1) the CAB buffer size was fixed and (2) the threading model was naive. The problem with a fixed buffer size is that the workload generated by the various program threads may vary a lot. We experimentally confirmed this problem: the best buffer size varies based on program, analysis, and architecture. We are therefore investigating how to dynamically size the buffer based on the workload, rate of consumption, and using memory proportional to the number of processors (not threads). We are investigating several variants of our algorithm for a realistic threading model that can adapt to load imbalance and still bound memory usage. This activity has promising preliminary results, and is on-going. In pursuit of scalable garbage collection, we started by attacking (1) large arrays and (2) synchronization at collection time. Due to the space restrictions, we will describe these activities in more details in our next report.

Jobs Summary: A Graduate Research Assistant was appointed .5 FTE. Calculations of Number of Jobs were made using OMB guidance. (Total jobs reported: 1)

Project Status: Less Than 50% Completed

This award's data was last updated on Jul. 27, 2009. Help expand these official descriptions using the wiki below.


Funds Recipient

University of Texas At Austin
AUSTIN, TX 78712
See more awards to this recipient

Place of Performance

101 E. 27th Street
Suite 4.300
Austin, TX 78713
See more awards in this zip code



Wiki Description

No comments have been added for this project.

Edit the Wiki Description (editing policy)


Post a comment