With the rising complexity of numerous novel applications that serve our modern society comes the strong need to design efficient computing platforms. Designing efficient hardware is, however, a complex multi-objective problem that deals with multiple parameters and their interactions. Given that there are a large number of parameters and objectives involved in hardware design, synthesizing all possible combinations is not a feasible method to find the optimal solution. One promising approach to tackle this problem is statistical modeling of a desired hardware performance. Here, we propose a model-based active learning approach to solve this problem. Our proposed method uses Bayesian models to characterize various aspects of hardware performance. We also use transfer learning and Gaussian regression bootstrapping techniques in conjunction with active learning to create more accurate models. Our proposed statistical modeling method provides hardware models that are sufficiently accurate to perform design space exploration as well as performance prediction simultaneously. We use our proposed method to perform design space exploration and performance prediction for various hardware setups, such as micro-architecture design and OpenCL kernels for FPGA targets. Our experiments show that the number of samples required to create performance models significantly reduces while maintaining the predictive power of our proposed statistical models. For instance, in our performance prediction setting, the proposed method needs 65% fewer samples to create the model, and in the design space exploration setting, our proposed method can find the best parameter settings by exploring less than 50 samples.
翻译:随着为现代社会提供服务的众多新领域应用的复杂性不断增加,需要设计有效的计算平台。设计有效的硬件是一个复杂的多目标问题,涉及多个参数及其相互作用。由于硬件设计涉及大量的参数和目标,综合所有可能的组合并不能找到最优解决方案,因此寻求统计建模来描述所需的硬件性能是一种有前途的解决方法。在这里,我们提出了一种基于模型的主动学习方法来解决这个问题。我们的方法使用贝叶斯模型来描述硬件性能的各个方面,同时结合传递学习和高斯回归自助法的方法创建更准确的模型。我们提出的统计建模方法可以提供足够准确的硬件模型,能够同时进行设计空间探索和性能预测。我们使用提出的方法来针对各种硬件设置进行设计空间探索和性能预测,如微体系结构设计和用于FPGA目标的OpenCL内核。我们的实验结果表明,提出的统计模型所需样本的数量大大减少,同时保持模型的预测能力。例如,在我们的性能预测设置中,所提出的方法需要减少65%样本才能创建模型,在设计空间探索设置中,我们的方法探索不到50个样本就可以找到最佳参数设置。