Skip to main content

Resource-aware hyperparameter tuning execution engine

Project description

Fluid: Resource-Aware Hyperparameter Tuning Engine

PyPI version Build Status

Fluid is an alternative Ray executor that intelligently manages trial executions on behalf of hyperparameter tuning algorithms, in order to increase the resource utilization, and improve end-to-end makespan.

This is the implementation of our MLSys'21 paper "Fluid: Resource-Aware Hyperparameter Tuning Engine".

Get Started

First follow the instruction in Ray Tune to setup the Ray cluster and a tuning environment as usual.

Then make sure Nvidia MPS is correctly setup on all worker nodes.

Fluid itself is a normal python package that can be installed by pip install fluidexec. Note that the pypi package name is fluidexec because the name fluid is already taken.

To use Fluid in Ray Tune, pass an instance of it as an additional keyword argument to tune.run:

from fluid.executor import MyRayTrialExecutor
from fluid.scheduler import FluidBandScheduler
tune.run(
    MyTrainable,
    scheduler=FluidBandScheduler(...),
    trial_executor=FluidExecutor(),
    ...
)

Reproduce Experiments

See the README in workloads for more information.

Notes

Please consider to cite our paper if you find this useful in your research project.

@inproceedings{fluid:mlsys21,
    author    = {Peifeng Yu and Jiachen Liu and Mosharaf Chowdhury},
    booktitle = {MLSys},
    title     = {Fluid: Resource-Aware Hyperparameter Tuning Engine},
    year      = {2021},
}

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

fluidexec-0.1.0rc0.tar.gz (67.6 kB view hashes)

Uploaded Source

Built Distribution

fluidexec-0.1.0rc0-py3-none-any.whl (46.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page