Shoaib Akram

proc

I am an assistant professor at the Australian National University, Canberra, in the School of Computing. I obtained my Ph.D. degree in Computer Science and Engineering from Ghent University (Belgium). My doctoral advisor was Lieven Eeckhout. I also hold an M.S. in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign.

I am interested in computer systems in general and memory and storage systems in particular. My research approach intersects the boundary between the hardware, OS, and language runtime.

I lead the Vertically Integrated Computer Systems (VICS) research group.

I serve on the reviewing committees of top-tier computer architecture, systems, and programming language conferences.

Curriculum vitae
Google Scholar
My PhD Dissertation

Recent News

[ISCA 2024] Serving on the ISCA PC

[ISPASS 2024] Serving on the ISPASS PC

[ISMM 2023] Paper accepted at ISMM (Aditya’s undergraduate honours thesis!)

[MICRO 2023] Serving on the MICRO PC

[ASPLOS 2023] TeraHeap paper will appear at ASPLOS 2023

[ASPLOS 2023] Serving on the ASPLOS PC (three submission rounds)

[HPCA 2023] Serving on the HPCA PC (please submit your best work!)

[MICRO 2022] Serving on the MICRO PC

[ISPASS 2022] Paper on ML for architectural simulation accepted at ISPASS 2022

Current Research

My current research centers on the evaluation and optimization of the emerging memory and storage hierarchy. My special focus is on memory capacity expansion for native and managed workloads. I investigate cooperative hardware/software approaches to optimize the memory/storage hierarchy. On the hardware side, our focus is on emerging non-volatile memory, processing-in-memory, and computational storage devices. On the application software side, we target graph and machine learning analytics, real-time search, and bioinformatics.

Research Infrastructure

Thanks to generous support from the ANU start-up funding, I have built an in-house research infrastructure for evaluating emerging non-volatile memories. Our infrastructure includes terabytes of Intel Optane persistent memory and state-of-the-art solid-state drives.

Infrastructure guide for students

On the software side, our current focus is on several open-source and in-house frameworks, including OpenJDK, Apache Spark, Lucene, and Giraph, HICOPS for proteomics, and an in-house NVM/NVMe port of the Psearchy (MIT) search engine, and Twitter’s Segcache.

Honours Projects

I welcome ANU students looking for honors projects. My projects require knowledge of algorithms and good programming skills (one of C, C++, Java, Python, Rust). My students build prototypes either from scratch or from hacking existing production software. Our current focus is on the memory and storage hierarchy. If you did well in COMP1110 and COMP2300 (ENGN2219, 2022 onward), I encourage you to contact me. The students who finish honors with me have a passion for computer systems and learn new skills (especially OS and storage hardware) along the way.

Ph.D. Student Openings

We have openings for Ph.D. students in the VICS research group. Our ongoing research requires good system-building skills. Our current students are not afraid to customize industrial-strength software, such as Apache Spark and Lucene, OpenJDK, and the Linux OS.

Students

Jackson Kilrain-Mottram (Ph.D. student, 2024 - )
Research Topic: Storage Engines for Managed Data-Intensive Frameworks

Iacovos Kolokasis (Ph.D. co-advisor with Angelos Bilas, University of Crete, 2020 - )
Research Topic: Terabyte-Scale Managed Heaps for Big Data Analytics
[Data+AI Summit 2021] Presentation PDF slides
[PhD Workshop at Microsoft Research Cambridge] Poster
[Meta PhD Fellow, 2022 ] Bio

Anson Thai (Honours Thesis Advisor, Bachelor of Advanced Computing)
Research Topic: Index Compression Tradeoffs for Emerging Storage

VICS Alumni

Peter Oslington (Project Student, Bachelor of Philosophy (Honours) - Science, 2023)
Research Topic: Hash Table Optimization

Chethin Weerakkody (Project Student, FDD Eng. & Adv. Comp., 2023)
Research Topic: High-Performance Caching for Real-Time Search

Junming Zhao (Honours Thesis Advisor, FDD Eng. & Adv. Comp.)
Graduation: First semester, 2023
Thesis Topic: HyperCache: A High Capacity Cache for Small Objects over Hybrid Memory
Awarded the University Medal for Academic Excellence
First Job: Trustworthy Systems, UNSW

Harris Loi (Honours Thesis Advisor, Bachelor of Advanced Computing)
Graduation: Second semester, 2022
Research Topic: Persistent Memory-Backed Cache Shutdown/Recovery

Jackson Kilrain-Mottram (Honours Thesis Advisor, Bachelor of Software Engineering)
Graduation: Second semester, 2022
Research Topic: Efficient DRAM Caching for Real-Time Search
PDF version of thesis
First Job: Instaclustr, Canberra

Cassandra Chun-Crogan (Research Assistant, Bachelor of Science, Nov 2021 - May 2022)
Research Topic: Graceful Shutdown/Recovery for Persistent Memory-Backed Caching
First Job: Software Engineer, Google Sydney

Aditya Chilukuri (Honours Thesis, FDD Eng. & Adv. Comp.)
Graduation: First semester, 2022
Thesis Topic: Fast and Scalable Text Search using Non-Volatile Main Memory
PDF version of thesis
First Job: Software Developer, Australian Government

Angus Atkinson (Project Student, Bachelor of Advanced Computing, 2022)
Research Topic: Scalable Real-Time Search over Hybrid Memories

Anson Thai (Project Student, Bachelor of Advanced Computing, 2021, 2022)
Research Topic: Optimizing Hash Table-Based Inverted Indices for Persistent Memory
PDF version of (most) recent project report

Teaching

I teach courses related to computer systems, (micro)architetcure, and systems programming. I designed a number of courses from scratch. The computer microarchitecture course is an advanced (graduate level) course. COMP2310 is ANU’s systems programming course. COMP2300 and ENGN2219 are our introductory computer systems courses.

Guest Lectures at ANU

Hardware Speculation: The Key to High Performance in Modern Processors
COMP3710, Compilers (Semester 1, 2023)
PDF slides

A Dive into Computer Systems Research
COMP4450, Advanced Computing Research Methods (Semester 1, 2023)
PDF slides

Professional Activities (Recent)

  • IEEE International Workshop on High Performance Computational Biology (HiCOMB)
    Member, Program Committee: 2023

  • Architectural Support for Programming Languages and Operating Systems (ASPLOS)
    Member, Program Committee: 2023
    Member, External Review Committee: 2020

  • International Symposium on High-Performance Computer Architecture (HPCA)
    Member, Program Committee: 2023
    Member, External Review Committee: 2021

  • International Symposium on Microarchitecture (MICRO)
    Member, Program Committee: 2022, 2023
    Member, External Review Committee: 2021

  • International Symposium on Performance Analysis of Systems and Software (ISPASS)
    Member, Program Committee: 2022

  • International Symposium on Computer Architecture (ISCA)
    Member, External Review Committee: 2020, 2021, 2022
    Member, Program Committee: 2024

  • International Symposium on Memory Management (ISMM)
    Member, Program Committee: 2019, 2021, 2022, 2023

  • Object-Oriented Programming, Systems, Languages & Applications (OOPSLA)
    Member, External Review Committee: 2020

Publications

[SOSP 2023 (Poster)] Iacovos G. Kolokasis, Shoaib Akram, Foivos Zakkak, Polyvios Pratikakis, and Angelos Bilas, DynaHeap: Dynamic Division of DRAM between Heterogeneous Managed Heaps, Symposium on Operating System Principles (SOSP), 2023.
PDF pre-print

[ISMM 2023] Aditya Chilukuri and Shoaib Akram, Analyzing and Improving the Scalability of In-Memory Indices for Managed Search Engines, ACM SIGPLAN International Symposium on Memory Management (ISMM), 2023.
PDF pre-print
PDF slides

[ASPLOS 2023] Iacovos G. Kolokasis, Giannos Evdorou, Shoaib Akram, Anastasios Papagiannis, Foivos Zakkak, Christos Kozanitis, Polyvios Pratikakis, and Angelos Bilas, TeraHeap: Reducing Memory Pressure in Managed Big Data Frameworks, Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2023.
PDF version of paper
PDF slides

[ISPASS 2022] W. Liu, W. Heirman, S. Eyerman, S. Akram, and L. Eeckhout, Scale-Model Architectural Simulation, IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2022.
PDF version of paper

[CAL 2021] W. Liu, W. Heirman, S. Eyerman, S. Akram, and L. Eeckhout, Scale-Model Simulation, IEEE Computer Architecture Letters (CAL), 2021.
PDF version of paper

[ISMM 2021] S. Akram, Exploiting Intel Optane Persistent Memory for Full Text Search, ACM SIGPLAN International Symposium on Memory Management (ISMM), 2021.
PDF version of paper
PDF slides

[TACO 2021] S. Akram, Performance Evaluation of Intel Optane Memory for Managed Workloads, ACM Transactions on Architecture and Code Optimization (TACO), 2021.
PDF version of paper
PDF slides

[TACO 2021] W. Liu, S. Akram, and L. Eeckhout, Reliability-Aware Garbage Collection for Hybrid DRAM-HBM Memories, ACM Transactions on Architecture and Code Optimization (TACO), 2021.
PDF version of paper

[MoreVMs 2019] S. Akram, To Expose, or Not to Expose, Hardware Heterogeneity to Runtimes! Modern Language Runtimes, Ecosystems, and VMs (MoreVMs), held alongside <programming>, 2019.
PDF version of paper
PDF slides

[NVMW 2019] S. Akram, J. Sartor, K. McKinley and L. Eeckhout, Kingsguard: Write-Rationing Garbage Collection for Hybrid Memories, Annual Non-Volatile Memories Workshop (NVMW), 2019.
PDF version of paper
PDF slides

[ISPASS 2019] S. Pestel, S. Steen, S. Akram, and L. Eeckhout, RPPM: Rapid Performance Prediction of Multithreaded Workloads on Multicore Processors, IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2019.
PDF version of paper
PDF slides

[ISPASS 2019] S. Akram, J. Sartor, K. McKinley and L. Eeckhout, Emulating and Evaluating Hybrid Memory for Managed Languages on NUMA Hardware, IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2019.
PDF version of paper
PDF slides

[SIGMETRICS 2019] S. Akram, J. Sartor, K. McKinley and L. Eeckhout, Crystal Gazer: A Profile-Driven Garbage Collector to Manage Hybrid Memories, ACM International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS), 2019.
PDF version of paper
PDF slides

[CAL 2018] S. Pestel, S. Steen, S. Akram, and L. Eeckhout, RPPM: Rapid Performance Prediction of Multithreaded Applications on Multicore Hardware, IEEE Computer Architecture Letters (CAL), 2018.
PDF version of paper

[PLDI 2018] S. Akram, J. Sartor, K. McKinley and L. Eeckhout, Write-Rationing Garbage Collection for Hybrid Memories, ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2018.
PDF version of paper
PDF slides

[PASS 2018] S. Akram, K. McKinley, J. Sartor, and L. Eeckhout, Managing Hybrid Memories by Predicting Object Write Intensity, Programming Across the System Stack (PASS), held alongside <programming>, 2018.
PDF version of paper
PDF slides

[TC 2017] S. Akram, J. Sartor, and L. Eeckhout, DEP+BURST: Online DVFS Performance Prediction for Energy-Efficient Managed Language Execution, IEEE Transactions on Computers (TC), 2017.
PDF version of paper

[TACO 2016] S. Akram, J. Sartor, K. Van Craeynest, W. Heirman, and L. Eeckhout, Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors, ACM Transactions on Architecture and Code Optimization (TACO), 2016.
PDF version of paper
PDF slides

[ISPASS 2016] S. Akram, J. Sartor, and L. Eeckhout, DVFS Performance Prediction for Managed Multithreaded Applications, IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2016.
PDF version of paper
PDF slides

[PACT 2013] K. Van Craeynest, S. Akram, W. Heirman, A. Jaleel, and L. Eeckhout, Fairness-aware Scheduling on Single-ISA Heterogeneous Multicores, International Conference on Parallel Architectures and Compilation Techniques (PACT), 2013.
PDF version of paper
PDF slides

[MASCOTS 2012] S. Akram, M. Marazakis, and A. Bilas, Understanding Scalability and Performance Requirements of I/O-intensive Applications on Future Multicore Servers,” IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems (MASCOTS), 2012.
PDF version of paper
PDF slides

[CAOS 2012] S. Akram, M. Marazakis, and A. Bilas, NUMA Implications for Storage I/O Throughput in Modern Servers,” Computer Architecture and Operating System Co-design (CAOS), held alongside HiPEAC, 2012.
PDF version of paper

[DEBS 2012] S. Akram, M. Marazakis, and A. Bilas, Understanding and Improving the Cost of Scaling Distributed Event Processing, ACM International Conference on Distributed Event-Based Systems (DEBS), 2012.
PDF version of paper
PDF slides

[CAOS 2011] S. Akram and A. Bilas, A Sleep-based Communication Mechanism to Save Processor Utilization in Distributed Streaming Systems,”Computer Architecture and Operating System Co-design (CAOS), held alongside HiPEAC, 2011.
PDF version of paper

[IJRC 2010] S. Akram, A. Papakonstantinou, R. Kumar, D. Chen, S. Akram, A. Papakonstantinou, R. Kumar, D. Chen, “A Workload-adaptive and Reconfigurable Bus Architecture for Multicore Processors, International Journal of Reconfigurable Computing (IJRC), 2010.

[SASP 2009] S. Akram, R. Kumar, D. Chen, Workload Adaptive Shared Memory Multicore Processors with Reconfigurable Interconnects, IEEE Symposium on Application Specific Processors (SASP), 2009.
PDF version of paper

[ASPDAC 2018] S. Akram, S. Cromar, G. Lucas, A. Papakonstantinou, and D. Chen, VEBoC: Variation and Error-Aware Design for Billions of Devices on a Chip, IEEE/ACM Asia and South Pacific Design Automation Conference (ASPDAC), 2008.
PDF version of paper

Shoaib Akram