Featured Engineer

Interview with Dr. Murali Annavaram

Dr. Murali Annavaram

Interview with Dr. Murali Annavaram - Associate Professor in Ming Hsieh Department of Electrical Engineering at USC

Can you give us a little background about yourself?

I am an Associate Professor in the Ming Hsieh Department of Electrical Engineering at USC. I have been a faculty member at USC from 2007. Prior to USC, I was a senior research scientist at Intel Microprocessor Research Labs for six years followed by a year stint as a researcher at Nokia Research Center in Palo Alto. My work at Intel involved designing energy efficient server chips and 3D die stacking technologies. At Intel, one of the most important concepts I worked on is energy per instruction throttling. This work showed how to effectively use the full power budget of a chip multiprocessor in the presence varying instruction level parallelism. Intel’s TurboBoost technology is based on similar thesis. At Nokia, I worked on how to improve traffic flow by using mobile devices as speed sensors.

There is one thing that is common to all my jobs: I had the opportunity to work alongside some of the best minds in whatever field I was working on. And, if you work in an environment where there are so many great minds you are bound to get better at your own work, even if you did not intend to. 

Why did you choose Electrical Engineering and Computer Science and when did you start?

I started as a Computer Science undergraduate student at the National Institute of Technology (NIT), Warangal in India in 1989. Before going to NIT, I never saw a computer and I was somewhat clueless about what career paths I can select at that time. I was the first Engineer at home and hence, I had to guess some. One reason I chose Computer Science was that it was the most selective field for admissions in India at that time and I figured the most selective field must also be the most interesting field.

At NIT, we had access to a time-sharing server that we first got to program using Vt100 terminals. It was a great experience to write my first “Hello World” program in Pascal. We coded whenever we had a chance to access the computing systems. Over the four years I spent at NIT the computing facilities slowly improved and we were able to gain access for longer hours. Of course, it was also very hot in NIT and the only place with AC ON was the computer center. So it was a respite to spend time there while enjoying coding.

One of the Professors, Prof. R Govindarajulu had inculcated in me an interest in the inner workings of a computer. My first course in computer architecture really opened my eyes to the world of computing hardware. I wanted to mix my interest in software and hardware into my career path and clearly computer architecture fits that bill.

Can you tell us about your work at University of Southern California Viterbi School of Engineering?

At USC, I work with a wonderful group of bright PhD students. They work hard, focused and simply fun to interact. My group’s work primarily focuses on three topics: energy efficient parallel computing systems (think servers and GPUs), resilient computing, and mobile operating systems for body area sensors. These topics have a clear connection to my industry experience at Intel and Nokia.

One of your research interests is the efficiency and reliability of computing platforms. Can you please tell us more about it?

Energy efficiency is a critical concern for all computing platforms. It has been a concern for many years now and many people have been working in this domain. I work specifically on a topic called energy proportional computing. Energy proportional computing demands that a computing system consume energy in proportion to the work that is performed. For instance, today many servers in datacenters operate at less than 100% utilization but majority of these servers burn near-peak power at much lower utilizations. My group’s work is focused on improving the proportionality. We have been working on one particular server architecture called KnightShift where we combine a high performance server with a low power computing platform and the two units operate as a single entity. When the high performance server utilization is low then the system automatically shuts down the high performance (and hence high power) server and switches all work to run on the lower powered system. Only when there is sufficient work the primary high performance server is woken up.

My group has also been working on improving energy efficiency of graphical processing units (GPUs). GPUs are going to be the backbone of future supercomputers and it is essential to improve their power efficiency. When GPUs run code that is not fully parallelized they can waste power. We have been working on approaches to improve GPU efficiency in the presence of irregular application parallelism.

Finally, reliability of computing platforms is a growing concern. As technology advances and transistor size shrinks, one of the side effects is that the transistor behavior becomes unpredictable, or at the least deviant. As a result, many potential failures mechanisms can occur in future processors. My group’s goal is to provide ways to efficiently monitor the ageing of a processor and then detect any impending failures. We then take corrective action to keep operating the chip functionally correctly but potentially at the cost of reduced performance.

Can you please tell us a background about your book, Parallel Computer Organization and Design?

I co-wrote this book with my colleagues, Prof. Michel Dubois at USC and Prof. Per Stenstrom at Chalmers University. When I started at USC the book was already in the works and Prof. Dubois invited me to write about three areas that I knew most: energy efficient computing in chip multiprocessors, technology evolution and tools for evaluating computer systems. It was a great opportunity to put my thoughts into words and also share some of my own knowledge base with the broader community. I quickly jumped on the opportunity to work with my co-authors and for the next two years we spent significant amount of time writing, discussing and editing the content. Of course, creating homework problems and writing up solutions to these problems was the most painful part of writing any book; I think it is particularly true with this book. We wanted to strengthen the understanding of the material with very detailed exercises. We also wanted to help all the instructors who wanted to use the book with equally detailed solutions. In this era of digital teaching we also wanted to at least provide a set of Power Point slides for the instructors. After years of honing the book using our own course teachings at USC and Chalmers we finally came up with a book that more than justifies all the time we spent.

What are you currently working on?

I am currently working on a couple of new areas. One area is to design a computing system that can efficiently process large graphs. Large graph processing is integral to the Bigdata analytics. Practically every social networking company uses large graphs, but more critically many domains such as Medicine are increasingly relying on graph processing for drug discovery. Graph processing requires many computational steps that are inherently at odds with today’s CPUs and GPUs. Our hope is to identify these deficiencies and build a computing platform just for graph processing.

What are your favorite hardware tools that you use?

We use a lot of in-house-enhanced processor simulators. We also use Xilinx FPGA boards and large servers that we take apart and instrument to measure power efficiency.

What are your favorite software tools that you use?

Some of my favorite software tools include simulators, virtual machine software, debugging tools built on top of GDB. And last but not the least, tools that allow me to write papers using Latex.

What books do you like to read aside from engineering books?

While I would love to read as many books as I can get hold of, time is the critical bottleneck. So I chose to read books that use fiction as a medium to tell stories about unfamiliar cultures, deeply disturbing (but age-old) social oppression, familiar cultures but provide a new insight that popular media never seem to be interested. Even in this narrow list of topics the range of available books is immense. Over the years, I acquired a taste for prose that flows like a river on a bed of pebbles; smooth on the top but complex just below the surface. Some of my favorite authors are Gabriel Garcia Marquez, Jose Saramago, Salman Rushdie, Margaret Atwood, David Mitchell, Chimamanda Ngozi Adichie, J.M Le Clezio.

Do you have any hobbies outside of work?

I do enjoy cooking, outdoors and travelling.

Few years from now, what direction do you see yourself?

In addition to my current research directions, I have an interest in operating system software for mobile and wearable devices. I have been working on this topic at a low intensity and I do see that this could become one of my major research areas.
As a professor, what words of encouragement would you give to your students?

I have the privilege to work with some of the best students in the world. On some topics, I learn from them more than they do from me. I do believe that believing strongly in what you do is critical for success. If you are not believer in your own work you cannot convince anyone else. Second, I also believe that one has to work in any domain for an extended period of time with passion and intensity before they get eventually recognized for their work in that field.

Is there anything you’d like to say to young people to encourage them to pursue Engineering?

Engineering is a great field to study. If you look at every great company that has changed the face of the world they are engineering-centric companies, from Intel to Google to JPL to SPACEX … these companies value engineers as precious resources. Your intellectual curiosity can be satisfied while concurrently getting paid well for doing whatever else you like to do with your free time.

Previous Spotlights

Like free stuff? Enter Here!
EEWeb Weekly Giveaway Sponsored by Mouser This Week: 4D Systems uLCD-32PTU 3.2" Intelligent LCD Module w/Touch
Enter Here
Login and enter if you're already a member.
Click Here