Resource Proportional Software Design for Emerging Systems - Suparna Bhattacharya, Kanchi Gopinath, Doug Voigt

Resource Proportional Software Design for Emerging Systems

Buch | Hardcover
386 Seiten
2020
CRC Press (Verlag)
978-1-138-05354-0 (ISBN)
179,95 inkl. MwSt
This book raises developer awareness to the central principles and benefits of resource proportional software design in creating an antidote to the problem of run-time bloat in deeply layered software stacks. The book motivates discussion on implications for emerging technologies for system designers.
Efficiency is a crucial concern across computing systems, from the edge to the cloud. Paradoxically, even as the latencies of bottleneck components such as storage and networks have dropped by up to four orders of magnitude, software path lengths have progressively increased due to overhead from the very frameworks that have revolutionized the pace of information technology. Such overhead can be severe enough to overshadow the benefits from switching to new technologies like persistent memory and low latency interconnects.

Resource Proportional Software Design for Emerging Systems introduces resource proportional design (RPD) as a principled approach to software component and system development that counters the overhead of deeply layered code without removing flexibility or ease of development. RPD makes resource consumption proportional to situational utility by adapting to diverse emerging needs and technology systems evolution.

Highlights:






Analysis of run-time bloat in deep software stacks, an under-explored source of power-performance wastage in IT systems



Qualitative and quantitative treatment of key dimensions of resource proportionality





Code features: Unify and broaden supported but optional features without losing efficiency



Technology and systems evolution: Design software to adapt with changing trade-offs as technology evolves



Data processing: Design systems to predict which subsets of data processed by an (analytics or ML) application are likely to be useful



System wide trade-offs: Address interacting local and global considerations throughout software stacks and hardware including cross-layer co-design involving code, data and systems dimensions, and non-functional requirements such as security and fault tolerance




Written from a systems perspective to explore RPD principles, best practices, models and tools in the context of emerging technologies and applications

This book is primarily geared towards practitioners with some advanced topics for researchers. The principles shared in the book are expected to be useful for programmers, engineers and researchers interested in ensuring software and systems are optimized for existing and next generation technologies.

The authors are from both industry (Bhattacharya and Voigt) and academic (Gopinath) backgrounds.

Suparna Bhattacharya is a Distinguished Technologist at Hewlett Packard Enterprise. She has spent most of her career in systems software development and research (5 years at HPE preceded by 21 years at IBM), including several enjoyable years as a well-recognized open source contributor to the Linux kernel. Her recent work advances the use of nonvolatile memory technologies and cross-layer optimization in storage and hyper-converged systems for edge to core data services,containers, machine learning, and artificial intelligence. Suparna is an ACM India eminent speaker and has served on program committees for ASPLOS, OOPSLA, MASCOTS, ECOOP, HotStorage, and USENIX FAST. She holds a B.Tech from IIT Kharagpur (1993) and a (late-in-life) PhD with a best thesis award from the Indian Institute of Science (2013). Kanchi Gopinath is a professor at Indian Institute of Science in the Computer Science and Automation Department. His research interests are primarily in the computer systems area (Operating Systems, Storage Systems, Systems Security, and Systems Verification). He is currently an associate editor of IEEE Computer Society Letters and was earlier an associate editor of ACM Transactions on Storage (2009-2018). His education has been at IIT-Madras (B.Tech’77), University of Wisconsin, Madison (MS’80) and Stanford University(PhD’88). He has also worked at AMD (Sunnyvale) (’80-’82), and as a PostDoc (’88-’89) at Stanford. Doug Voigt is a retired Distinguished Technologist who worked for HP and HPE storage for his entire 40 year career. He has developed firmware and software for disk controllers, disk arrays, and storage management. He has led HP and HPE virtual array advanced development projects and strategy since 1990. For the last 10 years his focus has been on non-volatile memory systems. Throughout his career, Doug was a strong proponent of industry standards. He has been a member the Storage Network Industry Association (SNIA) since 2009. He served on the SNIA board of directors, technical council, and as co-chair of the NVM Programming Technical Working Group. Doug has over 50 patents, mostly in the areas of virtual arrays and persistent memory. Doug’s hobbies include music, photography, and reading science fiction/fantasy.

Introduction. The Problem of Software Bloat. Does Lean Imply Green? How Bloat in Software Impacts System Power Performance. Resource Proportional Software Design Principles to Reduce Propensity for Bloat. Resource Proportional Design Strategies I. Resource Proportional Design Strategies: II. Resource Proportional Design Strategies III. Resource Proportional Programming for Persistent Memory Applications. Resource Proportionality in Memory Speed Fabrics. Applying Resource Proportional Design Principles to a Deeply Layered Stack. Data Centric Resource Proportional Systems Design. Adapting the Systems Software Stack to a Changing Paradigm of Uniform Logical Access to a Radically Non-Uniform System. Bridging the Gap. Conclusions and Call to Action.

Erscheinungsdatum
Zusatzinfo 14 Tables, black and white; 77 Illustrations, black and white
Verlagsort London
Sprache englisch
Maße 156 x 234 mm
Gewicht 910 g
Themenwelt Mathematik / Informatik Informatik Software Entwicklung
ISBN-10 1-138-05354-6 / 1138053546
ISBN-13 978-1-138-05354-0 / 9781138053540
Zustand Neuware
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Deterministische und randomisierte Algorithmen

von Volker Turau; Christoph Weyer

Buch | Softcover (2024)
De Gruyter Oldenbourg (Verlag)
64,95
Programmieren erlernen und technische Fragestellungen lösen

von Harald Nahrstedt

Buch | Softcover (2023)
Springer Vieweg (Verlag)
44,99