Design space exploration of multiprocessor systems involves the optimization of cost/performance functions over a large number of design parameters, most of which are discrete-valued . This optimization is non-trivial because the evaluation of cost/performance functions is computationally expensive , typically involving simulation of long benchmark programs on a cycle-accurate model of the system . Further, algorithms for optimization over discrete parameters do not scale well with the number of parameters. We describe a new approach to this optimization problem, based on embedding the discrete parameter space into an extended continuous space . Optimization is then carried out over the extended continuous space using standard descent based continuous optimization schemes. The embedding is performed using a novel simulation-based ergodic interpolation method that produces the interpolated value in a single simulation run . The post-embedding performance function is continuous, and observed to be piecewise smooth. We demonstrate the approach by considering a multiprocessor design exploration problem with 31 discrete parameterswhere the objective function is a weighted sum of cost and performance metrics, and cost-performance tradeoff curves are obtained by varying the weights. We use the COBYLA implementation from the Python SciPy library to perform the optimization on the extended continuous space . Near optimal solutions are obtained within three hundred simulation runs, and we observe improvements in the objective function ranging from 1.3X to 12.2X (for randomly chosen initial parameter values). Cost-performance trade-off curves generated from these optimization runs provide clear indicators for the optimal system configuration. Thus, continuous embeddings of discrete parameter optimization problemsoffer an effective mechanism for the design space exploration of multiprocessor systems .
Modern multi-core systems have a large number of design parameters, most of which are discrete-valued , and this number is likely to keep increasing as chip complexity rises. Further, the accurate evaluation of a potential design choice is computationally expensive because it requires detailed cycle-accurate system simulation. If the discrete parameter space can be embedded into a larger continuous parameter space, then continuous space techniques can, in principle, be applied to the system optimization problem. Such continuous space techniques often scale well with the number of parameters. We propose a novel technique for embedding the discrete parameter space into an extended continuous space so that continuous space techniques can be applied to the embedded problem using cycle accurate simulation for evaluating the objective function. This embedding is implemented using simulation-based ergodic interpolation , which, unlike spatial interpolation, produces the interpolated value within a single simulation run irrespective of the number of parameters. We have implemented this interpolation scheme in a cycle-based system simulator. In a characterization study, we observe that the interpolated performance curves are continuous, piece-wise smooth, and have low statistical error. We use the ergodic interpolation-based approach to solve a large multi-core design optimization problem with 31 design parameters. Our results indicate that continuous space optimization using ergodic interpolation-based embedding can be a viable approach for large multi-core design optimization problems .
R
Design space exploration of multiprocessor systems involves the optimization of cost/performance functions over
Modern multi-core systems have
R
. This optimization is non-trivial because the evaluation of cost/performance functions
, and this number is likely to keep increasing as chip complexity rises. Further, the accurate evaluation of a potential design choice
R
, typically involving simulation of long benchmark programs on a
because it requires detailed
R
model of the system . Further, algorithms for optimization over discrete parameters do not
system simulation. If the discrete parameter space can be embedded into a larger continuous parameter space, then continuous space techniques can, in principle, be applied to the system optimization problem. Such continuous space techniques often
R
describe a new approach to this optimization problem, based on
propose a novel technique for
R
. Optimization is then carried out over the extended continuous space using standard descent based continuous optimization schemes. The embedding is performed using a novel
so that continuous space techniques can be applied to the embedded problem using cycle accurate simulation for evaluating the objective function. This embedding is implemented using
R
method that
, which, unlike spatial interpolation,
R
in
within
R
. The post-embedding performance function is continuous, and observed to be piecewise smooth. We demonstrate the approach by considering a multiprocessor design exploration
irrespective of the number of parameters. We have implemented this interpolation scheme in a cycle-based system simulator. In a characterization study, we observe that the interpolated performance curves are continuous, piece-wise smooth, and have low statistical error. We use the ergodic interpolation-based approach to solve a large multi-core design optimization
R
discrete parameterswhere the objective function is a weighted sum of cost and performance metrics, and cost-performance tradeoff curves are obtained by varying the weights. We use the COBYLA implementation from the Python SciPy library to perform the optimization on the extended continuous space . Near optimal solutions are obtained within three hundred simulation runs, and we observe improvements in the objective function ranging from 1.3X to 12.2X (for randomly chosen initial parameter values). Cost-performance trade-off curves generated from these optimization runs provide clear indicators for the optimal system configuration. Thus, continuous embeddings of discrete parameter optimization problemsoffer an effective mechanism for the design space exploration of multiprocessor systems
design parameters. Our results indicate that continuous space optimization using ergodic interpolation-based embedding can be a viable approach for large multi-core design optimization problems