Andrew Douglas Hilton
Electrical and Computer Engineering
Director, Innovation in Computing Education, Professor of the Practice in the Department of ECE
Research Interests
Computer architecture, specifically architectural support for security and energy-efficient performance
Bio
Drew Hilton is a Professor of the Practice in Electrical and Computer Engineering, as well as Pratt’s Director of Innovation in Computing Education.
His main focus is on teaching professional-level programming skills to ECE’s master's students to prepare them for software engineering careers.
Professor Hilton also teaches a 3-week introduction to Programming Python for Duke's Master in Interdisciplinary Data Science, and Duke's Center for Computational Thinking.
He has two Coursera specializations, one in Java, and another in C.
Education
- Ph.D. University of Pennsylvania, 2010
Positions
- Professor of the Practice in the Department of Electrical and Computer Engineering
- Professor of the Practice in the Social Science Research Institute
- Associate Professor of the Practice of Computer Science
Awards, Honors, and Distinctions
- Klein Family Distinguished Teaching Award. Pratt School of Engineering. 2015
Courses Taught
- ECE 899: Special Readings in Electrical Engineering
- ECE 651: Software Engineering
- ECE 590: Advanced Topics in Electrical and Computer Engineering
- ECE 553: Compiler Construction
- ECE 551D: Programming, Data Structures, and Algorithms in C++
- ECE 391: Projects in Electrical and Computer Engineering
- COMPSCI 553: Compiler Construction
Publications
- Huang Z, Joao JA, Rico A, Hilton AD, Lee BC. DynaSprint: Microarchitectural sprints with dynamic utility and thermal management. In: Proceedings of the Annual International Symposium on Microarchitecture, MICRO. 2019. p. 426–39.
- Hilton AD, Lipp GM, Rodger SH. Translation from Problem to Code in Seven Steps. In: CompEd 2019 - Proceedings of the ACM Conference on Global Computing Education. 2019. p. 78–84.
- Hilton AD, Lipp GM, Rodger SH. A technique for translation from problem to code. In: Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE. 2018. p. 375.
- Lehman TS, Hilton AD, Lee BC. MAPS: Understanding Metadata Access Patterns in Secure Memory. In: Proceedings - 2018 IEEE International Symposium on Performance Analysis of Systems and Software, ISPASS 2018. 2018. p. 33–43.
- Jacobvitz AN, Hilton AD, Sorin DJ. Multi-program benchmark definition. In: ISPASS 2015 - IEEE International Symposium on Performance Analysis of Systems and Software. 2015. p. 72–82.
- Battle S, Hilton AD, Hempstead M, Roth A. Flexible register management using reference counting. In: Proceedings - International Symposium on High-Performance Computer Architecture. 2012. p. 273–84.
- Hilton A, Roth A. SMT-directory: Efficient load-load ordering for SMT. IEEE Computer Architecture Letters. 2010 Jan 1;9(1):25–8.
- Hilton A, Nagarakatte S, Roth A. ICFP: Tolerating all-level cache misses in in-order processors. IEEE Micro. 2010 Jan 1;30(1):12–9.
- Hilton A, Roth A. BOLT: Energy-efficient out-of-order latency-tolerant execution. In: Proceedings - International Symposium on High-Performance Computer Architecture. 2010.
- Hilton A, Roth A. Decoupled store completion/silent deterministic replay: Enabling scalable data memory for CPR/CFP processors. In: Proceedings - International Symposium on Computer Architecture. 2009. p. 245–54.
- Hilton A, Eswaran N, Roth A. CPROB: Checkpoint processing with opportunistic minimal recovery. In: Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT. 2009. p. 159–68.
- Hilton A, Nagarakatte S, Roth A. Icfp: tolerating all-level cache misses in in-order processors. In: Proceedings - International Symposium on High-Performance Computer Architecture. 2009. p. 431–42.
- Hilton AD, Roth A. Ginger: Control independence using tag rewriting. In: Proceedings - International Symposium on Computer Architecture. 2007. p. 436–47.
- Abbasi H, Wolf M, Schwan K, Eisenhauer G, Hilton A. XChange: Coupling parallel applications in a dynamic environment. In: Proceedings - IEEE International Conference on Cluster Computing, ICCC. 2004. p. 471–80.
- Hilton AD, Lee BC, Huang Z. Decoupling loads for nano-instruction set computers. Proceedings of The 43rd International Symposium on Computer Architecture.
- Hilton AD, Lee BC, Lehman TS. PoisonIvy: Safe speculation for secure memory. Proceedings of the 49th International Symposium on Microarchitecture.
- Battle S, Hilton AD, Hempstead M, Roth A. "Flexible register management using reference counting.". :273–84.
In The News
- Everything You'd Want to Know About Algorithms, Explained with Legos (Oct 26, 2020 | )
- Pratt-Honored Professor on Teaching Programming Before Coding in the Classroom (Oct 15, 2015 | )