-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Description
to avoid node fragamentation and stranded capacity -e.g a user reserves all CPUs but leaves RAM/disk unused, making the node unusable- we should implement a slice-based resource reservation model for VM deployment
- Slice is a bundle of CPU, RAM, and Disk. They can be defined by the farmer (node owner) or fallback to a
- Global slice definition is the fallback in case there were no slice definition on the node by the famer e.g 1cpu 2gb ram, 20gb ssd
- Farmer-defined slices: are defined by the farmer fitting their hardware (allowing defining compute, storage speciaility of the node)
- The user can only reserve Slices (X number of them)
- The user specifies the raw number of resources and we suggest the X slices that fit the request
Raw to slices
- Users request raw resources (CPU, RAM, Disk).
- Gridproxy? translates requests into slice per node.
- Example: Request = 4 CPU + 8 GB RAM + 200 GB Disk, the results will be -based on each node slices definition-
- Node A: 2 slices.
- Node B: 10 slices.
User Journey
- User specifies requirements: “4 CPUs, 8 GB RAM, 200 GB Disk.”
- System translates into slices per node
- The system selects node with clear statement of the slices that will get reserved
Open Questions
- Should slices include disks? e.g 2 nodes on the grid (16cpu 16ram, 2TB ssd) and (4cpu, 8ram, 16TB ssd)
- Where the farmers should define the slices? in tfchain or outside e.g in an explorer?
- Most of the farmers won't probably configure slices on their nodes, is their a global slice definition? or if not should we leave the beahvior as is?
Metadata
Metadata
Assignees
Labels
No labels