You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[envpool] modernize benchmark stack and switch procgen upstream (#337)
## Why
The benchmark path was still pinned to an older Gym/Sample Factory era
setup, and Procgen was still sourced from a fork that carried a small
set of EnvPool-specific changes. This PR modernizes the benchmark path
without touching the larger Bazel/toolchain upgrade track, and moves
Procgen back to official upstream with a bounded local patch.
## Summary
- migrate benchmark baseline scripts and docs to the Gymnasium/ALE v5
stack
- pin build-time setuptools to keep `make bazel-build` working on Linux
- make `benchmark/test_envpool.py` choose a safe default `batch_size`
for small smoke runs while still rejecting invalid explicit configs
- switch Procgen from `Trinkle23897/procgen` to official
`openai/procgen` `0.10.7` with a small local patch for Qt5 includes and
EnvPool behavior
## Test plan
- `dev-0`: `make flake8`
- `dev-0`: `make py-format`
- `dev-0`: `make docstyle`
- `dev-0`: `make clang-tidy`
- `dev-0` verify workspace: `make bazel-test`
- `dev-0` verify workspace: `make bazel-build`
- `dev-0` fresh venv: `python benchmark/test_gym.py --env atari
--num-envs 1 --total-step 20`
- `dev-0` fresh venv: `python benchmark/test_gym.py --env mujoco
--num-envs 1 --total-step 20`
- `dev-0` fresh venv: `python benchmark/test_gym.py --env box2d
--num-envs 1 --total-step 20`
- `dev-0` fresh venv: `python benchmark/test_envpool.py --env atari
--num-envs 1 --total-step 20`
- `dev-0` fresh venv: `python benchmark/test_envpool.py --env mujoco
--num-envs 1 --total-step 20`
- `dev-0` fresh venv: `python benchmark/test_envpool.py --env box2d
--num-envs 1 --total-step 20`
We use `PongNoFrameskip-v4` (with environment wrappers from [OpenAI baselines](https://github.com/openai/baselines/blob/master/baselines/common/atari_wrappers.py)) and `Ant-v3` for Atari/Mujoco environment benchmark test with `envpool==0.6.1.post1`. Other packages' versions are all in `requirements.txt`:
10
+
The historical numbers below were produced with `PongNoFrameskip-v4` and
11
+
`Ant-v3` on `envpool==0.6.1.post1`. The current benchmark scripts in this
12
+
directory use Gymnasium's `ALE/Pong-v5` and `Ant-v5`, and the baseline
13
+
dependencies plus shared benchmark tooling are installed from
14
+
`requirements.txt`:
11
15
12
16
```bash
13
17
$ pip install -r requirements.txt
14
18
```
15
19
16
-
To align with other baseline results, FPS is multiplied with `frame_skip` (4 for `PongNoFrameskip-v4` and 5 for `Ant-v3`).
20
+
`test_gym.py` uses only the packages above. `test_envpool.py` additionally
21
+
expects an installed EnvPool build with native modules, so install the
22
+
EnvPool wheel you want to benchmark separately before running it.
23
+
24
+
To align with other baseline results, FPS is multiplied with `frame_skip` (4
0 commit comments