The Varied Life of Chris Gregg
I am a second year graduate student in the Computer Engineering program at UVA. My advisor is Kim Hazelwood, and I am currently researching the hardware/software interface for heterogeneous computing.
I am a second year graduate student in the Computer Engineering program at UVA. My advisor is Kim Hazelwood, and I am currently researching the hardware/software interface for heterogeneous computing.

Before arriving at UVA, I have:
Since 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
- 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, and Computer Networking.
- 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