系统软件与软件安全

Title: 

Program Behavior in Shared Cache: Performance and Correctness


Introduction: 

Large software is often too complex to analyze by examining the program code alone. The difficulty is compounded by the increasing complexity in modern hardware especially the memory hierarchy and multicore processing. It is helpful to pursue a behavior-based approach and examine program execution in addition to program code, using data analysis to assist program, cache and system optimization. 

This course teaches the theories and techniques of program behavior analysis and optimization, with the emphasis on concurrency and cache sharing and their effect on program performance and correctness. On the performance side, the topics include whole-program locality, reference affinity, phase analysis, the recent developments in multicore performance models, collaborative caching and the high-order theory of locality. On the correctness side, the topics include coherence, consistency, determinism and safe parallel programming. 


Topics: 

Whole-program locality, reference affinity, phase analysis, collaborative caching, the high-order theory of locality, cache coherence, memory consistency, deterministic and safe parallel programming. 


Reference materials:

[1] 多核程序交互理论及应用  丁晨, 袁良,计算机工程与科学, 2014年36卷1期

[2] Shared-Memory Synchronization  by Michael L. Scott, Morgan & Claypool, June 2013

[3] Program Behavior Metrics and Models for Shared Cache  by Chen Ding et al, A survey paper submitted to a special issue of JCST for publication mid-2014.


地址:安徽省合肥市蜀山区黄山路443号     电话:0551-63603804         

中国科学技术大学网络信息中心制作维护