110 likes | 120 Views
Join Susan Eggers, BA in Economics and PhD from University of CA, Berkeley, as she discusses her technical skills and innovations in architecture and compilers. Discover how architects are addressing challenges in parallelism, concurrency, programming models, and more. Gain insights into new research projects and examples from the world of operating systems, transactional memory, fine-grain threads, virtual machine support, and new applications. Don't miss this opportunity to learn from a renowned expert in the field of computer architecture.
E N D
Your Speaker in a Nutshell BA in Economics 1965 PhD University of CA, Berkeley 1989 Technical skills and innovations that married architecture & compilers. Mostly collaborations. Pushed for quality over quantity, technology transfer & impact I have always loved my job. Thesis: better understanding of sharing behavior MVP: Simultaneous Multithreading Current work: a new life for dataflow machines Transitioning to retirement (golf, gardening & landscaping, food snob). Susan Eggers: SOSP Women's Workshop
Challenge in Computer Architecture There’s one biggie: programs run faster Susan Eggers: SOSP Women's Workshop
The Underlying Cause Susan Eggers: SOSP Women's Workshop
How Architects are Addressing the Challenge Some things we have some idea how to do: • More aggressive speculation (threads, memory, value) • More aggressive recovery mechanisms (transactional memory) • Lighter-weight locking mechanisms • Exploiting super-fine-grain parallelism with dataflow execution • Adding a few more processors • The engineering: building hardware for sharing and concurrency Susan Eggers: SOSP Women's Workshop
How Architects are Addressing the Challenge Some things we have not a clue about: • Writing parallel codes for 100s or 1000s of processors • Discovering other than embarrassingly parallel, coarse-grain parallelism • Determining the best programming model for writing parallel codes • Should the programmer detect parallelism or should the compiler do it automatically? • Devising language constructs to express parallelism • Exploiting the concurrency once we’ve discovered it • Avoiding race conditions, deadlock, livelock • Doing all this in a way that is simple and intuitive for the programmer Susan Eggers: SOSP Women's Workshop
How Architects are Addressing the Challenge Some things we have not a clue about: • Executing with 100s or 1000s of processors • Making good trade-offs between load balancing & locality • Recovering from failing processors (RAID issues) Susan Eggers: SOSP Women's Workshop
Rules of Thumb for Picking New Research Projects How to develop a nose for good research ideas. What in the underlying technology or application space has changed? • How has it changed? How does that affect my area of interest? • In what areas can I no longer do business as usual? • Where are the new performance bottlenecks? • What opportunities does the change bring? • What technology or techniques that went out of style can be resurrected? Caveat: technology trends don’t always turn out the way you expect • CCDs failed in computers; Prologue failed • Are supercomputers failing? • Will quantum and DNA computing succeed? Susan Eggers: SOSP Women's Workshop
Examples of OS Research that are Driven by Computer Architecture The operating system: • How do you design an OS for 1000s of processors? • How do current OSs hinder scalability? Where are the bottlenecks? Where are the centralized software structures? • Do you start from scratch? • Great opportunity to design free of tradition & an industry standard • What should be the key design criteria? • Do you use virtual machines to execute programs on small clusters of processors and then build a programming environment that hides that? Susan Eggers: SOSP Women's Workshop
Examples of OS Research that are Driven by Computer Architecture Transactional memory: • How should programs written with transactions interface with the OS? • What does rollback mean over a network? Security: • What if everyone is a parallel programmer? • latent concurrency bugs, deadlock, livelock • What are the implications for security? Susan Eggers: SOSP Women's Workshop
Examples of OS Research that are Driven by Computer Architecture Fine-grain threads: • The OS has to support more than pthreads. • How fine-grain can/should they be? • And stepping back, what is a thread? Can it be data centric? Virtual machine support in hardware: • What if virtual machines were very light-weight? • What might you use them for and how? • Can a virtual machine replace a process? a protection domain? Susan Eggers: SOSP Women's Workshop
Examples of OS Research that are Driven by Something Else New applications: • How will Google’s needs change the OS? • How should the OS manage fast I/O between CPUs (10Gb)? • How can the OS make up for its absence? Phase-change memory (fast, non-volatile, but high power) How would you build a file system if you didn’t need disks? Third-world computing: • Low-cost, low-power, multi-lingual, multiple education levels, different apps • What does the OS look like? More powerful processor, same number of pins? • How do you feed it? Susan Eggers: SOSP Women's Workshop