Welcome to Trevor Brown's home page
I am currently an assistant professor in the Computer Science department at the University of Waterloo.
Before that, I was a postdoctoral researcher at the Institute of Science and Technology, Austria.
Before that, I was a postdoctoral researcher at the Technion, Israel Institute of Technology.
Before that, I was a PhD student at the University of Toronto.
Although I was in the theory group at U of T, I would say that my work is closer to systems work than theory.
I care greatly about rigor, whether in theoretical or experimental work.
My research currently revolves around concurrent data structures, especially lock-free ones.
I am also interested in transactional memory, non-volatile memory, and techniques for coping with non-uniform memory architectures.
Supervisor at IST Austria: Dan Alistarh
Supervisor at the Technion: Hagit Attiya
Supervisor at U of T: Faith Ellen
Contact: me [at] tbrown [dot] pro
Curriculum Vitae: [PDF]
Over the years, I have produced quite a bit of code to accompany my papers.
Most of it can be found at my public bitbucket page for this purpose.
Publications, slides and video
See my CV, which contains links to all of my publications, sets of slides, and even some videos of my talks.
Performing data structure experiments
Recently, I've been thinking a lot about the question of how one should perform rigorous data structure experiments.
In October 2017, I gave an invited talk on this subject at the 1st Workshop on the Theory and Practice of Concurrency (colocated with DISC).
If you are interested in this sort of thing, I've uploaded a video on Youtube.
In June 2018, I gave a talk at TU Wien on concurrent binary search trees, and how implementation mistakes and memory layout issues can drastically affect their performance.
Slides can be found here.
I have also started producing video tutorials that distill lessons I've learned while coding up concurrent data structures and experiments.
I'll post them here, as I record them.
- TA for CSC263 Winter 2014: data structures [under Sam Toueg]
- TA for CSC2221 Fall 2013: introduction to distributed computing [graduate course; under Sam Toueg]
- TA for CSC263 Winter 2013: data structures [under Sam Toueg]
- TA for CSC369 Fall 2012: operating systems [under Angela Demke-Brown]
- TA for CSC263 Winter 2012: data structures [under Sam Toueg]
- TA for CSC263 (and 265) Fall 2011: (enhanced) data structures [under Faith Ellen, Toni Pitassi]
Note: As of September 2017, I've been having problems with my webhost, and my sites are all down. Unfortunately, I have not yet had time to resolve the issue with them.
I've chronicled some of my struggles with repetitive strain injuries in my wrists here.
I also have some stuff (Python code) pertaining to the CSC2501 course at the U of T