About
I'm a PhD candidate in computer science at Emory University, working under supervision of
Prof. Ymir Vigfusson. My research interests
include Distributed
Systems, Caching and Event Processing.
(Download CV)
News
- [Nov'20] Our paper "Serving DNNs like Clockwork: Performance Predictability from the Bottom Up" won the Distinguished Artificat Award at OSDI'20. [Talk]
- [Aug'20] Our submission "Serving DNNs like Clockwork: Performance Predictability from the Bottom Up" got accepted to appear in OSDI'20 [PDF]
- [Jun'20] Our paper "Optimal Data Placement for Heterogeneous Cache, Memory, and Storage Systems" won the "Outstanding Student Paper Award" at SIGMETRICS'20 [PDF]
- [Jan'20] Our submission "Bandwidth-Aware Page Placement in NUMA Systems" got accepted to appear in IPDPS'20 [PDF]
- [Dec'19] Our submission "Optimal Data Placement for Heterogeneous Cache, Memory, and Storage Systems" got accepted to appear in SIGMETRICS'20 [PDF]
- [Oct'19] We are presenting our work-in-progress, "Letting the Cloud Serve DNN Inferences with Ruthless Efficiency" at AI Systems worksop at SOSP'19 , Ontario, Canada.
- [May'19] I'm visiting Max Planck Institue for Software Systems in Saarbrücken, Germany for summer internship under supervision of Jonathan Mace .
- [Oct'18] Our lab is attending OSDI'18.
- [Aug'18] SNAKE (Spiced-up Numa-Aware KErnel) and numactl+ are available on Github.
- [Jul'18] MAPLE (Memory Access ProfiLEr) is available on Github
- [May'18] I'm visiting INESC-ID (The Instituto de Engenharia de Sistemas e Computadores, Investigação e Desenvolvimento em Lisboa) in Lisbon, Portugal for the summer research on "Bandwidth-aware Data Placement in NUMA Memroy Architectures" under supervision of João Pedro Barreto .
- [Sep'17] Our paper "MITHRIL: Mining Sporadic Associations for Cache Prefetching" was presented at ACM Symposium on Cloud Computing (SoCC), Santa Clara, CA.
- [Nov'16] We presented a poster on our work "Mithril: Mining block correlation for cache prefetching" at OSDI'16.
- [Nov'16] Our lab is attending OSDI'16.
Education
-
Doctor of Philosophy in Computer Science
Emory University Atlanta, United States 2016 - Present
-
Master of Science in Computer Science, Distributed Systems
Iran University of Science and Technology Tehran, Iran 2012 - 2015
-
Bachelor of Science in Computer Science, Software Engineering
University of Isfahan Isfahan, Iran 2008 - 2012
-
Middle School, High School in Math and Physics
National Organization for Development of Exceptional Talents (NODET) Iran 2001 - 2008
Experience
-
Graduate Research Assistant
Emory University Atlanta, United States 2016 - Present
-
Research Intern
The Max Planck Institute for Software Systems Saarbrücken, Germany Summer 2019
-
Research Intern
INESC-ID Lisbon, Portugal Summer 2018
-
Teaching Assistant
Systems Programming (Advanced Unix Programming) Emory University Fall 2017
-
Teaching Assistant
Intro to Computer Science Emory University Fall 2016, Spring 2017
-
Research Assistant
Iran University of Science and Technology Tehran, Iran 2012 - 2016
Publications / Presentations [impact]
- R. Karimi*, A. Gujarati*, S. Alzayat, W. Hao, A. Kaufmann, Y. Vigfusson, J. Mace, "Serving DNNs like Clockwork: Performance Predictability from the Bottom Up", USENIX Operating Systems Design and Implementation (OSDI'20), Banff, Canada, 2020. [PDF] [Presentation]
- L. Zhang, R. Karimi, I. Ahmad , Y. Vigfusson , "Optimal Data Placement for Heterogeneous Cache, Memory, and Storage Systems" in Proc. of ACM SIGMETRICS, Boston, MA, USA, June 2020. in Proceedings of the ACM on Measurement and Analysis of Computing Systems (POMACS), Vol. 4, No. 1, March 2020. [PDF] [Presentation]
- D. Gureya, J. Neto, R. Karimi, P. Romano, R. Rodrigues, V. Quema, P. Bhatotia, V. Vlassov, J. Barreto, "Bandwidth-Aware Page Placement in NUMA Systems" in International Parallel and Distributed Processing Symposium (IPDPS), New Orleans, LA, USA, May 2020. [PDF]
- R. Karimi, A. Simpson, A. Kaufmann, Y. Vigfusson, J. Mace, "Letting the Cloud Serve DNNs with Ruthless Efficiency" in Workshop on AI Systems (AISys) at Symposiumon Operating Systems Principles (SOSP), Huntsville, Ontario, Canada, 2019. [POSTER]
- J. Yang, R. Karimi, T. Sæmundsson, A. Wildani, Y. Vigfusson, "MITHRIL: Mining Sporadic Associations for Cache Prefetching" in ACM Symposium on Cloud Computing (SoCC), Santa Clara, CA, USA, September 2017. [PDF]
- J. Yang, R. Karimi, A. Wildani, Y. Vigfusson, "A Simple Cache Prefetching Layer Based on Block Correlation" in USENIX Conference on File and Storage Technologies (FAST), Santa Clara, CA, USA, 2017. [Poster]
- J. Yang, R. Karimi, Y. Vigfusson , ”Mithril: Mining block correlation for cache prefetching” in USENIX Symposium on Operating Systems Design and Implementation (OSDI), Savannah, GA, USA, 2016. [Poster]
- S. Fatholahzadeh, R. Karimi, M. Sharifi, A. Paschke, et al., "Parallel Event Processing on Unbound Streams with Multi-Step Windowing," in ACM Conference on Distributed Event-Based Systems (DEBS), Oslo, Norway, 2015.
[ Copyright notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder. ]
Some of My Latest Projects
-
SNAKE: Spiced-up Numa-Aware KErnel
Added support for weighted interleaved memory allocation policy on NUMA machines to the Linux Kernel, accessible via a new system call, named "set_mempolicy_w". Currently available on Kernel v4.17.2, a small patch for other versions is available though :)
[github repo]numactl+
Added --weights option (and required underlying inner workings) to the original numactl, enabling programs to make use of the weighted interleaved memory allocation policy feature mentioned above.
[github repo] -
MAPLE: Memory Access ProfiLEr
MAPLE is a Pin-based tool to provide profiling memory accesses of applications at page-level.
[more info] -
Firehose: Scaling Publish-Subscribe
-
Firefly: Light-weight Headache-free Event Loop
Firefly is built on the top of epoll as an abstract async event loop. It is aimed to be as light and fast as possible.
[more info] -
MimirCache
A platform for analyzing cache traces. It allows you to visualize your cache traces from different perspectives, and it incorporates time factor when comparing cache replacement algorithms. MimirCache is a masterpiece mostly made by Jason Yang at Ymir's lab. I have contributed in code reviews and implementation of some cache replacement algorithms. Hopefully, I'll find more time for more contributions. [Project's Website]
-
Emotion-aware Ranking
Incorporating sentiment and emotions to find most-relevant tweets. [Slides]
-
Don't Get Kicked!
Predict if a car purchased at auction is a lemon.
[PDF Report]
Useful Links*
- SimBioSys Lab
- Graduate School: Keys To Success [By Prof. Remzi Arpaci-Dusseau]
- PhD Comics
- xkcd
- Probability Cheatsheet [by William Chen]
- Command Line Heros: A podcast about the people who transform technology from the command line up.
- The MFCEO Project [Podcast] by Andy Frisella
- The School of Greatness [Podcast] by Lewis Howes
- Deep work timer!
People Doing Cool Stuff*
- Derek Onken: Applying Partial Differential Equations to Neural Networks
- Pranav Bhandari: Designing and Tuning Efficient and Scalable Storage Systems
Contact Me
Mailing Address:
Department of Computer Science, Emory University
400 Dowman Drive, Suite W401
Atlanta, GA 30322
Email:
contact [at] 0xreza [dot] com
rkarimi [at] emory [dot] edu