Featured in Five is a monthly section where we pose five questions to a Computing Reviews featured reviewer. Here are the responses from our February featured reviewer, Xinfei Guo (University of Virginia).
Q: What is the most important thing that's happened in computing in the past 10 years?
A: Since my research is mostly on the hardware side, I know more about hardware advances. But I do really appreciate all of the innovations in software that brings all needs into reality. Actually, what I think is the most important thing that happened in computing in the past 10 years is the concept of hardware/software codesign. Maybe 10 years ago, hardware engineers and software engineers didn't talk to each other because they didn't even understand a single word of each other's topics. But during the last decade, there were so many research efforts on bringing hardware and software together, it has become a rule that hardware should be accessible to software, and vice versa. A simple example of hardware/software codesign is hardware accelerators. Consider neural network or machine learning applications, which require lot of computing resources; researchers work hard to accelerate the performance. Software engineers might come up with innovative algorithms to reduce computing loads, but this might be too costly in hardware; to evaluate this, hardware engineers need to either prototype the algorithm on FPGAs or build ASICs for demonstrating efficiency. In the meantime, hardware engineers can bring new IP designs (e.g. fast adders, FFT, and so on) to assist software engineers in achieving the speedup while saving hardware costs. Such examples are widely used in industry. Nowadays, hardware engineers need to understand a lot of software concepts well, and software engineers are required to deliver good codes that have meanings for hardware implementations. All of the tool vendors are making good progress on this aspect. Another example is the concept of high-level synthesize (HLS), which tries to make FPGA hardware transparent to software engineers. Imagine 10 years later, hardware blocks will be like apps in an app store today: people can just assemble whatever they need to achieve their functions with a relatively low cost. I am looking forward to seeing this happen, and believe the boundary between hardware and software is going to become harder to distinguish.
Q: By the end of your career, where do you think computer science will have taken us? What are you working on that might contribute to that?
A: This is a hard question. Since I am just beginning my career, I am really passionate about the future of the computer science. I believe computer science will be the subject that will fundamentally change people's lives. One issue people are facing now is a lack of time. There is so much information and data to process, and people are busy with their social networks. I think the future of computer science is to save people's time. This could be done with smart devices, self-driving cars, or robots. If it happens that half of the efficiency can be improved, then we can enjoy this half of our time for music, arts, or good movies. I am very positive about this, especially as I see the advances of AI, machine learning and all aspects of “smart” computing.
As a hardware researcher, I think I can contribute in several ways. First, we need to deliver good hardware to support application-level innovations. For example, the CPU clock speed needs to be fast enough to process the data, and the large amount of data needs parallel architectures to do the computing. Second, we need to work more closely with system-level researchers to increase the scale of current computing platforms; for example, we could add more IPs for various applications or even make hardware programmable. Last but not least, we need to be able to make sure hardware runs reliably over a long time span, especially for those automobile applications or medical applications, where zero faults are required. Good hardware needs to be able to do a good job all of the time.
Q: Who is your favorite historical figure? Why?
A: My favorite historical figure is Thomas Jefferson, who is also the founder of our great university. He is such a complete package who is not only good at politics and being a president. He also contributed a lot to the fields of architecture, education, and the arts. I always want to be someone with an open vision of the world instead of being limited to my own field of interest.
Q: If you weren't working in the computer science field, what would you be doing instead?
A: I'd like to be a gourmet chef, or at least a good cook. I am a big fan of eating and am always amazed by how culture and food are bonded together. I appreciate how people invented so many ways of eating and so much delicious food around the world. I dream of traveling around the world and tasting local food and exploring different cultures.
Q: What is your favorite type of music?
A: I like all types of good music. In particular, I like country music, rock, jazz, and piano songs. I am a big fan of country rock bands like the Eagles. Most of the time, I listened ‘60s and ‘70s music, which might not exactly match my age, but that is the type of music I am into.