Michael Litvinov
CPP RUSSIA 2025 speaker
Литвинов
Михаил
Environment
Задача оптимизации и модель компилятора
Action Space
Текущее состояние среды, пространство действий
Reward
Метрика оптимизации
Observation
Текущее представление окружения
LLVM-IR |
InstCount |
Autophase |
Inst2vec |
ProGraML |
etc. |
Количество LLVM-IR инструкций в программе
Размер .TEXT секции
4. Greedy search
1.055×
Результаты
на llvm-ic-v0 env
и cbench-v1 bench
3. Random search (t=3600)
1.061×
2. Random search (t=10800)
1.062×
1. PPO + Guided Search
1.070×
Robin Schmöcker, Yannik Mahlau, Nicolas Fröhlich
env.reset(benchmark="benchmark://npb-v0/50")
episode_reward = 0
for i in range(1, 101):
observation, reward, done, info = env.step(env.action_space.sample())
if done:
break
episode_reward += reward
print(f"Step {i}, quality={episode_reward:.2%}")
By Michael Litvinov