Reduce wait time to deploy #497
Replies: 3 comments 3 replies
-
My concern is mainly from the users side. Correct me if I'm wrong, but I imagine a scenario like this. A user is given a node or manually selects a node that has been shut down. He deploys a workload: So best case that would be: ~6 min 30 sec for a deployment to be ready So I fear a worse user experience in exchange for lower power consumption. |
Beta Was this translation helpful? Give feedback.
-
I still see an issue when choosing which node to keep up: there are cases where some nodes have more of a specific type of resource and less of another type of resources (more cores but less ram for example). To solve that issue we could keep a node up (that is not being used) for each type of resource, where that node has the most amount of that type of resource. So in the worst case we keep 4 nodes up (on top of the ones being used) and in the best case we keep 1 node up (on top of the ones being used). We properly communicate this to the farmers to minimize the amount of nodes that we keep up (for nothing):
|
Beta Was this translation helpful? Give feedback.
-
We cannot enforce this
Current tokenomics punish such configuration by rewarding less tokens. Farmers by now know how they should build a node to have the maximal amount of tokens rewarded which is in line with a healthy amount of ram / ssd / cpu per node. Here is another suggestion, if for example one out of x nodes is up in a farm. Whenever this node fills up like 75%, we power on an additional node. This way, a farmer is not punished when his farm is not used (because it means 2 nodes will be up the entire time). |
Beta Was this translation helpful? Give feedback.
-
Once #473 will be implemented nodes will be shut down whenever possible. This currently means that we at least keep one manager node per LAN per farm. That node will bring the other nodes up when needed. So the node will bring another node up if the user creates a capacity reservation contract that requires more resources than available on the nodes that are currently up. This brings us to the topic of this discussion. Whenever a new node has to be brought up the user will have to wait some time. We could reduce this wait time by keeping one extra node up that is not being used in any contracts (no used resources). Then, whenever a new contract is created requiring us to start using that node we bring another node up which will take its place (no used resources). This will go on until all nodes are up. Bringing nodes down will be the same but the other way around. Then we still have the choice of the node that we bring up in the case mentioned before. I would suggest choosing the node that has the most resources so that in most cases the contract will fit on that node.
@DylanVerstraete, @DylanVerstraete, @coesensbert, @muhamadazmy, @LeeSmet any thoughts?
Beta Was this translation helpful? Give feedback.
All reactions