A paper by Arash (Mohammad) Khalaji, Trevor Brown and...
A paper by Guy Coccimiglio, Trevor Brown and Srivatsan Ravi...
A paper by Guy Coccimiglio, Trevor Brown and Srivatsan Ravi...
Led by Dr. Trevor Brown, the UW Multicore Lab tackles the question: how can large multicore systems be programmed easily, correctly and efficiently?
Multicore computing is rapidly becoming ubiquitous. Large systems with dozens or hundreds of processors are deployed by virtually all companies that provide Internet and cloud services. However, the "dark art" of multicore programming remains notoriously difficult. There is an immediate need for techniques to simplify this task, and to empower programmers to harness the full computational power of large scale systems with increasingly non-uniform memory architectures (NUMAs), and growing heterogeneity in computing resources.
At the UW multicore lab, our research focuses on the development of efficient methodologies, libraries and systems software for all computing scales, from single-socket systems with uniform memory architectures, to multi-socket NUMA systems, to geo-replicated distributed systems.
We work on large scale servers (256 / 192 / 144 / 8x32 threads) running Linux. Personal workstations run Ubuntu/Windows/Mac (up to preference). Version control for code and research papers is via Github/Gitlab. Lab project management and communication is done via MS Teams. Projects are implemented primarily in C++ (GCC, Clang), typically using VSCode. Big Codex/Claude fans (Trevor averages a billion tokens/week). Performance investigations via custom tooling, Perftools and PAPI. Specialty hardware: RDMA via 10x 100GBe ConnectX6 networked boxes, RTX Pro 6000 MAX Q and RTX 3080 GPUs. Many B100s via Compute-Canada access.
We are committed to open-access, and to the integration of our research into the open source community, for the benefit of all. So, some of our effort is invested in understanding and integrating code into well-known open source projects.
We accommodates both solo- and highly-collaborative work styles, with opportunities to work alongside other students within the lab, and with students and professors from several other labs.
Are you excited by the idea of computing on hundreds of cores?
Are you a hacker interested in becoming a master of systems backed by principled theory?
Are you a theoretical wizard who doesn't mind getting your hands dirty and working on real systems?
I'm looking to accept domestic MMath or PhD students, or international PhD students, for Sept 2028, and possibly for Sept 2027. Send Trevor an email at trevor(.)brown(@)uwaterloo(.)ca. Include your CV and a short paragraph about why you'd like to join the UW Multicore Lab.