Biography:David F. Bacon
David Francis Bacon | |
---|---|
Born | 24 February 1963 |
Citizenship | American |
Alma mater | U.C. Berkeley |
Awards | ACM Fellow |
Scientific career | |
Fields | Computer science |
Institutions | IBM Watson Research Center Harvard Computer Science Dept. |
Thesis | Fast and Effective Optimization of Statically Typed Object-Oriented Languages (1997) |
Doctoral advisor | Susan L. Graham |
David Bacon is an American computer programmer.
Career
Bacon began working as a programmer at age 16 and worked for a startup during his senior year of high school. At Columbia College, Columbia University, he worked first with David E. Shaw on the NON-VON supercomputer,[1] and then on network algorithms and simulation with Yechiam Yemini, creating the NEST Network Simulator,[2] which served as the basis for a number of other network simulators including Cornell's REAL[3] and thence LBL's ns simulator.
IBM Research
Bacon spent a large portion of his career at IBM's Thomas J. Watson Research Center, starting as a programmer in 1985 working on the Hermes distributed programming language,[4] and eventually becoming a Principal Research Staff Member.
He took a sabbatical in 2009 as a visiting professor of computer science at Harvard.[5]
Much of his work at IBM focused on garbage collection. In 2009 he was inducted as an ACM Fellow "for contributions to real-time systems and to object-oriented language design and implementation".[6]
His work on the Metronome[7] hard real-time tracing garbage collector became the basis for the IBM WebSphere Real Time Java virtual machine,[8] which was used in the software for the Navy's DDG 1000 Destroyer.[9] The original research was subsequently selected for the 2013 Most Influential Paper Award of the Symposium on Principles of Programming Languages.[10]
His work on garbage collecting cyclic structures[11] in reference counted systems has been used in a number of scripting languages, including PHP.[12]
In 2013 he published the first garbage collector implemented completely in hardware, [13] which was selected as an ACM Research Highlight.[14][15]
In addition to garbage collection, his work has focused on the implementation of concurrent and object-oriented languages. His thesis work on Rapid Type Analysis (RTA)[16] [17] has been used in many compilers and analysis frameworks to construct call graphs for object-oriented languages, including Soot[18] and Go.[19] In 2004, his work on high-performance locking for Java[20] appeared on the list of the 50 most influential PLDI papers of all time.[21]
In 2014 he joined Google, where he is now a Principal Engineer, working on the Spanner distributed database system. He is responsible for Spanner's Database engine.
References
- ↑ Shaw, David Elliot (1982). The NON-VON Supercomputer, Technical Report CUCS-029-82, Columbia University.
- ↑ Dupuy, Alexander; Schwartz, Jed; Yemini, Yechiam; Bacon, David (1990). "NEST: a network simulation and prototyping testbed". Communications of the ACM 33 (10): 63–74. doi:10.1145/84537.84549. ISSN 0001-0782. http://www.lib.ncsu.edu/resolver/1840.4/5876.
- ↑ Keshav, S. REAL 5.0 Overview
- ↑ Strom, Robert E.; Bacon, David F.; Goldberg, Arthur P.; Lowry, Andy; Yellin, Daniel M.; Yemini, Shaula (1991). Hermes - A Language for Distributed Computing. Englewood Cliffs, NJ, USA: Prentice-Hall. ISBN 978-0-13-389537-7.
- ↑ Harvard EconCS Group
- ↑ ACM Fellows - David F. Bacon
- ↑ Bacon, David F.; Cheng, Perry; Rajan, V. T. (2003). "A real-time garbage collector with low overhead and consistent utilization". Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '03. pp. 285–298. doi:10.1145/604131.604155. ISBN 978-1581136289.
- ↑ IBM WebSphere Real Time
- ↑ IBM and Raytheon Deliver Technology Solution for DDG 1000 Next Generation Navy Destroyers
- ↑ Most Influential POPL Paper Award
- ↑ Bacon, David F.; Rajan, V. T. (2001). "Concurrent Cycle Collection in Reference Counted Systems". ECOOP 2001 — Object-Oriented Programming. Lecture Notes in Computer Science. 2072. pp. 207–235. doi:10.1007/3-540-45337-7_12. ISBN 978-3-540-42206-8.
- ↑ PHP Manual - Collecting Cycles
- ↑ Bacon, David F.; Cheng, Perry; Shukla, Sunil (2013). "And Then There Were None: A Stall-Free Real-Time Garbage Collector for Reconfigurable Hardware". Communications of the ACM 56 (12): 101–109. doi:10.1145/2534706.2534726. ISSN 0001-0782.
- ↑ Moss, Eliot (2013). "The cleanest garbage collection". Communications of the ACM 56 (12): 100. doi:10.1145/2534706.2534725. ISSN 0001-0782.
- ↑ ACM SIGPLAN Research Highlights
- ↑ Bacon, David F. (1997). Fast and Effective Optimization of Statically Typed Object-Oriented Languages (PDF) (Ph.D. thesis). University of California, Berkeley.
- ↑ Bacon, David F.; Sweeney, Peter F. (1996). "Fast static analysis of C++ virtual function calls". ACM SIGPLAN Notices 31 (10): 324–341. doi:10.1145/236338.236371. ISSN 0362-1340.
- ↑ The Soot framework for Java program analysis
- ↑ Go Documentation - package rta
- ↑ Bacon, David F.; Konuru, Ravi; Murthy, Chet; Serrano, Mauricio (1998). "Thin locks". ACM SIGPLAN Notices 33 (5): 258–268. doi:10.1145/277652.277734. ISSN 0362-1340.
- ↑ 20 Years of PLDI (1979–1999): A Selection, Kathryn S. McKinley, Editor
External links
Original source: https://en.wikipedia.org/wiki/David F. Bacon.
Read more |