The Varied Life of Chris Gregg
I am a fourth year PhD candidate in the Computer Engineering program at UVA. My advisor is Kim Hazelwood, and I am currently researching dynamic heterogeneous scheduling.
I am a fourth year PhD candidate in the Computer Engineering program at UVA. My advisor is Kim Hazelwood, and I am currently researching dynamic heterogeneous scheduling.

Before arriving at UVA, I have:
• Been a U.S. Naval Officer in the Cryptology / Information Warfare Community (currently a Commander (O5) in the Reserves)
• Sailed out of San Diego on the USS CLEVELAND (LPD-7) and USS PELELIU (LHA-5), stopping in Hawaii, Singapore, Malaysia (Panang), Thailand (Phuket), Indonesia (Bali), Oman (Muscat), Bahrain, United Arab Emirates (Abu Dhabi and Dubai), Kuwait, and Australia (Bunbury, Darwin, and Sydney)
• Lived for two years in Gerringong, Australia with the Navy Personal Exchange Program
Since arriving at UVA, I have:
• Studied VLSI, Solid State Devices, Probability and Stochastic Systems, Embedded Computing, Compilers, Operating Systems, Computer Architecture, Computer Networking, and Parallel Computing.
• Been a U.S. Naval Officer in the Cryptology / Information Warfare Community (currently a Commander (O5) in the Reserves)
• Sailed out of San Diego on the USS CLEVELAND (LPD-7) and USS PELELIU (LHA-5), stopping in Hawaii, Singapore, Malaysia (Panang), Thailand (Phuket), Indonesia (Bali), Oman (Muscat), Bahrain, United Arab Emirates (Abu Dhabi and Dubai), Kuwait, and Australia (Bunbury, Darwin, and Sydney)
• Lived for two years in Gerringong, Australia with the Navy Personal Exchange Program
- Sailed as crew in the Sydney to Hobart ocean sailboat race
- Received a Master's in Education from Harvard University, in secondary school teaching
- Received a Bachelor's Degree in Electrical and Computer Engineering, The Johns Hopkins University
- Written for Let's Go Ireland, 2003
- Taught physics and computer science at Brookline High School (2002-04, 2005-08) in Brookline, MA and Pacific Collegiate School (2004-05) in Santa Cruz, CA
- Been head sailing instructor at Kollegewidgwok Sailing Club, in Blue Hill Maine (summer 2003)
- Written a shareware program called iWebSites
- Run in the Boston Marathon (2007) and the Marine Corps Marathon (2007) and competed in the (crazy) FirmMan Half-Ironman Triathlon (2007).
Since arriving at UVA, I have:
• Studied VLSI, Solid State Devices, Probability and Stochastic Systems, Embedded Computing, Compilers, Operating Systems, Computer Architecture, Computer Networking, and Parallel Computing.
- Written, with Marisabel Guevara, designed a Fault Tolerant, Real-Time Reconfigurable Adder.
- Written a little Java Applet to demonstrate how a Kogge-Stone adder works.
- Written a paper for an Embedded Systems class entitled Genetic Algorithms in Autonomous Embedded Systems.
- Written (also with Marisabel Guevara, Kevin Skadron, and Kim Hazelwood) the paper Enabling Task Parallelism in the CUDA Scheduler, which has been accepted into the PMEA Workshop at the 2009 PACT conference in Raleigh, NC.
- Updated the Wikipedia page on Kogge-Stone Adders
- Presented a poster on Contention-Aware Scheduling of Parallel Code for Heterogeneous Systems in HotPar 2010.
- Worked at AMD during the summer of 2010, which culminated in a paper in GPGPU-4 titled Analyzing Program Flow within a Many-Kernel OpenCL Application.
- Written a paper entitled Where is the Data? Why You Cannot Debate CPU vs. GPU Performance Without the Answer that I will present at ISPASS 2011.
- Taught 4th and 5th grade students parallel programming. Luther Tychonievich and I created a new programming language (EcoSim), and we had a blast teaching the students about parallel programming concepts.
- Taught CS/ECE 3330, Computer Architecture, Fall 2011.
- Run in the Charlottesville 10-Miler (2008, 2009, 2010) and the Charlottesville Marathon (2010).