The following blog was originally posted in ACM SIGARCH on May 26th, 2020. It is written by Computing Community Consortium (CCC) Chair Mark D. Hill from the University of Wisconsin Madison. Hill is the recipient of the 2019 Eckert-Mauchly award, a lifetime achievement award in computer architecture.
TL;DR: This post reviews some successful visioning in computer architecture and related fields. It argues why visioning is necessary for our field to flourish and discusses how the Computing Community Consortium (CCC) has facilitated some of this. Visioning is especially critical now as disruptions arrive from many quarters.
Visioning: The development of a plan, goal, or vision for the future. From Latin videre–to see.
“It’s tough to make predictions, especially about the future.” –Yogi Berra
In my experience, “visioning” is a valuable tool for advancing computing. Visioning can be done at multiple levels for multiple purposes. At the narrowest level, researchers vision all the time when thinking about which problems to work on next. This can be done as an individual or as a group and often benefits from others’ input and perspectives by reading papers, connecting with academia or industry, and collaborating. I blogged about these concerns in Increasing Your Research Impact.
In this post, I discuss visioning beyond the research group level. One value of this type of visioning is energizing the community around “big ideas.” Ideally, these big ideas should be exciting to both the researchers themselves and those the researchers seek to benefit. In my experience, understanding what benefits the researchers’ audience is key to having an impact and generating further excitement. Input from diverse stakeholders via broad reading and/or well-constructed workshops are beneficial in implementing this value. To enhance impact, the fruits of this visioning should be disseminated to the community through whitepapers, talks, blogs, etc.
Another value of visioning beyond the research group level is facilitating additional research funding. This funding is substantially justified by the impact the research has on society and the taxpayers who fund the research. Gaining additional funding is achieved by paying attention to creating value for others–as discussed above–and communicating that value to the appropriate people and entities. The means of this communication are typically whitepapers, slide decks, and (virtual) visits to federal agencies to present visioning results and discuss concerns with the citizens’ representatives. Effective visioning requires both good ideas and good communication.
The “cost” of visioning is time and effort. Like other service work, visioning is necessary to keep a field intellectually grounded and vibrant and brings personal satisfaction, albeit without a promise of explicit external credit.
Consider two examples of computer architecture visioning that I participated in with traceable impacts. The 2012 21st Century Computer Architecture whitepaper described the slowing of Moore’s Law and how to further performance-energy improvements would require innovations in computer architecture and across many levels of the hardware-software “stack.” This whitepaper mostly explained to a broad audience the realities that architects already knew. In 2016, Arch2030: A Vision of Computer Architecture Research over the Next 15 Years, advanced computer architecture visions further with an emphasis on a specialization gap, cloud computing, vertical (3D) technologies, getting closer to physics, and support of machine learning. These helped catalyze the U.S. National Science Foundation’s programs Exploiting Parallelism and Scalability and Scalable Parallelism in the Extreme. These programs awarded US$16M per year (US$90M total) and cited again by the new Principles and Practice of Scalable Systems program that promises US$87M more in the 2020s.
Consider the next two examples on an even broader vision level, creating synergies for compute architecture with other fields. First, the 2018 Next Steps in Quantum Computing: Computer Science’s Role brought together mathematicians, physicists, and computer scientists (from architects to theoreticians) to examine the gap between quantum algorithms and the actual hardware implementation. Inspired by the conventional computing stack, the final report provides a roadmap for developing the hardware-software “stack” in between. This work helps inform currently evolving research and potential funding. Second, the 2019 Thermodynamic Computing workshop brought together researchers across many areas of science and computer science to examine whether and how one could build computing “accelerators” that mimic how nature efficiently seeks solutions with the lowest energy. The recently-issued report provides a multi-tiered roadmap that we hope catalyzes a new field.
All of the visioning activities that I discussed above were done in conjunction with the Computing Community Consortium (CCC) whose website states:
The mission of the Computing Research Association’s Computing Community Consortium (CCC) is to catalyze the computing research community and enable the pursuit of innovative, high-impact research. CCC conducts activities that strengthen the research community, articulate compelling research visions and align those visions with pressing national and global challenges. CCC communicates the importance of those visions to policymakers, government and industry stakeholders, the public, and the research community itself.
In my experience–admittedly biased as I am the CCC Chair until June 30–the CCC is an excellent partner for doing visioning, as CCC staff provides considerable support before, during, and after a visioning workshop. This is particularly important for interdisciplinary workshops with no common conference. The CCC encompasses all of the computing and how it interacts with related fields from Artificial Intelligence to supporting Workforce Training. This image illustrates some key CCC visioning process flows.
Depending on where you are in your career journey, you can interact with the CCC in several ways:
- Read CCC whitepapers and workshop reports related to your area.
- If invited, participate in a CCC workshop.
- Propose a CCC workshop as explained by this call for proposals.
- Consider the CCC as a model to form or morph analogous efforts in other countries.
Of course, the CCC does not have a monopoly on visions. NSF does visioning, such as Future Directions for Parallel and Distributed Computing: SPX 2019 Workshop. IEEE does considerable visioning, including Rebooting Computing. The CCC partially inspired SIGARCH to begin visioning with 2017’s Trends in Machine-Learning, 2019’s Agile and Open Hardware for Next-Generation Computing, and more to come! Visioning is not limited to the USA, as SIGARCH and IEEE are international and European HiPEAC develops biannual visions.
As a graduate student, one learns to write papers. As a young professional, one learns to write grants or industrial project proposals. As one matures as a researcher, please consider working on visions for the benefit of others and yourself. While Yogi Berra sees visioning as hard, it is possible. The future is rooted in the present and can be discerned via deep listening to diverse viewpoints, synthesizing, and communicating. As William Gibson says, “The future is already here – it’s just not evenly distributed.” Let’s seek computing’s future and disseminate its benefits broadly!