His expertise is in computer architecture and compilers, and his research currently targets methods of exploiting parallelism in multicore processors and FPGAs. Greg completed his doctorate at Carnegie Mellon University in 2003, after undergraduate and Masters degrees at the University of Toronto in 1995 and 1997 respectively. He is a recipient of the Ontario Ministry of Research and Innovation Early Researcher Award Award (2007), a Siebel Scholar (2002), an IBM CAS Faculty Fellow, and a senior member of IEEE and ACM.