1
Fork 0
Commit graph

68 commits

Author SHA1 Message Date
78aa20868e feat(hpc): smart cluster modules 2026-04-04 21:53:32 +02:00
51da258feb refactor(hpc): more verbose 2026-04-04 21:40:07 +02:00
912574339e fix(hpc): package versions mismatches 2026-04-04 21:30:41 +02:00
f8e0ca277c refactor: cleanups 2026-04-04 21:25:59 +02:00
7d81f94835 fix(hpc): modules loading 2026-04-04 21:12:23 +02:00
745c09e524 fix(hpc): add PyTorch module to minimize uv 2026-04-04 20:50:16 +02:00
2d08023abb fix(hpc): modules 2026-04-04 20:38:30 +02:00
a512682edd fix(hpc): additional insights 2026-04-04 20:26:09 +02:00
4339978cc6 fix(hpc): relax unbound variables 2026-04-04 20:04:05 +02:00
74e807472b feat(hpc): update PBS script with renamed --env-config-path flag 2026-04-04 19:07:05 +02:00
ed20325fef feat(hpc): rename config_path to env_config_path and support YAML configs 2026-04-04 19:07:01 +02:00
457a23e5cb docs(hpc): correct Tyro flag in smoke test comment 2026-04-04 19:03:43 +02:00
798a8ee9e6 feat(hpc): correct Tyro flags in PBS submission script 2026-04-04 19:03:38 +02:00
2248d52e0b chore: remove Scripts from .gitignore to allow project scripts/ dir 2026-04-04 19:02:37 +02:00
d1ca7a0f9f feat(hpc): pass scratch directory as run_dir in PBS script 2026-04-04 19:02:26 +02:00
0aeff0f2da feat(hpc): include git hash in run_name for traceability 2026-04-04 19:02:06 +02:00
bd06feea5f chore: remove PDFs from git tracking and ignore them 2026-04-04 18:59:48 +02:00
92de38608f chore(hpc): finalize hpc settings and scripts
- Update train.pbs to default to smoke test for safety
- Update .gitignore and ruff.toml
- Sync uv.lock (removing python 3.11 remnants)
- Refine smoke test config
2026-04-04 18:59:38 +02:00
92db8c2591 feat(hpc): support run_dir staging and update docs
- Add run_dir and checkpoint_frequency to PPOArgs
- Update train.py to use run_dir for SummaryBoard, model saving, and loss plots
- Create configs/production_training.yaml for HPC production runs
- Update HPC.md with run_dir staging strategy details
2026-04-04 18:59:05 +02:00
34a887cd58 refactor(hpc): use explicit PIP_CACHE_DIR/UV_CACHE_DIR, drop prose comments
Match comment style from previous cleanup commit:
- No section divider bars, no echo progress lines, no prose comments
  on obvious commands
- Replace XDG_CACHE_HOME with explicit PIP_CACHE_DIR and UV_CACHE_DIR
- Drop MPLCONFIGDIR (matplotlib cache is negligible in size)
2026-04-04 18:48:06 +02:00
cd2e594d1b docs(hpc): add storage overview, cache redirect instructions, update smoke test path
- Add storage table ($VSC_HOME / $VSC_DATA / $VSC_SCRATCH) with guidance
- Document cache redirect requirement in interactive sessions
- Update smoke test path to configs/hpc/smoke_test.yaml
- Describe train.pbs output staging behaviour
2026-04-04 18:39:53 +02:00
7bcfa66685 feat(hpc): route caches to $VSC_SCRATCH, outputs to $VSC_DATA
- Install: redirect XDG_CACHE_HOME, UV_CACHE_DIR, MPLCONFIGDIR to
  $VSC_SCRATCH before any pip/module activity ($VSC_HOME is only ~3 GB)
- train.pbs:
  - Set same cache env vars at job start
  - Write run outputs and WandB cache to $VSC_SCRATCH during the run (fast I/O)
  - Copy results to $VSC_DATA/runs/<jobid>/ on completion for persistence
  - Redirect PBS stdout/stderr to $VSC_DATA/runs/<jobid>/job.{out,err}
  - Add cd $PBS_O_WORKDIR as first step (HPC best practice)
2026-04-04 18:39:45 +02:00
8b068086c8 revert(build): restore python >=3.12 constraint
HPC module Python/3.12.3-GCCcore-13.3.0 satisfies >=3.12, so the
relaxation to >=3.11 was unnecessary. No package version changed.
2026-04-04 18:39:33 +02:00
08d54b73b4 refactor: comment cleanups 2026-04-04 18:30:10 +02:00
953e102483 docs(hpc): add docs/HPC.md and simplify README
- docs/HPC.md: cluster table, setup with vsc-venv, interactive debug
  (shell + JupyterLab on donphan), PBS batch submission, dependency mgmt
- README.md: HPC section condensed to a single link to docs/HPC.md
2026-04-04 18:12:33 +02:00
9dce017525 refactor(hpc): migrate to PBS/vsc-venv, reorganise scripts under scripts/hpc/
- Replace Slurm headers with PBS (#PBS) directives
- Replace manual module+venv logic with vsc-venv --activate
- Cluster selection via 'module swap cluster/<name>' before qsub
- MUJOCO_GL=egl retained: required for headless physics sim and video rendering
- Delete deprecated scripts/hpc_install.sh and scripts/hpc_train.slurm
2026-04-04 18:11:38 +02:00
14fd832283 ci(hpc): auto-update env/hpc/requirements.txt on pyproject.toml changes 2026-04-04 18:10:55 +02:00
23f0b45614 feat(hpc): add structured env/hpc config and requirements export script
- env/hpc/modules.txt: curated list of HPC EasyBuild modules loaded by vsc-venv
- env/hpc/requirements.txt: pip packages not covered by HPC modules (auto-generated)
- scripts/export_hpc_requirements.py: developer utility to regenerate requirements.txt
  from pyproject.toml; to be called by CI when pyproject.toml changes
2026-04-04 18:10:38 +02:00
f2139fb419 fix(hpc): enable wandb tracking by default on compute nodes 2026-04-04 17:37:47 +02:00
205b284b96 feat(hpc): parse missing dependencies dynamically from pyproject 2026-04-04 17:37:47 +02:00
0e821cf251 docs: add HPC integration instructions 2026-04-01 19:34:47 +02:00
a774649ff0 test(hpc): add generic smoke test configuration 2026-04-01 19:34:47 +02:00
3c4f0b2ba3 fix(train): disable tqdm in batch mode to prevent log spam 2026-04-01 19:34:47 +02:00
e81708106d ci(hpc): add slurm batch script for training 2026-04-01 19:34:47 +02:00
62e2adf97d ci(hpc): add optimized installation script 2026-04-01 19:34:47 +02:00
d4529147cf build(deps): relax python version constraint for HPC compatibility 2026-04-01 19:34:35 +02:00
RobinMeersman
f594cafead
Morphology/brittle star 2 arms (#17)
Provide the features to read in Environment (Morphology, arena, ...) config files in the JSON format. The example JSON file contains the config for a brittle star with 2 arms
2026-04-01 19:17:42 +02:00
ecdbe74df4
Merge pull request #9 from SELab-3-2026/chore/ppo 2026-04-01 18:11:59 +02:00
cedric
4e4ab629bd fix: usage of uv for pre commit ruff format 2026-03-31 21:11:16 +00:00
cedric
d119bf6408 fix: critic is no longer shared with actor network 2026-03-31 16:03:03 +00:00
cedric
98a8f529e1 fix: avoids local ruff mismatch 2026-03-27 08:51:31 +00:00
cedric
a452912b36 removed unnecessary comments 2026-03-27 04:40:13 +00:00
cedric
31c2d188b7 feature: optional message passer function and clearer naming 2026-03-27 04:09:56 +00:00
cedric
ccbbfc18d7 fix: PPO extracted and integrated with jax 2026-03-27 03:27:26 +00:00
RobinMeersman
a85a7b8d89
Environment setup + train loop (#5)
Mujoco environment setup (vectorized on GPU) + training loop + simulate script
2026-03-26 09:53:54 +01:00
JibrilExe
25a6299eb5 extracted ppo relevant code from cleanrl_atari, and changed to continuous output 2026-03-25 19:34:12 +00:00
Cedric Mekeirle
af9cf1fdc5
Merge pull request #4 from SELab-3-2026/chore/setup-dev-environment
chore: Configure development environment
2026-03-21 20:15:26 +01:00
f8df091984
ci: skip actions on draft pull requests 2026-03-21 17:29:21 +01:00
ff462d867a
fix: Use local dirname
Use local dirname for devcontainer mounting
2026-03-21 17:26:56 +01:00
cb5a6fbd87
refactor: convert jax verification script to pytest and update docs 2026-03-21 16:55:11 +01:00