You may have already heard about a new power saving feature in development for farmers, allowing idle nodes to power off and still farm tokens. I’ve discussed this a bit in our Telegram chats and wanted to post a more formal announcement about what’s in the works.
First off, I want to emphasize that this is still just a spec proposed by our developers and is subject to change as the discussion proceeds and any issues arise in implementation. Here’s the outline:
- Idle nodes can power down and be “woken up” by another node in the same local network using wake on lan (WoL)
- This means each local network needs at least one node powered on at all time to receive the wake up signal from TF Chain and broadcast to the other nodes
- Nodes must have WoL enabled in their BIOS settings to participate, but nodes can be excluded from powering down if they don’t have this feature available or enabled (in the case of certified nodes, the feature will need to be enabled by the vendor)
- Each “sleeping” node will wake up periodically (perhaps once per day), to verify its capacity
- Nodes farm the same tokens as if they were running idle
This will also require some changes in how deployments are handled:
- A farm is redefined as a set of nodes running in the same local network
- Grid users create contracts with a farm, rather than with nodes individually
- Nodes within the farm handle the logic of how to provision capacity when a new contract is generated
- If the currently powered on nodes don’t have enough capacity to handle a new contract, they will wake up another node in the farm
- This means deployment times will increase in some cases by the time it takes for a node to power on and be ready (5-10 minutes in good circumstances)
- Since some deployments, like Kubernetes clusters, would prefer to be spread over multiple nodes for redundancy, a new contract type of “cluster” is proposed, allowing rules such as that contained deployments should not run on the same node
Overall, this should mean that farmers can reduce their energy bills substantially for idle nodes while maintaining their farming rewards. For grid users, the experience will remain the same in many cases. Larger deployments, or of course reserving a whole node, are more likely to trigger the boot up of a new node and require the user to wait. Small deployments should often fit within available capacity of already powered on nodes and come alive as quickly as they do now.
I’ll update this thread with any updates as they come. There’s no timeline for release yet, but I hope we can get an idea once the full specification is completed.