Advancing Life & Work

Resource Proportional Software Design for Emerging Systems: a new book by Suparna Bhattacharya

suparnabook.PNGBy Curt Hopkins, Managing Editor, Hewlett Packard Labs

Hewlett Packard Labs’ Suparna Bhattacharya has co-authored a book that proposes a new approach to software design, “research proportional design.”

She wrote the book with retired HPE colleague Doug Voight and Kanchi Gopinath, her advisor from the Indian Institute of Technology. “Resource Proportional Software Design for Emerging Systems,” out now from CRC Press, makes the case for a new, more efficient approach to software design.

Resource proportional software design is a practice meant to create software and systems that are more efficient, more adaptable, and easier to use in a changing technological environment. It was written with practitioners in mind, as well as researchers who are interested in writing efficient software and creating efficient systems.



“There are some parts which are meant for software engineers, to explain how they can write code that is resource proportional  so that, as they add more and more functionality to the software, it still does not get bloated,” says Bhattacharya. The authors have also written sections geared toward systems engineers, chapters devoted to explaining new technologies like persistent memory and low latency fabrics, and chapters designed to walk the reader through how proportional software design for AI applications can make data centers more energy efficient.

This approach also makes it more likely that what a software engineer writes will be able to adapt to emerging systems and technologies as they evolve.

“Getting a technical book of this depth through the finish line is a gruesome process that takes a long time and a gargantuan effort,” says HPE Fellow and Labs VP Paolo Faraboschi. “It is however very valuable for the community, and I’m proud that we can list such an accomplishment associated to a member of Hewlett Packard Labs.”

According to the publisher, here are some highlights of the book.

  • 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


0 Kudos
About the Author


Managing Editor, Hewlett Packard Labs