The Cheriton School of Computer Science will hold its annual Cheriton Symposium September 13th in the Davis Centre.
This year's symposium will consist of talks by Professor Frank Tip, and Faculty Fellowship recipients, Raouf Boutaba and Kate Larson from 2:00 pm to 5 pm in DC 1302.
Posters by Cheriton Graduate Student Scholarship recipients will be on display in the Great Hall, Davis Centre from 10:00 am to 4 pm.
Schedule of the Day
|10:00am - 4:00pm||DC Great Hall - Poster Session|
|12:30pm||DC 1301 - Lunch|
|2:00-2:10pm||DC 1302 - David Taylor - Welcome & Opening Remarks|
DC 1302 - Frank Tip - Data Centric Synchronization
Concurrency-related errors such as data races and deadlocks are frustratingly difficult to track down and eliminate in largeobject-oriented programs. Traditional approaches to preventing these problems rely on protecting instruction sequences with synchronization operations. Such control-centric approaches are inherently brittle as the burden is on the programmer to ensure that all concurrently accessed memory locations are protected consistently. Data-centric synchronization is an alternative approach that offloads some of the work on the language implementation. Data-centric synchronization groups fields of objects into atomic sets to indicate that these fields always must be updated atomically. Each atomic set has associated units of work, code fragments that preserve the consistency of that atomic set. Synchronization operations are added automatically by the compiler. We present an extension to the Java programming language that incorporates data-centric concurrency control. The resulting language, called AJ, relies on a type system that enables separate compilation and supports atomic sets that span multiple objects and that also supports full encapsulation for more efficient code generation. We evaluate our language design by refactoring classes from standard libraries as well as a number of multi-threaded programs to use atomic sets. Our results suggest that data-centric synchronization is easy to use, and enjoys low annotation overhead, while successfully preventing data races and deadlock. Moreover, our experiments suggest that acceptable performance can be achieved with a modest amount of tuning.
Joint work with Julian Dolby, Christian Hammer, Daniel Marino, Mandana Vaziri, and Jan Vitek
|3:00 - 3:50pm||
DC 1302 - Kate Larson - A Multiagent Systems Approach for Resource Sharing for Control of Wildland Fires
Wildland fires (or wildfires) occur on all continents except for Antarctica. These fires threaten communities, change ecosystems, destroy vast quantities of natural resources and the cost estimates of the damage done annually is in the billions of dollars. Controlling wildland fires is resource-intensive and there are numerous examples where the resource demand has outstripped resource availability. Trends in changing climates, fire occurrence and the expansion of the wildland-urban interface all point to increased resource shortages in the future. One approach for coping with these shortages has been the sharing of resources across different wildland-fire agencies. This introduces new issues as agencies have to balance their own needs and risk-management with their desire to help fellow agencies in need. Using ideas from the field of multiagent systems, we conduct the first analysis of strategic issues arising in resource-sharing for wildland-fire control. We also argue that the wildland-fire domain has numerous features that make it attractive to researchers in artificial intelligence and computational sustainability.
Joint work with Alan Tsang and Rob McAlpine
DC 1302 - Raouf Boutaba - Dynamic capacity provisioning in production clouds
The past few years have witnessed the rise of cloud computing, a paradigm that harnesses the massive resource capacity of data centers to support Internet services and applications in a scalable, flexible, reliable and cost-efficient manner. However, despite its success, recent literature has shown that effectively managing resources in production cloud environments is a difficult challenge. A key reason behind this difficulty is that both resources and workloads found in production environments are heterogeneous. In particular, large cloud data centers often consist of machines with heterogeneous resource capacities and performance characteristics. At the same time, real cloud workloads show significant diversity in terms of priority, resource requirements, demand characteristics and performance objectives. Consequently, finding an effective resource management solution that leverages resource heterogeneity to support diverse application performance objectives becomes a difficult problem. The focus of this talk will be on understanding the research challenges introduced by resource and workload heterogeneity in production cloud environments. We will first provide a characterization of workload and resource heterogeneities found in production data centers, and highlight the key challenges introduced by them. We will then describe our recent work addressing some of these challenges.