Font Size: a A A

Cardinal: A framework for performance modeling and prediction of application execution

Posted on:2009-09-19Degree:M.SType:Thesis
University:University of Colorado at BoulderCandidate:Strom, SamuelFull Text:PDF
GTID:2446390005456513Subject:Engineering
Abstract/Summary:
Traditionally, patterns and repetition in program behavior are exploited in multiple ways to increase performance in computer systems. Cache memory and branch prediction are examples of hardware technologies that leverage short-term knowledge of program behavior to enhance performance. On a different scale, profile-guided compiler transformations use profile information to customize optimization decisions to program behavior. However, as the microprocessor industry shifts to multi-core designs, continued performance gains can only be achieved by systems that track and adapt to interactions of multiple concurrent programs. Multiple cores per system do not universally improve performance since shared resources and operating conditions cause interference. To optimally manage and design multi-core systems so that they may achieve continued performance gains, new methods of representing and exploiting program execution behavior are required.;This thesis presents a new representation, the Cardinal Execution Map (CEM), which describes phase-based program behavior in a compact form. The representation aids computer system design, helps analyze resource contention in multi-core environments and directs run-time systems to better utilize hardware. The Cardinal Execution Map can be constructed off-line (statically) and at run time (dynamically) to enhance the study of microarchitecture, program behaviors, and multi-core systems. Presented in the thesis are the execution modeling framework, a set of analyzes for execution prediction and program behavior identification, and a multi-context program interaction modeling system.
Keywords/Search Tags:Program behavior, Performance, Execution, Modeling, Prediction, System, Cardinal
Related items