ArchGym: A Game-Changing Tool for ML-Assisted Architecture Design
Computer architecture research has a rich history of using simulators and tools to shape the design of computer systems. These resources have greatly advanced the field, benefiting both industry and academia. However, as computer architecture research evolves, machine learning (ML) optimization is becoming increasingly important. ML is being used to meet specific requirements in various domains, such as computer architecture, TinyML acceleration, power consumption, and security.
While the benefits of ML in design optimization have been demonstrated, there are challenges that need to be addressed. To tackle these challenges, we have introduced ArchGym, an open-source gymnasium for machine learning-assisted architecture design. ArchGym provides a variety of computer architecture simulators and ML algorithms, enabling researchers to find the optimal set of architecture design parameters for different problems.
With ArchGym, we have found that any ML algorithm can find the optimal design parameters with a large enough number of samples. Hyperparameter selection is crucial for finding the best design, but it can be challenging. We have made the code and dataset available, allowing researchers to benefit from ArchGym across multiple simulations and ML algorithms.
However, ML-assisted architecture research presents its own set of challenges. There is no systematic way to identify the best ML algorithms or hyperparameters for a specific architectural problem. There is also a need to balance accuracy, speed, and cost in architecture exploration. Simulators vary in terms of accuracy and speed, and there are limitations on the number of runs that can be collected from a simulator. It is also difficult to compare the effectiveness of different ML algorithms under these constraints.
To address these challenges, ArchGym provides a unified framework for evaluating ML-based search algorithms. It consists of the ArchGym environment, which encapsulates the architecture cost model, and the ArchGym agent, which includes the ML algorithm and its hyperparameters. The environment and agent are connected through a standardized interface, and the exploration data is saved as the ArchGym Dataset.
We have demonstrated that with ArchGym, different ML algorithms can achieve the same hardware performance with the right hyperparameters. Hyperparameter tuning is essential, and finding the optimal set may require exhaustive search or luck. We have also shown that datasets created using ArchGym can be used to train high-fidelity proxy models, improving the speed of architecture simulation.
In conclusion, ArchGym is a game-changing tool for ML-assisted architecture design. It addresses the challenges in this field and provides a unified framework for evaluating different ML-based search algorithms. With ArchGym, researchers can find the optimal architecture design parameters and train proxy models for faster architecture simulation.