Parallelization across separate queries/systems #145
LilithSilver
started this conversation in
Ideas
Replies: 1 comment 2 replies
-
Thank you! Originally I had something like that even before and it is more or less still planned. The only problem is that multithreading is my biggest enemy. Every time I deal with the topic it brings me sooner or later to despair :D So if someone else could extend the JobScheduler I would be very grateful. The only problem is, it still has to be ZeroAlloc and as soon as dependencies come into play there is usually always some garbage somewhere. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Sometimes, I want to run multiple queries or systems in parallel, not just a single query, and track dependencies between them.
A very mature version of this feature might look something like Unity's Job Dependencies. Arch.Extended could build on top of that with something like Unity's Dependency property which automatically tracks dependencies between parallel queries across systems and sets up the job dependencies accordingly.
But even without that magic dependency finding, any way of running multiple queries in parallel, even if handles would need to be tracked manually, would be appreciated! i.e. a simple example would be
var handle = world.ParallelQuery(...., DependencyJobHandle)
that returns aJobHandle
itself for further scheduling. These chains could then be tracked across systems for the intrepid user (or by Arch.Extended of course).Is something along these lines planned? Am I missing something that's already possible? I know parallelization isn't supported for sourcegen yet, but anything for regular queries?
Phenomenal work so far on this package, by the way. I've been really enjoying getting it running.
Beta Was this translation helpful? Give feedback.
All reactions