sof-gossip-tuning 0.9.2

Typed gossip and ingest tuning presets for SOF hosts
Documentation
# sof-gossip-tuning

Typed gossip and ingest tuning presets for SOF hosts.

This crate does two things:

1. models the subset of tuning SOF can already apply directly
2. keeps bundled gossip queue capacities explicit and typed

Its structure follows the same split used elsewhere in SOF: domain types and preset values live in
the domain layer, while the application service projects those profiles into SOF's runtime builder
through an explicit output port.

## What SOF Can Apply Today

- ingest queue mode
- ingest queue capacity
- UDP batch size
- UDP batch coalesce window
- receiver pin-by-port / fixed receiver core
- TVU receive socket count
- gossip receiver / socket-consume / response channel capacities

Use it with `sof::runtime::RuntimeSetup`:

```rust
use sof_gossip_tuning::{GossipTuningProfile, HostProfilePreset};

let setup = sof::runtime::RuntimeSetup::new()
    .with_gossip_tuning_profile(GossipTuningProfile::preset(HostProfilePreset::Vps));
```

Built-in presets:

- `Home`: bounded ingest and conservative socket fanout for small self-hosted machines
- `Vps`: lockfree ingest, moderate gossip queue targets, and dual-socket fanout for constrained public hosts
- `Dedicated`: aggressive fanout and larger queue budgets for dedicated ingest machines

## Queue Plans

`PendingGossipQueuePlan` remains available as a compact view of the gossip queue budget:

- gossip receiver channel capacity
- socket consume channel capacity
- gossip response channel capacity
- high-level fanout posture

## Fuzzing

The crate includes a dedicated fuzz target for profile projection through the runtime tuning port:

```bash
cargo +nightly fuzz run profile_runtime_port
```