You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have compiled a rough definition and design of the computing resource module, and I hope you can join the discussion to reach a consensus on this module.
Compute Node
A computing resource node in the system that should have the following functions:
Install and start several services that support computing
Accept calculation tasks submitted by users and execute them
Schedule these tasks (various tasks may be executed in parallel or queued)
Some preset standard task types, while others are customized by developers
Some computing resources are public, and some may require authorization
Compute Task Manager
The singleton component responsible for managing computing resources in the system should have the following functions:
Accept registration of 'Compute Node'
Accept calculation tasks submitted by users and select appropriate nodes to execute
Maintain load balancing among various computing nodes
Flowchart
Start up
graph TB
subgraph ComputeNode["ComputeNode(node_id, node_entry)"]
InstallService["InstallService(type, service_entry)"]-->StartService["StartService(type, service_entry)"]-->ServiceList["Services{type, service_entry}"]
end
ServiceList.->RegisterNode
subgraph ComputeTaskManager
RegisterNode["StartService(node_id, node_entry)"]-->Nodes["Nodes{node_id, node_entry}, Services{type, node_id[]}"]
end
I think we can first design a universal task scheduling framework, and then support various execution environments(docker eg.) and preset different task types within this framework.
The text was updated successfully, but these errors were encountered:
I am delighted to read your design and suggestions. They are insightful and show some understanding of the system. I am also very excited about the potential that your participation could bring to OpenDAN.
You can read https://github.com/fiatrete/OpenDAN-Personal-AI-OS/blob/MVP/doc/mvp/compute_task.drawio for more detail of compute kernel. I am writeing a artice about workflow now. The purpose of designing compute_kernel subsystem is to enable our users to use their computational resources more efficiently. These computational resources can come from devices they own (such as their workstations and gaming laptops), as well as from cloud computing and decentralized computing networks.
I have compiled a rough definition and design of the computing resource module, and I hope you can join the discussion to reach a consensus on this module.
Compute Node
A computing resource node in the system that should have the following functions:
Install and start several services that support computing
Accept calculation tasks submitted by users and execute them
Schedule these tasks (various tasks may be executed in parallel or queued)
Some preset standard task types, while others are customized by developers
Some computing resources are public, and some may require authorization
Compute Task Manager
The singleton component responsible for managing computing resources in the system should have the following functions:
Accept registration of 'Compute Node'
Accept calculation tasks submitted by users and select appropriate nodes to execute
Maintain load balancing among various computing nodes
Flowchart
I think we can first design a universal task scheduling framework, and then support various execution environments(docker eg.) and preset different task types within this framework.
The text was updated successfully, but these errors were encountered: