Architects use cycle-by-cycle simulation to evaluate design choices and understand tradeoffs and interactions among design parameters. Efficiently exploring exponential-size design spaces with many interacting parameters remains an open problem: the sheer number of experiments renders detailed simulation intractable. We attack this problem via an automated approach that builds accurate, confident predictive design-space models. We simulate sampled points, using the results to teach our models the function describing relationships among design parameters. The models produce highly accurate performance estimates for other points in the space, can be queried to predict performance impacts of architectural changes, and are very fast compared to simulation, enabling efficient discovery of tradeoffs among parameters in different regions. We validate our approach via sensitivity studies on memory hierarchy and CPU design spaces: our models generally predict IPC with only 1-2% error and reduce required simulation by two orders of magnitude. We also show the efficacy of our technique for exploring chip multiprocessor (CMP) design spaces: when trained on a 1% sample drawn from a CMP design space with 250K points and up to 55x performance swings among different system configurations, our models predict performance with only 4-5% error on average. Our approach combines with techniques to reduce time per simulation, achieving net time savings of three-four orders of magnitude.
|Title of host publication||International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS|
|Number of pages||12|
|Publication status||Published - 01 Jan 2006|
Ipek, E., McKee, S. A., Caruana, R., De Supinski, B. R., & Schulz, M. (2006). Efficiently exploring architectural design spaces via predictive modeling. In International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS (pp. 195-206) https://doi.org/10.1145/1168857.1168882