{"id":25738717,"url":"https://github.com/iterait/scheduler","last_synced_at":"2026-06-04T23:31:17.721Z","repository":{"id":96341763,"uuid":"156919349","full_name":"iterait/scheduler","owner":"iterait","description":null,"archived":false,"fork":false,"pushed_at":"2018-11-09T21:22:28.000Z","size":22,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":9,"default_branch":"dev","last_synced_at":"2025-11-19T23:22:23.807Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iterait.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-09T21:20:57.000Z","updated_at":"2018-11-09T21:21:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"3a9a2235-da99-471e-8dc1-2780e3574ada","html_url":"https://github.com/iterait/scheduler","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/iterait/scheduler","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterait%2Fscheduler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterait%2Fscheduler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterait%2Fscheduler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterait%2Fscheduler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iterait","download_url":"https://codeload.github.com/iterait/scheduler/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterait%2Fscheduler/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33924832,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-04T02:00:06.755Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-26T07:32:45.900Z","updated_at":"2026-06-04T23:31:17.704Z","avatar_url":"https://github.com/iterait.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **TensorFlow training scheduler**\n\nTT scheduler is a simple tool facilitating effective GPU utilization for TensorFlow training(s) in local multi-GPU environment.\n\n- auto `CUDA_VISIBLE_DEVICES` masking\n- schedule arbitrary number of trainings in advance\n- simple command line usage\n\n## Quick start\n\n```bash\nalias sch=/path/to/scheduler.py\nsch --init [NUM_GPUS]\nsch task.py --your_arg value\nsch -n 2 training.py  # training on two GPUs\nsch -f \"[1,3]\" training.py  # force to use GPUs 1 and 3\n```\n\nRun `sch --help` for help.\n\nIf no GPUs are available, the task will be executed as soon as possible.\n\n## Requirements\n\n\u003c/ul\u003e\n\u003cli\u003eUnix platform (tested on Ubuntu 16.04.1 LTS)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://www.python.org/\"\u003ePython 3\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n## Usage\n\n```                                                                \nusage: scheduler.py [-h] [-i INIT] [-n NUM] [-p PREFER] [-f FORCE] [-s]       \n                    [-r RELEASE [RELEASE ...]] [--cx]                         \n                    [task [task ...]]                                         \n                                                                              \npositional arguments:                                                         \n  task                  The task to run as soon as the required GPUs are      \n                        available.                                            \n                                                                              \noptional arguments:                                                           \n  -h, --help            show this help message and exit                       \n  -i INIT, --init INIT  The number of available GPUs.                         \n  -n NUM, --num NUM     The number of required GPUs.                          \n  -p PREFER, --prefer PREFER                                                  \n                        Instruct the scheduler to prefer the specified GPU(s).\n  -f FORCE, --force FORCE                                                     \n                        Force the scheduler to use the specified GPU(s).      \n  -s, --status          Show GPU usage status (user/GPU/taskPID/start)        \n  -r RELEASE [RELEASE ...], --release RELEASE [RELEASE ...]                   \n                        Releases the specified GPU(s).                        \n  --cx                  Append model.n_gpus=[NUM] to the task args.           \n```\n\n## Contributing\nYou are welcome to participate in development of this project.\n\n## License\nScheduler is distributed under the MIT License. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiterait%2Fscheduler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiterait%2Fscheduler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiterait%2Fscheduler/lists"}