Skip to content

Memory-managed parallel computing for medium-sized computational tasks.

License

Notifications You must be signed in to change notification settings

emilyhunt/smartmultiprocessing

Repository files navigation

docs Build Docs

SmartMultiprocessing

A drop-in replacement for Python's multiprocessing library with many extra features, including: memory management, smart task scheduling, a pause button, a GUI, and more.

SmartMultiprocessing is ideal for use cases beyond typical multiprocessing use, like:

  • Running code where memory usage is different depending on input values
  • Benchmarking experimental code where memory usage is not well understood
  • Running code on a machine where it's important to be able to pause execution/change thread and memory use on the fly
  • Being able to monitor the performance of code without having to write your own monitoring library from scratch

SmartMultiprocessing is in active development!

This project is a spin-out from code that @emilyhunt wrote during her PhD. It's currently in alpha / active development - check back here soon for the first production-ready versions!

About

Memory-managed parallel computing for medium-sized computational tasks.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages