ComputationalRadiationPhysics / redGrapes

Resource-based, Declarative task-Graphs for Parallel, Event-driven Scheduling :grapes:
https://redgrapes.rtfd.io
Mozilla Public License 2.0
20 stars 5 forks source link

move resource-user-lists into `TaskSpace` #40

Open michaelsippel opened 9 months ago

michaelsippel commented 9 months ago

As of now, each Resource object owns a ChunkedList< ResourceUsageEntry >, which will be accesed by init_graph() and delete_from_resources() . However this resource-user-list will contain all tasks from all TaskSpaces even though only those in the current task space are relevant for init_graph(). We could eliminate this check if we have a separate resource-user-list for each TaskSpacexResource.

Also, the ResourceAccess would not need a shared_ptr to the resource-struct anymore . It only requires a Key ( Resource-id ) to look up the resource-user-list from a map in the TaskSpace once per init_task() , and then iteration over all resources will be more efficient.