hi everyone
after I updated my codebase of tbp.monty and installed Hydra, now Habitat isn’t working.
I have been trying to fix it with Claude for hours, but I am not a technical expert, and it made the problem even worse.
Below is a summary of my chat with Claude, and I would appreciate any help based on it.
TBP.Monty Segmentation Fault – Complete Troubleshooting Summary
System Information
-
OS: Ubuntu/Linux
-
GPU: NVIDIA MX350 (driver 535.274.02)
-
Python: 3.8
-
Conda Environment:
tbp.monty.backup -
tbp.monty version: 0.17.0 (commit 6c76e3f)
-
Location:
/home/ziad/tbp.monty
Problem
Running any experiment causes an immediate segmentation fault:
python run.py experiment=tutorial/surf_agent_2obj_train
# Result: Segmentation fault (core dumped)
The crash happens during initialization, BEFORE any training occurs. No results folder is created.
What We Verified
Working Components
-
YCB dataset installed correctly (v1.2, 81 objects at
~/tbp/data/habitat/objects/ycb/) -
Environment variable set:
MONTY_DATA=~/tbp/data -
Python imports work:
import tbp.monty # ✓ Works import habitat_sim # ✓ Works (v0.2.2) -
NVIDIA driver is functional
-
Conda environment has all packages from
environment.yml
What Crashes
-
ANY experiment config (tutorial, custom, minimal)
-
Crashes with both
num_parallel=16andnum_parallel=1 -
Crashes with
episodes=1(single episode test) -
Happens before the config fully loads
Troubleshooting Steps Attempted
1. Parallel Processing Issues
python run.py experiment=tutorial/surf_agent_2obj_train num_parallel=1
# Result: Still crashes
2. GPU Rendering Issues
export MAGNUM_DEVICE=cpu
export MESA_GL_VERSION_OVERRIDE=3.3
export HABITAT_SIM_LOG=quiet
python run.py experiment=tutorial/surf_agent_2obj_train num_parallel=1
# Result: Still crashes
3. Environment Rebuild
conda env remove -n tbp.monty
conda env create -f environment.yml
# Result: Successfully created tbp.monty.backup with all dependencies
# But: Still crashes when running experiments
4. Habitat-Sim Basic Test
import habitat_sim
cfg = habitat_sim.SimulatorConfiguration()
backend_cfg = habitat_sim.SimulatorConfiguration()
backend_cfg.scene_id = 'NONE'
sim = habitat_sim.Simulator(backend_cfg)
# Result: Error about 'agents' attribute, but imports work
5. Minimal Test Cases
-
Tried with a single object
-
Tried with built-in Habitat shapes (
capsule3DSolid) -
Tried with a minimal config (3 epochs, 10 steps)
-
All crash identically
Configuration Used
experiment: tutorial/surf_agent_2obj_train
num_parallel: 1
episodes: 1
objects: [mug, banana]
n_train_epochs: 14
max_train_steps: 1000
The config prints successfully, then crashes during simulator initialization.
Key Observations
-
Crash happens after config resolution and before the first simulation step
-
No error message, only “Segmentation fault (core dumped)”
-
No partial results are created
-
Same crash across all experiment types
-
MX350 is an older mobile GPU and may not support required OpenGL features
Files Available
-
Environment export:
~/tbp_monty_backup_working_YYYYMMDD.yml -
Crash log:
~/tbp.monty/crash.log(if created) -
Config location:
~/tbp.monty/conf/experiment/ -
Results path (empty):
~/tbp/results/monty/projects/
Not Tried Yet
-
Habitat-sim headless build installation
-
GDB stack trace analysis
-
Running on different hardware
-
Docker container
-
Checking GitHub issues for similar MX350 problems
-
Testing with habitat-sim test scenes
Questions for TBP.Monty Experts
-
Is the MX350 GPU supported?
-
Should we use the habitat-sim headless build?
-
Are there missing environment variables for GPU compatibility?
-
Has anyone run tbp.monty on similar hardware?
-
Is there a Docker image available?
-
Should we try an older tbp.monty version?
Reproduction Steps
conda activate tbp.monty.backup
cd ~/tbp.monty
python run.py experiment=tutorial/surf_agent_2obj_train num_parallel=1
# Segmentation fault (core dumped)
Bottom line: The environment is correctly configured, imports work, but Habitat-sim crashes during initialization.