David F. Bacon Explained

David Francis Bacon
Birth Date:1963 2, df=y
Citizenship:American
Fields:Computer science
Workplaces:IBM Watson Research Center
Harvard Computer Science Dept.
Google
Alma Mater:U.C. Berkeley
Thesis Title:Fast and Effective Optimization of Statically Typed Object-Oriented Languages
Thesis Url:http://digitalassets.lib.berkeley.edu/techreports/ucb/text/CSD-98-1017.pdf
Thesis Year:1997
Doctoral Advisor:Susan L. Graham
Awards:ACM Fellow

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 theNON-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 inhardware,[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]

Google

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.

External links

Notes and References

  1. https://academiccommons.columbia.edu/catalog/ac:140914 Shaw, David Elliot (1982). The NON-VON Supercomputer, Technical Report CUCS-029-82, Columbia University.
  2. Dupuy. Alexander. Schwartz. Jed. Yemini. Yechiam. Bacon. David. NEST: a network simulation and prototyping testbed. Communications of the ACM. 33. 10. 1990. 63–74. 0001-0782. 10.1145/84537.84549. 5311305. free.
  3. http://www.cs.cornell.edu/skeshav/real/overview.html Keshav, S. REAL 5.0 Overview
  4. Book: Strom . Robert E. . Bacon . David F. . David F. Bacon . Goldberg . Arthur P. . Lowry . Andy . Yellin . Daniel M. . Yemini . Shaula . Hermes - A Language for Distributed Computing . Englewood Cliffs, NJ, USA . Prentice-Hall . 1991 . 978-0-13-389537-7 .
  5. http://econcs.seas.harvard.edu/publications/publication-authors/bacon-david-f Harvard EconCS Group
  6. http://awards.acm.org/award_winners/bacon_4810628.cfm ACM Fellows - David F. Bacon
  7. Book: Bacon. David F.. Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '03. Cheng. Perry. Rajan. V. T.. A real-time garbage collector with low overhead and consistent utilization. 2003. 285–298. 10.1145/604131.604155. 978-1581136289. 10.1.1.13.6486. 52819687.
  8. https://www.ibm.com/support/knowledgecenter/SSSTCZ/welcome_wrt_family.html IBM WebSphere Real Time
  9. https://www-03.ibm.com/press/us/en/pressrelease/21033.wss IBM and Raytheon Deliver Technology Solution for DDG 1000 Next Generation Navy Destroyers
  10. http://www.sigplan.org/Awards/POPL Most Influential POPL Paper Award
  11. Book: Bacon. David F.. ECOOP 2001 — Object-Oriented Programming. Rajan. V. T.. Concurrent Cycle Collection in Reference Counted Systems. 2072. 2001. 207–235. 0302-9743. 10.1007/3-540-45337-7_12. Lecture Notes in Computer Science. 978-3-540-42206-8. 10.1.1.32.6283.
  12. http://php.net/manual/en/features.gc.collecting-cycles.php PHP Manual - Collecting Cycles
  13. Bacon. David F.. Cheng. Perry. Shukla. Sunil. And Then There Were None: A Stall-Free Real-Time Garbage Collector for Reconfigurable Hardware. Communications of the ACM. 56. 12. 2013. 101–109. 0001-0782. 10.1145/2534706.2534726. 52901561.
  14. Moss. Eliot. The cleanest garbage collection. Communications of the ACM. 56. 12. 2013. 100. 0001-0782. 10.1145/2534706.2534725. 9688334.
  15. http://www.sigplan.org/Highlights/Papers ACM SIGPLAN Research Highlights
  16. Ph.D. . Bacon . David F. . 1997 . Fast and Effective Optimization of Statically Typed Object-Oriented Languages . University of California, Berkeley .
  17. Bacon. David F.. Sweeney. Peter F.. Fast static analysis of C++ virtual function calls. ACM SIGPLAN Notices. 31. 10. 1996. 324–341. 0362-1340. 10.1145/236338.236371. 10.1.1.69.2267.
  18. https://sable.github.io/soot/resources/lblh11soot.pdf The Soot framework for Java program analysis
  19. https://godoc.org/golang.org/x/tools/go/callgraph/rta Go Documentation - package rta
  20. Bacon. David F.. Konuru. Ravi. Murthy. Chet. Serrano. Mauricio. 16929488. Thin locks. ACM SIGPLAN Notices. 33. 5. 1998. 258–268. 0362-1340. 10.1145/277652.277734. free.
  21. http://www.cs.utexas.edu/users/mckinley/20-years.html 20 Years of PLDI (1979–1999): A Selection, Kathryn S. McKinley, Editor