F. Ryan Johnson
Assistant Professor, Computer Science
University of Toronto at Scarborough
UTSC office: IC 481
St. George office: BA 5226

 
Phone: (416) 287-7252
email:




ryan.johnson

@

utsc

.

utoronto

.

ca


Interested in an MSc or PhD?

Admissions for 2013 are now closed. Admissions for 2014 will open around Oct 2013.

I'm currently looking for highly motivated students with strong interests in databases, systems, and multicore. A smattering of algorithms, operating systems and computer architecture never hurts, either. Experience with C/C++ and general coding ability, willingness to cross boundaries into other areas in search of solutions, and a focus on implementing real systems, are all key indicators of a good match; however, an ability to pick up new tools and concepts quickly is more important than exhaustive knowledge in any particular area. Potential research areas include:

  • Reinventing database engines to utilize multicore hardware effectively
  • Designs which simplify or enhance key database operations for performance and predictability
  • Hardware augmentation for database engines to improve performance, reduce power, or close the gap between best- and worst-case behavior.

Research:

My research focuses on high performance database systems in the context of modern hardware advances, especially multicore computing and solid state (flash) storage. I am also interested in low-level systems topics that impact database engine design, including computer architecture, operating systems, concurrency, and storage management. I also have interests/hobbies in areas such as programming languages and compilers, parallel programming approaches such as transactional memory, and finding ways to increase the broader appeal of database engines for "everyone else."

My CV is available upon request.

Projects I am, or have been involved in include:

Bionic DBMS

As dark silicon looms, watts per operation will soon become the primary performance metric for database systems. Time per operation, while still important, will become a constraint to obey while attempting to minimize power utilization. As a result, custom hardware support for database engines, already emerging, will proliferate, leading over time to a hardware-software hybrid DBMS. This shift poses a problem for database engines, because they are historically very unfriendly to hardware support. This project aims to rethink the design of the DBMS from the ground up, in the context of dark silicon and potential for custom hardware, to achieve unprecedented power savings while preserving or even increasing performance.

Data Intensive Applications and Systems (click here for the DIAS web page

I collaborate with members of the DIAS lab at EPFL (headed by my PhD advisor, Natassa). The lab's focus centers on multicore hardware, flash storage for database engines, and scientific databases. The lab has also released Shore-MT, a scalable version of the SHORE storage manager from U. Wisconsin (see DIAS web page for details).

Staged Database Systems (click here for StageDB project page)

The StageDB project aims to redesign database management systems that exploit modern multicore hardware while exposing new opportunities for work sharing.

Modeling Environment for Software and Hardware (click here for MESH project page)

System-on-chip (SoC) designs have evolved into highly parallel and heterogeneous architectures. This trend presents new challenges when designing and modeling new systems. My masters research focused on fast and accurate modeling of asynchronous events to allow the exploration of scheduling approaches.

Publications:

Most of my publications are available at DBLP (see here); some new and/or non-database papers appear below:
  • "Decoupling contention management from scheduling," Ryan Johnson, Radu Stoica, Anastasia Ailamaki, Todd C. Mowry. ASPLOS 2010, March 13-17.

  • "Data-oriented Transaction Execution," Ippokratis Pandis, Ryan Johnson, Nikos Hardavellas, Anastasia Ailamaki. PVLDB 3(1), 2010.
  • “Interrupt Modeling for Efficient High-level Scheduer Design Space Exploration,” Ryan Johnson and JoAnn Paul. ACM TODAES 13(1): 10, 2008.

  • “Simultaneous Pipelining in QPipe: Exploiting Work Sharing Opportunities Across Queries,” D. Dash, K. Gao, N. Hardavellas, et al. Demonstration, Proceedings of the 22nd Int. Conference on Data Engineering (ICDE), Atlanta, GA, April 2006. Best Demo Award. PDF (193k) | Poster (528k)

  • “Satisficing Negotiations” J. K. Archibald, J. C. Hill, F. R. Johnson, and W. C. Stirling. IEEE Trans. on Systems, Man, and Cybernetics: Part C, pp. 4-18, Jan. 2006. Download from IEEE

  • “A Cooperative Multi-Agent Approach to Free Flight,” J. C. Hill, F. R. Johnson, J. K. Archibald, et al. Proceedings of the 4th Int. Joint Conference on Autonomous Agents and Multi-agent Systems, pp. 1083-1090, July 25-29, 2005. PDF (400k)

  • “A Satisficing Approach to Free Flight,” F. R. Johnson, J. C. Hill, J. K. Archibald, et al. Proceedings of the Int. Conference on Networking, Sensing, and Control, pp. 123-128, March 19-22, 2005. Best Student Paper Award. Download from IEEE

Education:

Courses and Teaching:

/dev/random

Beautiful Pittsburgh skyline (mouse over to change between day/night)

A list of assorted hacks useful in a *nix-like environment.

A personal encounter with TSA's security theatre