"Great engineering is every bit as beautiful as great art."

John Thornley
Assistant Professor of Computer Science
Department of Computer Science
School of Engineering and Applied Science
University of Virginia
151 Engineer's Way, P.O. Box 400740
Charlottesville, Virginia 22904-4740

Phone: (434) 982-2200
Fax: (434) 982-2214
Email: john-t@cs.virginia.edu
Office: Olsson Hall, UVa

Home page of John Thornley

Areas of Interest

Programming languages and systems, algorithms and programming patterns, multithreaded and concurrent programming, commodity multiprocessors, computational finance

Biographical Sketch

John Thornley received his Ph.D. in Computer Science from the California Institute of Technology in 1996. He then worked at Caltech as a research scientist, before joining the University of Virginia as an assistant professor of Computer Science in August of 1999.

Research

Thornley's research interests lie in the area of programming systems and computer algorithms, with particular focus on multithreaded programming of commodity multiprocessors. He envisions a near future in which most computers are multiprocessors and most applications are multithreaded. The crucial hurdle there is of developing reliable and efficient multithreaded programs. His approach consists of two interrelated parts. First, he is working on a high-level programming system that allows explicitly multithreaded programs to be developed using traditional sequential languages and tools. Second, by developing practical multithreaded applications, he is working to identify algorithmic patterns that can be applied to programs of similar computational structure.

Selected Publications