Monday till Wednesday Lunches (12:00)
Restaurang Feiroz, Blåsenhus, 750 02 Uppsala, Tel: 018 - 591918
Monday Dinner (19:45)
Åkanten, Eriks Torg, 753 10 Uppsala, Tel: 018 - 150150
Tuesday Dinner (19:30)
Peppar Peppar, Suttungs gränd 3, 753 19 Uppsala, Tel: 018 - 131360
Talks
Lecture: Multiprocessor Mixed-Criticality Scheduling
|
||
Baruah Sanjoy Department of Computer Science and Engineering In mixed-criticality systems, functionalities of different degrees of importance are implemented upon a shared platform. Verifying the correctness of all functionalities in such systems at a level of assurance corresponding to the verification requirements of the highest criticality level tends to lead to implementations that make very inefficient utilization of platform resources during run-time. Mixed-criticality scheduling theory was developed in order to be able to obtain more resource-efficient implementations of mixed-criticality systems. During its first decade, mixed-criticality scheduling theory was primarily focused upon obtaining a better understanding of systems implemented upon uniprocessor platforms; we will survey some recent research that have attempted to extend the theory to apply to multiprocessor platforms, and enumerate some challenges that must be overcome in order to develop a comprehensive theory of multiprocessor mixed-criticality scheduling. |
|
|
Lecture: Selected Topics in Coherence and Consistency
|
||
Michel Dubois Department of Electrical Engineering In this presentation I will expose the fundamentals of coherency, store atomicity and memory consistency and apply them to small and large scale multiprocessors with in-order and out-of-order CPUs. Time permitting I will also cover advanced topics on these subjects. |
|
|
Lecture: Application programming on parallel and distributed computing platforms
|
||
Daniele Lezzi Barcelona Supercomputing Center, Spain
The growing complexity of current computing systems includes hardware aspects (multicore processors, accelerators, GPUS, FPGAs, etc) and system aspects (cluster and clouds). This forces application developers to deal with technological issues out of the scope of their work. They need to be aware of the concurrency of the system, existing APIs to access the computing platform, etc. This makes the code less readable, less portable, and in general decreases the productivity of the programmer. Several programming models have been proposed to improve the situation that provide higher levels of abstraction that cope with this complex systems.
Task-based programming models have proven to be the right approach to exploit large-scale parallelism of current systems, by enabling a data-flow execution model and avoiding global synchronization. COMPSs falls into this category and is able to exploit the inherent concurrency of sequential applications and execute them in distributed platforms, including clusters and clouds, taking into account data locality and node heterogeneity. |
|
|
Lecture: P : Modular and Safe Asynchronous Programming
|
||
Shaz Qadeer Microsoft Research, USA We describe the design and implementation of P, an asynchronous event-driven programming language. P allows the programmer to specify the system as a collection of interacting state machines, which communicate with each other using events. P unifies modeling and programming into one activity for the programmer. Not only can a P program be compiled into executable code, but it can also be validated using systematic testing. P was first used to implement and validate the USB device driver stack that ships with Microsoft Windows 8 and Windows Phone. P is now also being used for the design and implementation of robotics and distributed systems inside Microsoft and in academia. |
|
|
Philippas Tsigas Department of Computer Science and Engineering
Concurrent data structures provide the means to multi-threaded applications to share data.
Concurrent data structure designers are striving to maintain consistency
of data structures while keeping the use of mutual exclusion and expensive
synchronization to a minimum, in order to prevent the data structure from
becoming a sequential bottleneck. Maintaining consistency in the presence of
many simultaneous updates is a complex task. Standard implementations of
data structures are based on locks in order to avoid inconsistency of the shared
data due to concurrent modifications. Locks though introduce a sequential component in Amdahl's law. |
|
|
Tutorial: Why Memory Consistency Models Matter… And tools for analyzing and verifying them
(Slides)
|
||
Yatin Manerkar and Caroline Trippel Department of Computer Science
Heterogeneous parallelism and specialization are widely-used architecture levers for achieving high performance and power efficiency, especially inside smartphones and mobile devices. However, with many systems-on-chip comprising 6-10 different instruction set architectures and complex storage hierarchies, heterogeneous parallelism unfortunately often comes with increased challenges for software reliability, interoperability, and performance portability.
|
|