CompilerGym v0.2.1
Highlights of this release include:
- [Complex and composite action spaces] Added a new schema for describing action spaces (#369). This complete overhaul enables a much richer set of actions to be exposed, such as composite actions spaces, dictionaries, and continuous actions.
- [State Transition Dataset] We have released the first iteration of the state transition dataset, a large collection of (state,action,reward) tuples for the LLVM environments, suitable for large-scale supervised learning. We have added an example learned cost model using a graph neural network in
examples/gnn_cost_model(#484, thanks @bcui19!). - [New examples] We have added several new examples to the
examples/directory, including a new loop unrolling demo based on LLVM (#477, thanks @mostafaelhoushi!), a loop tool demo (#457, thanks @bwasti!), micro-benchmarks for operations, and example reinforcement learning scripts (#484). Seeexamples/README.mdfor details. We also overhauled the example compiler gym service (#467). - [New logo] Thanks Christy for designing a great new logo for CompilerGym! (#471)
- [llvm] Added a new
Bitcodeobservation space (#442). - Numerous bug fixes and improvements.
Deprecations and breaking changes:
- [Breaking change] Out-of-tree compiler services will require updating to the new action space API (#369).
- The
env.observation.add_derived_space()method has been deprecated and will be removed in a future release. Please use the newderived_observation_spacesargument to theCompilerEnvconstructor (#463). - The
compiler_gym.utils.logsmodule has been deprecated. Usecompiler_gym.utils.runfiles_pathinstead (#453). - The
compiler_gym.replay_searchmodule has been deprecated and merged into thecompiler_gym.random_search(#453).
Full Changelog: https://github.com/facebookresearch/CompilerGym/compare/v0.2.0...v0.2.1