Description
In what area(s)?
/area runtime
Describe the feature
At present, Dapr Workflows and Dapr Workflow Activities are able to execute anywhere in a cluster where the Workflows and Activities are registered via the App Deployment. (see image below)
I would like the ability to ensure that only certain Activities can be scheduled and run on a specific Node Type / Group.
A prime example of this is being able to run GPU workloads for AI/ML (Such as a process that requires Nvidia CUDA toolkit to be installed on the node) (see image below - A2 Is a new Workflow Activity which can only run on a specific type of Node, in this case a GPU Node)
The reason why this is important is because we would not want to schedule non-GPU workloads on GPU nodes as this is wasteful of precious (very expensive) GPU-enabled nodes. On the other hand, we wouldn't want GPU workloads running on non-CPU-enabled nodes, as these would not perform well.
(I made a PoC some time ago of how how to register Workflows and Activities dynamically, which worked well. However since 1.15 the Actor Backend has had a significant re-write so this PoC code won't make much sense against the current code in main)
Release Note
RELEASE NOTE:
Metadata
Metadata
Assignees
Type
Projects
Status