Woods Library, Canandaigua (October 2011, thanks to Peter Keng)
2004 Portrait by Yawen Ding |
Chen
Ding Email: cding@cs.rochester.edu |
Short Bio
Chen Ding's research focuses on the scientific foundation of computer memory, in particular, locality theory and optimization and their use in programming with hardware or software cache systems to minimize data movement which is the main bottleneck limiting the performance and power efficiency of modern systems from handhelds to GPUs to supercomputers. His work received the NSF CAREER award (2023) and the inaugural Young Investigator Award from DOE (2002). He was a Visiting Researcher at Microsoft Research and a Visiting Associate Professor at MIT EECS (2007). He teaches compilers, programming languages, parallel and distributed systems, collaborative software design, logic foundations, and computer organization.
Locality theory
Parallel program locality [PACT'24, ISMM'18, PPOPP'17]
Data movement complexity (DMC) [ICS'22, HIPS'21, CnC'21]
Relational theory of locality (RTL), aka, a higher order theory of locality (HOTL) [ISMM'21, TACO'19, TOS'18, ATC'16, JCST'14, tool download, ASPLOS'13 (slides), MSPC'12]
Optimal cache programming [TACO'22]
A higher order theory of memory demand (HOTM) [ISMM'16 (Li et al.), ISMM'14]
Collaborative caching [ISMM'12, ISMM'11, LCPC'08]
Reference affinity [CPM'21, POPL'06, PLDI'04]
Hardness of data packing [POPL'16 by my student Lavaee]
Programmable caches Lease cache [MEMSYS'24a, TACO'23, MEMSYS'23, LCTES'22, MEMSYS'20] Cache hints [ISMM'13]
Cache modeling Benchmarking [MEMSYS'24b, MEMSYS'18] Symmetric locality [MEMO'24] Write locality [MEMSYS'21, IPDPS'17, MEMSYS'16] Multi-level cache exclusivity [TACO'17] Associativity, granularity, sub-block cache [MEMSYS'16]
Locality optimization Program symbiosis in cache [CCGrid'15, CCGrid'12a, PACT'11,PPOPP'11] Optimal cache partition sharing [IJPP'17, ICPP'15] Key-value cache optimization [TC'17, ATC'15] Peer-aware
optimization: code [ICPP'14], data [CGO'13 (slides), Bao dissertation ] Code layout [CC'19, CC'18] Compiler optimization: global cache reuse [ICS'05, JPDC'04, IPDPS'01, IPDPS'00, LCPC'99], dynamic cache reuse [MSP'02, PLDI'99] A component model of spatial locality [ISMM'09] Locality phase hierarchy [JPDC'07, ExpCS'07, MSP'05, ASPLOS'04, LCPC'04]
Memory management Parallel memory allocation [ISMM'19]
Resource-based memory management [ISMM'11b, ISMM'06] Parallel programming BOP:
Parallel programming by hints [OOPSLA'11,PPoPP'11 poster,TR952,TR948, PPoPP'10 poster, PLDI'07] Message passing support: Delta send/recv [CCGrid'12b], Multiphysics AMR [CoRR'11] FastTrack: Suggestible program optimization [CGO'09] Other studies [ICPP'04, PACT'04, SC'04, EuroPar'97, HICSS'96] Related link Reuse distance based
SLO (suggestions of locality optimizations) tool
by Kristof Beyls and Eric D'Hollander.
See roclocality.org (posts tagged
teaching and course number) for course
web pages with basic information and learn.rochester.edu for
course content including announcements, handouts, and assignments.Teaching ( previously taught courses )