contributed articles
DoI: 10.1145/1461928.1461946
Research and education in compiler
technology is more important than ever.
BY maRY haLL, DaVID PaDua, anD KeshaV PInGaLI
Compiler
Research:
the next
50 Years
We PReSent a
perspective on the past contributions,
current status, and future directions of compiler
technology and make four main recommendations
in support of a vibrant compiler field in the years to
come. These recommendations were drawn from
discussions among presenters and attendees at a U.S.
National Science Foundation-sponsored Workshop
on Future Directions for Compiler Research and
Education in 2007. As 2007 was the 50th anniversary
of IBM’s release of the first optimizing compiler, it
was a particularly appropriate year to take stock of the
status of compiler technology and discuss its future
over the next 50 years. Today, compilers and high-level languages are the foundation of the complex and
ubiquitous software infrastructure that undergirds the
global economy. The powerful and elegant technology
in compilers has also been invaluable in other
domains (such as hardware synthesis). It is no
exaggeration to say that compilers and
high-level languages are as central to
the information age as semiconductor
technology.
In the coming decade, 2010 to 2020,
compiler research will play a critical role
in addressing two of the major challenges facing the overall computer field:
Cost of programming multicore processors. While machine power will continue to grow impressively, increased
parallelism, rather than clock rate, will
be the driving force in computing in
the foreseeable future. This ongoing
shift toward parallel architectural paradigms is one of the greatest challenges
for the microprocessor and software
industries. In 2005, Justin Rattner,
chief technology officer of Intel Corporation, said, “We are at the cusp of a
transition to multicore, multithreaded
architectures, and we still have not
demonstrated the ease of programming the move will require…”
3
Security and reliability of complex
software systems. Software systems
are increasingly complex, making the
need to address defects and security
attacks more urgent. The profound
economic impact of program defects
was discussed in a 2002 study commissioned by the U.S. Department of Commerce National Institute of Standards
and Technology (NIST), concluding
that program defects “are so prevalent and so detrimental that they cost
the U.S. economy an estimated $59.5
billion annually, or about 0.6% of the
gross domestic product.” The 2005
U.S. President’s Information Technology Advisory Committee (PITAC) report
Cyber Security: A Crisis of Prioritization
included secure software engineering and software assurance among its
top 10 research priorities, concluding
with: “Commonly used software engineering practices permit dangerous
errors, such as improper handling of
buffer overflows, which enable hundreds of attack programs to compromise millions of computers every year.
In the future, the Nation [the U.S.] may
face even more challenging problems
as adversaries—both foreign and do-
60 CommunICatIons of the aCm | feBRuaRY2009 | vol. 52 | No. 2