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) in 2019. 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

[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

[ISMM 2022] Serving on the ISMM PC

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

Iacovos Kolokasis (Ph.D. co-advisor with Angelos Bilas, University of Crete)
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

Sumesh Kumar (Ph.D. co-advisor with Fahad Saeed, Florida International University)
Research Topic: Scalable systems for database search of large proteomics datasets

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

Jackson Kilrain-Mottram (Honours Thesis Advisor, Bachelor of Software Engineering)
Research Topic: Efficient DRAM Caching for Real-Time Search

Junming Zhao (Honours Thesis Advisor, FDD Eng. & Adv. Comp.)
Research Topic: Scaling Latency Critical Services over Hybrid Memories

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

VICS Alumni

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., 2021 - 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 (Summer Scholar, 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 three courses at ANU (all designed from scratch). The computer microarchitecture course is an advanced (graduate level) course. COMP2310 is ANU’s systems programming course. ENGN2219 is an introductory computer systems course for ANU’s engineering students.

Professional Activities (Recent)

  • 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
    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

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

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

Work in Progress

Freeing Compute Caches from Serialization and Garbage Collection in Managed Big Data Analytics PDF pre-print of paper
Authors: Iacovos G. Kolokasis, Giannos Evdorou, Anastasios Papagiannis, Foivos Zakkak, Christos Kozanitis, Shoaib Akram , Polyvios Pratikakis, Angelos Bilas

Publications

[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