Cooperative Data and Computation Partitioning for Distributed Architectures

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=b2c_Pb6wHAg



Duration: 1:13:18
39 views
0


The recent design shift towards chip multiprocessors has spawned a significant amount of research in the area of program parallelization. Performance gains in the future will require programmer and compiler intervention to increase the amount of parallel work possible. The future abundance of cores on a single chip offers many possibilities in ways to exploit the underlying parallel resources. Much of the recent work in this area has fallen into the areas of coarse-grain parallelization by the programmer with new programming models, such as transactional memory, and different ways to exploit threads and data-level parallelization. In this talk, I will focus on a different angle for increasing the available parallelism to the cores: compiler techniques to detect and exploit fine-grain parallelism. This technique creates fine-grain threads by partitioning code at the granularity of individual operations and data across multiple cores and caches. First, I will present a profile-guided method for partitioning memory accesses that intelligently disperses data across multiple caches to minimize coherence traffic, while balancing the working set demands on each cache. Next, I will describe a method for partitioning the computation of a program across multiple cores that creates a set fine-grain threads which directly communicate scalar values. Finally, I will show how these methods synergistically combine and discuss future directions in this area.




Other Videos By Microsoft Research


2016-09-06Effective Scientific Data Management through Provenance Collection
2016-09-06Unified Dimensionality Reduction: Formulation, Solution and Beyond
2016-09-06Engineering Performance Using Control Theory: A How-To: Control Analysis & Real world applications
2016-09-06A Real-World Test-bed for Mobile Adhoc Networks: Methodology, Experimentations, Simulation & Results
2016-09-06Fusion of Optical and Radio Frequency Techniques: Cameras, Projectors and Wireless Tags
2016-09-06Hierarchical Phrase-Based Translation with Suffix Arrays.
2016-09-06Multi-stack automata reachability: A New Tractable Subclass
2016-09-06Seduced by Success: How the Best Companies Survive the 9 Traps of Winning          
2016-09-06Everything is Miscellaneous: The Power of the New Digital Disorder
2016-09-06Accelerating High Performance Computing Applications with Reconfigurable Logic
2016-09-06Cooperative Data and Computation Partitioning for Distributed Architectures
2016-09-06Rate Control Protocol (RCP): Congestion Control to Make Flows Complete Quickly
2016-09-06Engineering Performance Using Control Theory: A One Day How-To: Introduction & Theory Part 1
2016-09-06Paths Beyond Local Search: A Tight Bound for Randomized Fixed-Point Computation
2016-09-06Interaction Design for One-Handed Use of Mobile Devices
2016-09-06Einstein: His Life and Universe
2016-09-06Virtual Reality Therapy: Using immersive virtual reality games to help reduce suffering
2016-09-06A Crowd of One: The Future of Individual Identity           
2016-09-06Ubiquitous Reflective Technologies
2016-09-06Customizing the Computational Capabilities of Processors
2016-09-06Virgil: Objects on the Head of a Pin



Tags:
microsoft research