I am an Associate Professor of Computer Science at Stony Brook University. I direct the Computer Architecture Stony Brook (COMPAS) Lab. Prior to joining Stony Brook, I completed my Ph.D. at Carnegie Mellon University (CMU) under the supervision of Babak Falsafi. While completing my dissertation, I spent several years working remotely from Ecole Polytechnique Fédérale de Lausanne (EPFL).
My research interests are in the area of computer architecture, with emphasis on the design of server systems. I work on the entire computing stack, from server software and operating systems, to networks and processor microarchitecture. My current research projects include FPGA accelerator integration into server environments (e.g., Intel HARP, Microsoft Catapult, and Amazon F1), FPGA programmability (e.g., virtual memory and high-level synthesis), accelerators for machine learning (e.g., transformers and convolutional neural networks), efficient network processing and software-defined networking, speculative performance and energy-enhancing techniques for high-performance processors, and programming models and mechanisms for emerging memory technologies (e.g., HBM and 3D XPoint).
If you are a PhD student at Stony Brook and want to work with me, please send me email to arrange an appointment.
2024 | |
[63] | Server Architecture From Enterprise to Post-Moore , In IEEE Micro, volume 44, 2024. [bib] [pdf] |
[62] | NUCAlloc: Fine-Grained Block Placement in Hashed Last-Level NUCA Caches , In International Conference on Supercomputing (ICS'24), 2024. [bib] [pdf] |
[61] | A Case for Hardware Memoization in Server CPUs , In IEEE Computer Architecture Letters, volume 23, 2024. [bib] [pdf] |
2023 | |
[60] | The More Things Change, the More They Stay the Same: Integrity of Modern JavaScript , In Proceedings of the ACM Web Conference (WWW), Association for Computing Machinery, 2023. [bib] [pdf] |
[59] | TailCheck: A Lightweight Heap Overflow Detection Mechanism with Page Protection and Tagged Pointers , In 2023 USENIX Symposium on Operating Systems Design and Implementation (OSDI), USENIX Association, 2023. [bib] [pdf] |
[58] | Waverunner: An Elegant Approach to Hardware Acceleration of State Machine Replication , In 20th USENIX Symposium on Networked Systems Design and Implementation (NSDI), USENIX Association, 2023. [bib] [pdf] |
2022 | |
[57] | Domains Do Change Their Spots: Quantifying Potential Abuse of Residual Trust , In 2022 IEEE Symposium on Security and Privacy (Oakland), IEEE Computer Society, volume , 2022. [bib] [pdf] |
[56] | AppBastion: Protection from Untrusted Apps and OSes on ARM , In Computer Security - ESORICS 2022 - 27th European Symposium on Research in Computer Security, Copenhagen, Denmark, September 26-30, 2022. [bib] [pdf] |
[55] | An Incrementally Updatable and Scalable System for Large-Scale Sequence Search using the Bentley-Saxe Transformation , In Bioinformatics, 2022. [bib] [pdf] |
2021 | |
[54] | Practical Model Checking on FPGAs , In ACM Transactions on Reconfigurable Technology and Systems (TRETS), Association for Computing Machinery, volume 14, 2021. [bib] [pdf] |
[53] | Leveraging FPGA Layout to Minimize Jitter in Statistical Time-to-Digital Converters , In 29th IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM, withdrawn due to IP dispute), 2021. [bib] |
[52] | On the Distribution, Sparsity, and Inference-time Quantization of Attention Values in Transformers , In Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021, Association for Computational Linguistics, 2021. [bib] [pdf] |
2020 | |
[51] | Swarm Model Checking on the GPU , In International Journal on Software Tools for Technology Transfer (Thomas Given-Wilson, Axel Legay, eds.), 2020. [bib] [pdf] |
[50] | A Scheduling Approach to Incremental Maintenance of Datalog Programs , In 2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS), 2020. [bib] [pdf] |
[49] | An Efficient, Scalable, and Exact Representation of High-Dimensional Color Information Enabled Using de Bruijn Graph Search , In Journal of Computational Biology, volume 27, 2020. [bib] [doi] |
[48] | Flick: Fast and Lightweight ISA-Crossing Call for Heterogeneous-ISA Environments , In 47th International Symposium on Computer Architecture (ISCA), 2020. [bib] [pdf] |
[47] | FPGA-Accelerated Samplesort For Large Data Sets , In 2020 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA), 2020. [bib] [pdf] |
2019 | |
[46] | x86-64 Instruction Usage Among C/C++ Applications , In 12th ACM International Conference on Systems and Storage (SYSTOR), 2019. [bib] [pdf] |
[45] | Swarm Model Checking on the GPU , In 26th International SPIN Symposium on Model Checking of Software, Springer International Publishing, 2019. [bib] [pdf] |
[44] | Sorting Large Data Sets with FPGA-Accelerated Samplesort , 27th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM poster), 2019. [bib] [pdf] |
[43] | An Efficient, Scalable and Exact Representation of High-Dimensional Color Information Enabled via de Bruijn Graph Search , In 22nd Annual International Conference on Research in Computational Molecular Biology (RECOMB), 2019. [bib] [pdf] |
[42] | Massively Parallel Server Processors , In Computer Architecture Letters (CAL), 2019. [bib] [pdf] |
[41] | Argus: an End-to-End Framework for Accelerating CNNs on FPGAs , In IEEE Micro, volume , 2019. [bib] [pdf] |
[40] | Runtime-Programmable Pipelines for Model Checkers on FPGAs , In 29th International Conference on Field Programmable Logic and Applications (FPL), 2019. (nominated for the Best Paper award) [bib] [pdf] |
2018 | |
[39] | Panning for gold.com: Understanding the dynamics of domain dropcatching , In Proceedings of the ACM Web Conference (WWW), 2018. [bib] [pdf] |
[38] | Mantis: A Fast, Small, and Exact Large-Scale Sequence Search Index , In 21st Annual International Conference on Research in Computational Molecular Biology (RECOMB), 2018. [bib] [pdf] |
[37] | Taming the Killer Microsecond , In 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2018. [bib] [pdf] |
[36] | Impact of Device Parameters on Internet-based Mobile Applications , In 2018 Conference on Internet Measurement Conference (IMC), 2018. [bib] [pdf] |
[35] | Medusa: A Scalable Memory Interconnect for Many-Port DNN Accelerators and Wide DRAM Controller Interfaces , In 28th International Conference on Field Programmable Logic and Applications (FPL), 2018. [bib] [pdf] |
[34] | FPGASwarm: High Throughput Model Checking Using FPGAs , In 28th International Conference on Field Programmable Logic and Applications (FPL), 2018. [bib] [pdf] |
[33] | A Full-System VM-HDL Co-Simulation Framework for Servers with PCIe-Connected FPGAs , In 2018 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays (FPGA), 2018. [bib] [pdf] |
2017 | |
[32] | A VM-HDL Co-Simulation Framework for Systems with PCIe-Connected FPGAs , Technical report #839, Stony Brook CEAS, 2017. [bib] [pdf] |
[31] | Maximizing CNN Accelerator Efficiency Through Resource Partitioning , In 44th International Symposium on Computer Architecture (ISCA), 2017. [bib] [pdf] |
[30] | Escher: A CNN Accelerator with Flexible Buffering to Minimize Off-Chip Transfer , In 25th IEEE International Symposium on Field-Programmable Custom Computing Machines (FCCM), 2017. [bib] [pdf] |
[29] | Mantis: A Fast, Small, and Exact Large-Scale Sequence Search Index , Cold Spring Harbor Laboratory, 2017. [bib] [pdf] |
2016 | |
[28] | Fused-Layer CNN Accelerators , In 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2016. [bib] [pdf] |
[27] | Demystifying Cloud Benchmarking , In 2016 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2016. [bib] [pdf] |
[26] | Overcoming Resource Underutilization in Spatial CNN Accelerators , In 26th International Conference on Field Programmable Logic and Applications (FPL), 2016. [bib] [pdf] |
2015 | |
[25] | A Comprehensive Implementation and Evaluation of Direct Interrupt Delivery , In Processors of the 11th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environment (VEE), 2015. (recognized as Best Paper by the program committee) [bib] [pdf] |
[24] | Architectural Support for Dynamic Linking , In 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2015. [bib] [pdf] |
2014 | |
[23] | DIMMer: A case for turning off DIMMs in clouds , In ACM Symposium on Cloud Computing (SOCC), 2014. [bib] [pdf] |
[22] | A Case for Specialized Processors for Scale-Out Workloads , In IEEE Micro's Top Picks, 2014. (original at ASPLOS'12) [bib] [pdf] |
[21] | Temporal Stream Branch Predictor , In JWAC-4: Championship Branch Prediction workshop (in conjunction with ISCA'14), 2014. [bib] [pdf] |
2013 | |
[20] | JIT Kernels: An Idea Whose Time Has (Just) Come , Poster presented at the 24th ACM Symposium on Operating Systems Principles (SOSP poster), 2013. [bib] [pdf] |
2012 | |
[19] | Quantifying the Mismatch between Emerging Scale-Out Applications and Modern Processors , In ACM Transactions on Computer Systems (TOCS), ACM, volume 30, 2012. [bib] [pdf] |
[18] | Scale-Out Processors , In 39th International Symposium on Computer Architecture (ISCA), 2012. [bib] [pdf] |
[17] | Clearing the Clouds: A Study of Emerging Scale-out Workloads on Modern Hardware , In 17th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2012. (recognized as Best Paper by the program committee, recognized as Top Pick of 2013 by IEEE Micro, and received the ACM SIGARCH/SIGPLAN/SIGOPS ASPLOS 2023 Influential Paper Award (test-of-time)) [bib] [pdf] |
2011 | |
[16] | Proactive Instruction Fetch , In 44th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2011. [bib] [pdf] |
[15] | Toward Dark Silicon in Servers , In IEEE Micro, volume 31, 2011. [bib] [pdf] |
[14] | Cuckoo Directory: A Scalable Directory for Many-Core Systems , In 17th IEEE International Symposium on High Performance Computer Architecture (HPCA), 2011. (selected by the program committee for Best Student Papers session) [bib] [pdf] |
[13] | Spatial Memory Streaming , In Journal of Instruction-Level Parallelism (JILP), volume 13, 2011. [bib] [pdf] |
2010 | |
[12] | Near-Optimal Cache Block Placement with Reactive Nonuniform Cache Architectures , In IEEE Micro's Top Picks, volume 30, 2010. (original at ISCA'09) [bib] [pdf] |
[11] | Making Address-Correlated Prefetching Practical , In IEEE Micro's Top Picks, volume 30, 2010. (original at HPCA'09) [bib] [pdf] |
[10] | TurboTag: lookup filtering to reduce coherence directory power , In International Symposium on Low Power Electronics and Design (ISLPED), 2010. [bib] [pdf] |
2009 | |
[9] | Reactive NUCA: near-optimal block placement and replication in distributed caches , In 36th International Symposium on Computer Architecture (ISCA), 2009. (recognized as Top Pick of 2009 by IEEE Micro) [bib] [pdf] |
[8] | Practical Off-Chip Meta-Data for Temporal Memory Streaming , In 15th International Symposium on High Performance Computer Architecture (HPCA), 2009. (recognized as Top Pick of 2009 by IEEE Micro) [bib] [pdf] |
2008 | |
[7] | Temporal Instruction Fetch Streaming , In 41st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2008. [bib] [pdf] |
[6] | Cache bursts: A new approach for eliminating dead blocks and increasing cache efficiency , In 41st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2008. [bib] [pdf] |
[5] | Temporal Streams in Commercial Server Applications , In 2008 IEEE International Symposium on Workload Characterization (IISWC), 2008. [bib] [pdf] |
2007 | |
[4] | Last-Touch Correlated Data Streaming , In 2007 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), 2007. [bib] [pdf] |
[3] | Mitigating multi-bit soft errors in L1 caches using last-store prediction , In Workshop on Architectural Support for Gigascale Integration (ASGI), 2007. [bib] [pdf] |
2006 | |
[2] | SimFlex: Statistical Sampling of Computer System Simulation , In IEEE Micro, volume 26, 2006. [bib] [pdf] |
2003 | |
[1] | Analysis of IC Manufacturing Process Deformations: An automated approach using SRAM bit fail maps , In 29th International Symposium for Testing and Failure Analysis, 2003. [bib] [pdf] |
Computer architecture, with particular emphasis on the design of efficient server systems. Most recently, my main focus has been on Machine Learning Accelerators, developing hardware techniques to enable fast and efficient implementations of deep learning, and making FPGA-based accelerators more practical and easier to program. More broadly, my work seeks to understand the fundamental properties and interactions of application software, operating systems, networks, processor microarchitecture, and datacenter dynamics, to enable software and hardware co-design of high-performance, power-efficient, and compact servers.
These days, it seems like everyone's favorite hobby is to travel. Below is a map that shows the countries I visited.
If you need to speak with me, please feel free to drop by my office at any time. However, to ensure that I will be there and not busy, it's always best to send an email ahead of your visit.
If you prefer to explicitly schedule an appointment, please send me email. You can check my general availability by consulting my calendar.
December 2, 2024: A Case for Hardware Memoization in Server CPUs will appear in CAL.
October 10, 2024: Ready or Not, Here I Come: Characterizing the Security of Prematurely-public Web Applications will appear at ACSAC'24.
September 6, 2024: Xipeng Shen and I will be serving as co-Program Chairs for International Conference on Supercomputing (ICS'25). Please submit your best work!
April 26, 2024: Our paper NUCAlloc: Fine-Grained Block Placement in Hashed Last-Level NUCA Caches will appear at ICS'24.