#include <gpu_wavenet_realtime_node.hpp>
◆ capacity
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::capacity = 8 |
◆ channels
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::channels = 1 |
◆ completion_service_wait_ns
| std::uint64_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::completion_service_wait_ns = 0 |
Optional bounded completion-service budget for each non-RT worker pump.
Zero preserves nonblocking service. This is not an audio deadline and is recomputed for every pump.
◆ lead_blocks
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::lead_blocks = 2 |
◆ max_inflight
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::max_inflight = 0 |
Maximum number of submitted blocks retained by the serialized worker before it waits for retirement.
Zero selects two when the session has at least two slots and the ring holds two blocks past the lead, else one: one block in flight cannot keep up when a block's round trip exceeds its period (64 frames on an M1 Max). The lead, and so the latency, is unchanged. Larger values require matching provider slots and a fixed preallocated pending ring.
◆ miss_policy
◆ prewarm_blocks
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::prewarm_blocks = 0 |
◆ provider_pool
Optional host-owned pool that keeps this node's providers warm across release() and prepare().
The pool must outlive every node bound to it. A borrowed provider re-fills its causal history before it delivers, as a re-acquired one does.
◆ session
◆ supports_cpu_fallback
| bool pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::supports_cpu_fallback = false |
◆ watchdog_blocks
| std::uint32_t pulp::gpu_audio::GpuWaveNetRealtimeNode::Config::watchdog_blocks = 0 |
Callback blocks that may pass with work in flight and no completion before the node latches GpuAudioRecoveryReason::ProviderUnresponsive.
Zero selects 200 ms converted to blocks at prepare() (at 48 kHz: 150 blocks of 64 frames, 75 of 128, 38 of 256), or capacity - 1 if that is larger, and grows the input ring to hold the window and the lead, so a hang trips the watchdog before the ring saturates. A non-zero value is used as given with the configured capacity. A provider that keeps completing, however late, is never unresponsive.
The documentation for this struct was generated from the following file: