Filip Pizlo

Curriculum Vitae

pizlo@purdue.edu

Research Interests

My research focuses on enabling managed code to perform low-level, real-time, and safety-critical tasks, by advancing the state-of-the-art of garbage collectors, virtual machines, runtime systems, and programming models.

Education

Ph.D., Purdue University, West Lafayette, IN, dissertation topic: Java on Bare Hardware. Key courses: Compilers, Programming languages, Operating Systems, Formal Compiling Methods, Analysis of Algorithms, Parallel Computing, Numerical Methods, Randomized and Probabilistic Algorithms, Numerical Solutions to Ordinary Differential Equations. Due to graduate in 2009.
2003 B.S., Purdue University, West Lafayette, IN., double-majored in computer science and math. Key courses: Computer Architecture, Analysis of Algorithms, Data Structures, Databases, Compilers, Operating Systems, Software Engineering, Computer Networking, Real Time Systems, Scientific Computing, Numerical Methods, Calculus, Discrete Math, Linear Algebra, Differential Equations, Abstract Algebra, Physical Mechanics I (Honors), Gamma-ray Astrophysics, Russian.
1999 High school diploma, Brebeuf Jesuit Preparatory School, Indianapolis, IN.

Awards

Publications - Journals

  1. A. Armbuster, J. Baker, A. Cunei, C. Flack, D. Holmes, F. Pizlo, E. Pla, M. Prochazka, J.Vitek. A Real-Time Java Virtual Machine with Applications in Avionics. To appear in ACM Transactions in Embedded Computing Systems (TECS), 2006. (to appear).

Publications - Refereed Conferences

  1. F. Pizlo, E. Petrank, B. Steensgaard. Path Specialization: Reducing Phased Execution Overheads. In The 2008 International Symposium on Memory Management (ISMM 2008).
  2. F. Pizlo, E. Petrank, B. Steensgaard. A Study of Concurrent Real-time Garbage Collectors. In the ACM SIGPLAN 2008 Conference on Programming Language Design and Implementation (PLDI 2008). (Acceptance rate: 18%)
  3. F. Pizlo, D. Frampton, E. Petrank, B. Steensgaard. Stopless: A Real-Time Garbage Collector for Modern Platforms. In The 2007 International Symposium on Memory Management (ISMM 2007), October 2007.
  4. F. Pizlo, A. Hosking, J. Vitek. Hierarchical Real-time Garbage Collection. In the ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES'07), held in San Diego as part of the Federated Computing Research Conference (FCRC'07).
  5. J. Spring, F. Pizlo, R. Guerraoui, J. Vitek. Reflexes: Programming Abstractions for Highly Responsive Systems. In the 2007 ACM International Conference on Virtual Execution Environments (VEE'07), held in San Diego as part of the Federated Computing Research Conference (FCRC'07).
  6. J. Baker, A. Cunei, F. Pizlo, J. Vitek. Accurate Garbage Collection in Uncooperative Environments with Lazy Pointer Stacks. In Compiler Construction, 16th International Conference, CC 2007, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2007.
  7. F. Pizlo, J. Vitek. An Empirical Evaluation of Memory Management Alternatives for Real-time Java. In Proceedings of the 27th IEEE Real-Time Systems Symposium (RTSS), December 2006.
  8. J. Baker, A. Cunei, C. Flack, F. Pizlo, M. Prochazka, J. Vitek, A. Armbuster, E. Pla, D. Holmes. Real-time Java in Avionics Applications. In Proceedings of the 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), 2006.
  9. F. Pizlo, J. Fox, D. Holmes, J. Vitek. Real-time Java scoped memory: design patterns, semantics. In Proceedings of the IEEE International Symposium on Object-oriented Real-Time Distributed Computing (ISORC’04), pp 101112, Vienna, Austria, May 2004.

Publications - Workshops

  1. F. Pizlo. First in, first out memory. Presented at The 3rd Workshop on Java Technologies for Real-time and Embedded Systems, October 2005.
  2. F. Pizlo, M. Prochazka, S. Jaggannathan, J. Vitek. Transactional lock-free data structure for Real Time Java. In Workshop on Concurrency and Synchronization in Java Programs, St John’s, Newfoundland, Canada, July 2004.

Publications in Other Disciplines - Journals

  1. Holder, J.; Atkins, R. W.; Badran, H. M.; Blaylock, G.; Bradbury, S. M.; Buckley, J. H.; Byrum, K. L.; Carter-Lewis, D. A.; Celik, O.; Chow, Y. C. K.; Cogan, P.; Cui, W.; Daniel, M. K.; de La Calle Perez, I.; Dowdall, C.; Dowkontt, P.; Duke, C.; Falcone, A. D.; Fegan, S. J.; Finley, J. P.; Fortin, P.; Fortson, L. F.; Gibbs, K.; Gillanders, G.; Glidewell, O. J.; Grube, J.; Gutierrez, K. J.; Gyuk, G.; Hall, J.; Hanna, D.; Hays, E.; Horan, D.; Hughes, S. B.; Humensky, T. B.; Imran, A.; Jung, I.; Kaaret, P.; Kenny, G. E.; Kieda, D.; Kildea, J.; Knapp, J.; Krawczynski, H.; Krennrich, F.; Lang, M. J.; Lebohec, S.; Linton, E.; Little, E. K.; Maier, G.; Manseri, H.; Milovanovic, A.; Moriarty, P.; Mukherjee, R.; Ogden, P. A.; Ong, R. A.; Petry, D.; Perkins, J. S.; Pizlo, F.; Pohl, M.; Quinn, J.; Ragan, K.; Reynolds, P. T.; Roache, E. T.; Rose, H. J.; Schroedter, M.; Sembroski, G. H.; Sleege, G.; Steele, D.; Swordy, S. P.; Syson, A.; Toner, J. A.; Valcarcel, L.; Vassiliev, V. V.; Wakely, S. P.; Weekes, T. C.; White, R. J.; Williams, D. A.; Wagner, R. The first VERITAS telescope. Astroparticle Physics, Volume 25, Issue 6, p. 391-401. July 2006.
  2. Linton, E. T.; Atkins, R. W.; Badran, H. M.; Blaylock, G.; Boyle, P. J.; Buckley, J. H.; Byrum, K. L.; Carter-Lewis, D. A.; Celik, O.; Chow, Y. C. K.; Cogan, P.; Daniel, M. K.; Dowdall, C.; Falcone, A. D.; Fegan, D. J.; Fegan, S. J.; Finley, J. P.; Fortin, P.; Guiterrez, K. J.; Hall, J.; Hanna, D.; Holder, J.; Horan, D.; Hughes, S. B.; Humensky, T. B.; Jung, I.; Kenny, G. E.; Kertzman, M.; Kieda, D. B.; Kildea, J.; Knapp, J.; Krawczynski, H.; Lang, M. J.; LeBohec, S.; Maier, G.; Moriarty, P.; Ong, R. A.; Perkins, J. S.; Pizlo, F.; Pohl, M.; Quinn, J.; Ragan, K.; Rebillot, P. F.; Reynolds, P. T.; Sembroski, G. H.; Steele, D.; Swordy, S. P.; Valcarcel, L.; Wakely, S. P.; Weekes, T. C.; White, R. J. A new search for primordial black hole evaporations using the Whipple gamma-ray telescope. Journal of Cosmology and Astroparticle Physics, Issue 01, pp. 013. January 2006.
  3. Falcone, A. D.; Bond, I. H.; Boyle, P. J.; Bradbury, S. M.; Buckley, J. H.; Carter-Lewis, D.; Celik, O.; Cui, W.; Daniel, M.; D'Vali, M.; de la Calle Perez, I.; Duke, C.; Fegan, D. J.; Fegan, S. J.; Finley, J. P.; Fortson, L. F.; Gaidos, J.; Gammell, S.; Gibbs, K.; Gillanders, G. H.; Grube, J.; Hall, J.; Hall, T. A.; Hanna, D.; Hillas, A. M.; Holder, J.; Horan, D.; Jarvis, A.; Kenny, G. E.; Kertzman, M.; Kieda, D.; Kildea, J.; Knapp, J.; Kosack, K.; Krawczynski, H.; Krennrich, F.; Lang, M. J.; LeBohec, S.; Linton, E.; Lloyd-Evans, J.; Milovanovic, A.; Moriarty, P.; Muller, D.; Nagai, T.; Nolan, S.; Ong, R.; Pallassini, R.; Petry, D.; Pizlo, F.; Power-Mooney, B.; Quinn, J.; Quinn, M.; Ragan, K.; Rebillot, P.; Reynolds, P. T.; Rose, H. J.; Schroedter, M.; Sembroski, G.; Swordy, S. P.; Syson, A.; Tyler, K.; Vassiliev, V. V.; Wakely, S. P.; Walker, G.; Weekes, T. C.; Zweerink, J. A Search for TeV Gamma-Ray Emission from High-peaked Flat-Spectrum Radio Quasars Using the Whipple Air Cerenkov Telescope. The Astrophysical Journal, Volume 613, Issue 2, pp. 710-715. October 2004.
  4. Steinman, R.M., Pizlo, Z., Pizlo, F. Phi is not beta, and why Wertheimer's discovery launched the Gestalt revolution: a minireview. Vision Research, 40, 2257-2264. 2000.

Professional Experience

Microsoft Microsoft Research, Redmond, WA
Research intern, Winter 2006-2007 and Summer 2007
Along with Erez Petrank and Bjarne Steensgaard, designed and implemented three algorithms for concurrent copying garbage collection. Also designed and imlemented a new compiler optimization for improving garbage collector performance. Our CoCo algorithm for concurrent copying (published in ISMM'07) was the first such algorithm to support lock-freedom and multiprocessors while being fast enough for practical use.
S3 Lab Secure Software Systems Lab, Purdue University, West Lafayette, IN
Research Assistant, 2003-present
Core OpenVM developer. OpenVM is currently being used by several companies to evaluate Realtime Java, and was recently used in an unmanned aerial vehicle by Boeing. My contributions include the real-time garbage collector, the I/O scheduling subsystem, and various smaller components. I also developed new points-to analysis and abstract interpretation techniques as part of another project.
VERITAS Very Energetic Radiation Imaging Telescope Array System, Purdue University, West Lafayette, IN
Research Assistant, 2000-present
Designed and developed software for the VERITAS telescope array. VERITAS is an international project consisting of over 20 universities and research institutions. The telescope array is the largest of its type in the northern hemisphere. My work includes the design and development of the backend data acquisition system, the real-time data analysis, and the standard data format.
IBM T.J. Watson Research Center, IBM, Hawthorne, NY
Research intern, Summer 2004
Member of original design team for the X10 programming language. Developed original X10 compiler.

Software Development Experience

Bartok Compiler Extended the Microsoft Bartok Research Compiler to support three new on-the-fly lock-free concurrent copying garbage collectors and a new compiler optimization for improving garbage collector performance. Also added numerous useful enhancements to other parts of the system (including the reference counting collector, inliner, devirtualizer, and code scheduler).
See http://research.microsoft.com/research/act/default.aspx for more information about Bartok.
VERITAS Telescope Member of the core engineering team. I'm responsible for the standard "VBF" data format, one of the main data analysis packages (namely, the Quicklook real-time analysis), and the backend data acquisition system. My software is critical to the real-time recording, compression, and analysis of the 20 MB/sec VERITAS data stream.
See http://veritas.sao.arizona.edu/ for more information about VERITAS.
OpenVM Java VM Member of the core team. Designed novel garbage collection, scheduling, and data analysis techniques, in addition to implementing numerous features and fixes to other parts of the system. Currently maintaining the memory management and thread scheduling frameworks.
See http://www.ovmj.org/ for more information about OpenVM.
Jikes RVM Contributor. Worked on fixing handling of JNI entry and stop-the-world garbage collection (RVM-431), fixing the triggering of on stack replacement (RVM-439), and cleaning up how compilers handle global data structures (RVM-445). Currently working on implementing pure native threading.
See http://www.jikesrvm.org/ for more information about Jikes RVM.
TSF library Designed and implemented the TSF open source data format library. TSF is a scientific data format not unlike HDF5, FITS, or NetCDF, and is used by VERITAS for storing data summaries.
See http://homepage.mac.com/pizlo/tsf/ for more information about TSF.
Stochastic M-CAS Designed and implemented a mechanism for lock-free atomic multi-word compare-and-swap (Multi-CAS, or M-CAS) based on random numbers. Stochastic Multi-CAS can be used for a variety of non-blocking applications, especially concurrent garbage collection.
See http://homepage.mac.com/pizlo/smcas/ for more information about Stochastic Multi-CAS