A lightweight distributed debugger built on top of ipdb.
Project description
mpdb
mpdb (Multiprocess PDB) is a lightweight distributed debugger built on top of ipdb.
Repository: https://github.com/zzqq2199/mpdb
Note: This project was formerly known as
dpdb. Thedpdbpackage name on PyPI was already taken, so it has been renamed tompdb. Bothimport mpdbandimport dpdbare supported with identical functionality.
Release Notes
- 1.2.1: improve default web header description and link rendering.
mpdbnow sets a default web header description on first import only, avoiding overrides when users have already calledset_description(...).- Default subtitle is updated to an official site link:
https://github.com/zzqq2199/mpdb. - Web UI header rendering now supports safe
<a>links in bothtitleandsubtitle. dpdbnow sets its default title viaset_description(title="DPDB Web Debugger").- Minor backend robustness updates: add typing for description state, guard
pkgutil.get_data(...)when__package__is empty, and only invoke saved signal handlers when callable.
- 1.2.0: add
set_description()API for customizing web UI header.- New
mpdb.web_pdb.set_description(title, subtitle)function to override the default "MPDB Web Debugger" title and "by zhouquan" subtitle at runtime. - The
/statusAPI now includestitleandsubtitlefields when set. - The web UI dynamically updates the header text from the backend status response.
dpdbpackage callsset_description("DPDB Web Debugger")automatically on import.
- New
- 1.1.2: update the README documentation.
- Add the repository link for easier source code access.
- Clarify installation options: PyPI as recommended, GitHub as optional.
- 1.1.1: rename internal identifiers and assets to
mpdb.- All internal identifiers (
dpdb_rank→rank,dpdb_world_size→world_size) renamed for consistency. - Demo files and test files renamed to
mpdb. localStoragekeys in web UI updated tompdb_*prefix.- Prompt updated to
[mpdb]>>>.
- All internal identifiers (
- 1.1.0: rename from
dpdbtompdb.- PyPI package name
dpdbwas already taken, renamed tompdb(Multiprocess PDB). - Full backward compatibility: both
import mpdbandimport dpdbwork identically. pip install mpdbis the recommended installation method.
- PyPI package name
- 1.0.0: first public release version.
- single-process debugging
- distributed command broadcast
- file-based synchronization for non-
torch.distributedscenarios - a built-in web UI
- switching between web and terminal modes during a session
Install
Recommended (PyPI):
pip install mpdb
Optional (GitHub):
pip install git+https://github.com/zzqq2199/mpdb.git
Quick Start
import mpdb
def train():
for step in range(10):
if step == 5:
mpdb.set_trace()
Run a script directly:
python -m mpdb your_script.py
Demo
The standalone repository ships with runnable examples under demo/:
python demo/demo_mpdb.py --mode single
python demo/demo_mpdb.py --mode file
python demo/demo_mpdb.py --mode torch
There is also a helper launcher for the torch demo:
bash demo/launch_mpdb.sh
Notes
torchis optional and only required when you usesync_method='torch'.- The web UI template is packaged with the wheel and works with
pip install mpdb. - Both
import mpdbandimport dpdbare supported and behave identically.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mpdb-1.2.1.tar.gz.
File metadata
- Download URL: mpdb-1.2.1.tar.gz
- Upload date:
- Size: 33.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
98957be5a04fb3448521fc48b9b2b8dba1269f700edc2fe607fc5503816c7a3d
|
|
| MD5 |
b8f20017300954e4386e060aa51d1926
|
|
| BLAKE2b-256 |
5e381dc1712456e5226aeeff7da4193668964d62f3075ecfc67a7105289185ba
|
File details
Details for the file mpdb-1.2.1-py3-none-any.whl.
File metadata
- Download URL: mpdb-1.2.1-py3-none-any.whl
- Upload date:
- Size: 30.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e9df6106f4e0d5f72b080fd4a293f240913402e955397dec32d06830213e283
|
|
| MD5 |
b7808f767a2325b75321075f549ad6cc
|
|
| BLAKE2b-256 |
951c230608537bcafb7093f2abbd50933c7ce4338250c4ed8602338dca7bf630
|