-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0675f16
commit 783b9f6
Showing
15 changed files
with
454 additions
and
451 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
# Solving Max-Min Fair Resource Allocations Quickly on Large Graphs | ||
|
||
`Soroush` is a scalable and general max-min fair allocator. It contains a group of approximate and heuristic methods that allow users to control the trade-offs between efficiency, fairness and speed. For more information, see our NSDI24 paper ([Solving Max-Min Fair Resource Allocations Quickly on Large Graphs](https://www.usenix.org/conference/nsdi24/presentation/namyar-solving)). | ||
|
||
|
||
## Code Structure | ||
``` | ||
├── cluster_scheduling # Scripts and implementation for the CS usercase. | ||
| | | ||
| ├── alg # implementation of all the allocators in Soroush. | ||
| | | ||
| ├── scripts # code for generating different problem instances and benchmarking different allocators. | ||
| | | ||
| └── utilities # common utility functions for cluster scheduling. | ||
| | ||
| | ||
└── traffic_engineering # Scripts and implementations for the TE usecase | ||
| | ||
├── alg # implementation of all the allocators in Soroush | ||
| | ||
├── benchmarks # | ||
| | ||
├── scripts # | ||
| | ||
└── utilities # | ||
``` | ||
|
||
### Installation | ||
|
||
Please refer to the Readme under `cluster_scheduling` and `traffic_engineering` for problem specific guidelines. | ||
## Citation | ||
```bibtex | ||
@inproceedings{soroush, | ||
author = {Namyar, Pooria and Arzani, Behnaz and Kandula, Srikanth and Segarra, Santiago and Crankshaw, Daniel and Krishnaswamy, Umesh and Govindan, Ramesh and Raj, Himanshu}, | ||
title = {{S}olving {M}ax-{M}in {F}air {R}esource {A}llocations | ||
{Q}uickly on {L}arge {G}raphs}, | ||
booktitle = {21st USENIX Symposium on Networked Systems Design and | ||
Implementation (NSDI 24)}, | ||
year = {2024}, | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,5 @@ | ||
# Cluster Scheduling | ||
### Instructions | ||
1. Download Gavel from https://github.com/stanford-futuredata/gavel.git | ||
2. In our evaluations, we used Gurobi, so please change the Gavel's solver to point to Gurobi. | ||
1. Specifically, in 'scheduler/policies/max_min_fairness_water_filling.py' change line 150 and 229. | ||
2. In our evaluations, we used Gurobi, so please change the Gavel's solver to point to Gurobi. Specifically, change the solvers in line 150 and 229 of 'scheduler/policies/max_min_fairness_water_filling.py' to cp.GUROBI. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.