#1426 new todo

Worker-local BufferProvider implementation

Reported by: Ichthyostega Owned by:
Priority: grave Milestone: 0integration
Component: lumieraVault Keywords: render design VerticalSlicePlayback
Sub Tickets: #1425 Parent Tickets: #1396, #1428, #1429

Description

As a Lumiera developer,
I need a thread-local flavour of both BufferProvider back-ends,
so that I can configure a BufferProvider instance capable to operate in a massive parallel environment.

envisaged solution

  • with #1425 an adapter was developed to operate the base implementation in a thread-local setup
  • for the BufferStore implementation, it seems fairly straight forward to create a simple implementation that uses a small local allocation pool, while resolving any memory discrepancy directly with heap allocations / deallocations
  • the BufferStage interface is a bit more challenging, since it embeds a hierarchical BufferMetadata table. For a preliminary implementation however, it seems sufficient to add a function for exchange of medatata chains. This could then be used with simple Mutex-based locking in those (exceptional) cases where a thread-local slice is confronted with a buffer allocation request that refers to a buffer type not known locally.

Change history (2)

comment:1 by Ichthyostega, at 2026-05-11T15:45:02Z

Parent Tickets: 13961396, 1428

Attach to parent #1428 (Engine Buffer Manager).

comment:2 by Ichthyostega, at 2026-05-12T01:03:50Z

Parent Tickets: 1396, 14281396, 1428, 1429

Attach to parent #1429 (control effort for global buffer allocator).

Note: See TracTickets for help on using tickets.