versatus / versatus

Create full-stack applications in your preferred languages with your favorite development tools.
https://versatus.io
MIT License
77 stars 21 forks source link

Compute Scheduling #653

Open mattgeddes opened 1 year ago

mattgeddes commented 1 year ago

This was another issue that came out of Friday's call that I said I'd raise and am just getting to now.

When an RPC call comes in from the outside world to request the execution of a compute job, the Protocol needs to be able to schedule that job across the network to varying extents and depending on the type of job that it is. We anticipate seeing a variety of approaches to scheduling jobs in the future, but for betanet, we only need to see two implemented:

  1. Contract scheduler -- this would take the compute job request and request it be run on all of the compute nodes in a given quorum.
  2. Ad-hoc scheduler -- this is a very simple scheduler that just has the job execute on any one node in the network or a given quorum (I believe that in betanet network == quorum anyway). This is for the prototype non-contract compute case.

Feel free to break this down into smaller chunks or add any extra detail here.

vsawant10949 commented 12 months ago

What if we extend the Decentralized Task Scheduler for this too? which considers backpressure on compute nodes!