# MULTIPLE_SUBGRAPHS
## The three modes
1. No interrupts needed: opt out entirely.
```python
subgraph = subgraph_builder.compile(checkpointer=False)
```
2. Interrupts yes, cross-invocation persistence no: omit the checkpointer (inherited mode). Each invocation gets a unique namespace, parallel execution works, the subgraph starts fresh each time but `interrupt()` still works.
```python
subgraph = subgraph_builder.compile()
```
3. Cross-invocation persistence needed: keep `checkpointer=True`. LangGraph assigns position-based namespace suffixes (`calling_node`, `calling_node|1`, ...). For stable names, wrap each subgraph call in a uniquely named node.
## Rule
Do not default to `checkpointer=True` on subgraphs. Most repeated-subgraph patterns want mode 2. Read the subgraph persistence docs before choosing mode 3.