Peng Jiang
University of Iowa, IA·Computer Science·Early-career
Modern data-heavy programs, from machine learning to scientific simulation, often spend more time moving data than computing with it. This is especially true on systems that mix different processors, such as CPUs and graphics processing units (GPUs).
- Fields
Computer Science
Engineering
- Topics
compilers
runtime systems
high-performance computing
- Grants
- 3 known grants, through May 2029
What they work on
- Develop a runtime system that gives a virtualized view of data partitioned across heterogeneous devices, plus a compiler tool that places data using a statistical performance model of random memory accesses.
- Explore sampling-based methods that cut data preprocessing overhead for sparse computations whose access patterns keep changing.
- Build a speculative-execution runtime that adaptively tunes sampling strategies to balance accuracy and efficiency in sampling-based algorithms.
- Create a fine-grained hierarchical GPU memory management system with a programming interface for multi-dimensional tensors and automatic memory pre-allocation for applications with dynamic memory demand.
- Contribute to a unified memory-centric computing system (UniMCC) spanning code generation, runtime support and performance modeling for near-memory data processors and disaggregated memory.
More about the research
Jiang's projects build software that sits between programs and hardware: compilers (tools that translate and optimize code) and runtime systems (software that manages a program as it runs). The goal is to make hard-to-handle memory and data patterns run fast and to make such programs easier to write. Three projects tackle this from different angles: sampling-based algorithms, GPU memory, and memory-centric hardware.
Why it matters
These tools could let researchers run large machine learning, data mining, bioinformatics and scientific computing workloads faster and at larger scale on GPUs and other mixed-processor systems. Simpler programming interfaces could lower the effort needed to write efficient sampling-based or dynamic-memory programs, making large-scale computing more practical for real-world problems.
Known grants
From NIH and NSF research grants. Labs often have other funding we can't see.
CAREER: Compiler and Runtime Support for Sampled Sparse Computations on Heterogeneous Systems
NSF · Jun 2024 – May 2029
CSR: Small: A Fine-Grained Hierarchical Memory Management System for Applications with Dynamic Memory Demand on GPUs
NSF · Oct 2023 – Sep 2027
Collaborative Research: CSR: Medium: Towards A Unified Memory-centric Computing System with Cross-layer Support
NSF · Oct 2023 – Sep 2027
Closest labs
Xian-He Sun
Illinois Institute of Technology, IL·Computer Science
Engineer IOWarp, a modular and scalable data management platform for AI-infused scientific workflows, using NVMe SSDs, CXL memory devices and CPU-GPU co-design to reduce data access times on HPC systems.
Feng Chen
Indiana University, IN·Computer Science
Develop hardware functionality and system-level memory management for in-memory computing over Compute Express Link (CXL), the interconnect standard that lets processors and memory devices share memory, to reduce fragmentation of memory resources.
Mahmut Kandemir
Pennsylvania State University, PA·Computer Science
Characterize diverse HPC workloads on real and simulated computational storage devices to identify which computations benefit from running inside storage, and what performance tradeoffs result.
The school
University of Iowa: 32 labs on PI Pages, $703M a year on research, 418 research doctorates a year.
Reach out
A start for your email. Fill in the brackets.