#1425 new todo

Buffer handling slices

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

Description

As a Lumiera developer,
I need a scheme of self-contained slices of the BufferProvider implementation,
so that I can use it with suitable back-ends within a massively concurrent environment.

description of context

With the #1410 assessment and clean-up of the internal structure in the BufferProvider default implementation, the code was re-arranged in two »pillars« of the implementation: Buffer metadata and storage handling. For both of these, a thoroughly scrutinised base implementation is available (where »base« implies that it was not yet analysed regarding performance).

However, for an actual setup of the BufferProvider in the Render Engine, an orthogonal concern requires attention: each worker thread must be able to access the buffer handling with low latency, and without generating lock contention. The idea is thus to regroup the existing code in a way that it can operate as a thread-local slice.

  • in the initial version it is sufficient that each slice is self-contained and can bootstrap from a clean slate any time.
  • later, as part of an elaborate configuration of the rendering engine, this structure will be extended to include asynchronous messaging, enabling these segments to exchange memory blocks and buffer metadata with a central registry in order to build this memory management scheme on top of a tiling-based memory allocation scheme.

Change history (2)

comment:1 by Ichthyostega, at 2026-04-14T23:22:45Z

Parent Tickets: 13961396, 1426

Attach to parent #1426 (Worker-local BufferProvider implementation).

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

Parent Tickets: 1396, 14261396, 1426, 1428

Attach to parent #1428 (Engine Buffer Manager).

Note: See TracTickets for help on using tickets.