WakeWordFleetScenario
Optimization scenarios · Implementation: mlsysim/engine/scenario_definitions/optimization.py.
Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.
Wake-word detection for a device fleet: stream everything to the cloud, or detect on device.
Notes
Equation: Use the dimensional products, ratios, or selection rules documented on the calculated properties below.
Assumptions: Devices have identical daily query activity; reference datacenters provide full accelerator-time capacity; peak load follows the supplied waking-window model.
Excludes: Admission queues, spare capacity, geographic placement, and wake-word accuracy are absent.
References
Derivation: the calculated properties below state their defining arithmetic and units. They are scenario accounting or input-selection rules, not independently measured relationships.
Examples
>>> from mlsysim import Scenarios
>>> case = Scenarios.VoiceAssistantBillionDevices
>>> str(case.stream_rate)
'32000.0 B/s'Attributes
| Name | Description |
|---|---|
| accelerator_hours_per_day | Accelerator-time demanded by the fleet’s daily queries. Equation: daily query count |
| accelerator_time_per_query | |
| accelerators_per_datacenter | |
| audio_sample_bits | |
| audio_sample_rate | |
| cloud_detection_cost | |
| cloud_detection_cost_per_year | Annual cloud detection price across the device fleet. Equation: devices * | | [datacenter_hours_per_day](#mlsysim.engine.scenario_types.WakeWordFleetScenario.datacenter_hours_per_day) | Daily accelerator-time capacity of one reference datacenter. Equation: | | [datacenters_average](#mlsysim.engine.scenario_types.WakeWordFleetScenario.datacenters_average) | Reference datacenter equivalents required by daily average query work. Equation: | | [datacenters_peak](#mlsysim.engine.scenario_types.WakeWordFleetScenario.datacenters_peak) | Reference datacenter equivalents required at the modeled peak. Equation: | | [devices](#mlsysim.engine.scenario_types.WakeWordFleetScenario.devices) | | | [fleet_query_rate](#mlsysim.engine.scenario_types.WakeWordFleetScenario.fleet_query_rate) | Daily average audio upload rate after local wake-word filtering. Equation: | | [fleet_stream_rate](#mlsysim.engine.scenario_types.WakeWordFleetScenario.fleet_stream_rate) | Aggregate always-streaming audio rate. Equation:devices * stream_rate. Units: | | [local_detection_cost](#mlsysim.engine.scenario_types.WakeWordFleetScenario.local_detection_cost) | | | [local_power_high](#mlsysim.engine.scenario_types.WakeWordFleetScenario.local_power_high) | | | [local_power_low](#mlsysim.engine.scenario_types.WakeWordFleetScenario.local_power_low) | | | [peak_multiplier](#mlsysim.engine.scenario_types.WakeWordFleetScenario.peak_multiplier) | | | [peak_ratio](#mlsysim.engine.scenario_types.WakeWordFleetScenario.peak_ratio) | Peak-to-daily-average load multiplier under the stated waking window. Equation: | | [queries_per_day](#mlsysim.engine.scenario_types.WakeWordFleetScenario.queries_per_day) | | | [queries_per_fleet_day](#mlsysim.engine.scenario_types.WakeWordFleetScenario.queries_per_fleet_day) | Fleet-wide daily query count. Equation:devices * queries_per_day``. Units: queries |
| query_audio | |
| stream_rate | Uncompressed audio byte rate per continuously streaming device. Equation: |
| upload_reduction | Always-streamed duration relative to retained query-audio duration per day. Equation: |
| waking_hours |
devices
Type: float.
Declared default: required.
audio_sample_rate
Type: Quantity.
Declared default: required.
audio_sample_bits
Type: Quantity.
Declared default: required.
queries_per_day
Type: float.
Declared default: required.
query_audio
Type: Quantity.
Declared default: required.
accelerator_time_per_query
Type: Quantity.
Declared default: required.
accelerators_per_datacenter
Type: int.
Declared default: required.
waking_hours
Type: Quantity.
Declared default: required.
peak_multiplier
Type: float.
Declared default: required.
cloud_detection_cost
Type: Quantity.
Declared default: required.
local_power_low
Type: Optional[Quantity].
Declared default: None.
local_power_high
Type: Optional[Quantity].
Declared default: None.
local_detection_cost
Type: Optional[Quantity].
Declared default: None.
stream_rate
engine.scenario_types.WakeWordFleetScenario.stream_rate
Uncompressed audio byte rate per continuously streaming device. Equation: audio_sample_rate * audio_sample_bits. Units: bytes/s after bit conversion; framing and compression are excluded.
fleet_stream_rate
engine.scenario_types.WakeWordFleetScenario.fleet_stream_rate
Aggregate always-streaming audio rate. Equation: devices * stream_rate. Units: bytes/s; all devices stream concurrently.
upload_reduction
engine.scenario_types.WakeWordFleetScenario.upload_reduction
Always-streamed duration relative to retained query-audio duration per day. Equation: one day divided by queries_per_day * query_audio. Units: dimensionless; query clips do not overlap or add metadata.
fleet_query_rate
engine.scenario_types.WakeWordFleetScenario.fleet_query_rate
Daily average audio upload rate after local wake-word filtering. Equation: fleet_stream_rate / upload_reduction. Units: bytes/s; burst timing is represented separately.
cloud_detection_cost_per_year
engine.scenario_types.WakeWordFleetScenario.cloud_detection_cost_per_year
Annual cloud detection price across the device fleet. Equation: devices * cloud_detection_cost. Units: USD/year; per-device cost is supplied.
queries_per_fleet_day
engine.scenario_types.WakeWordFleetScenario.queries_per_fleet_day
Fleet-wide daily query count. Equation: devices * queries_per_day. Units: queries per stated day; identical device usage is assumed.
accelerator_hours_per_day
engine.scenario_types.WakeWordFleetScenario.accelerator_hours_per_day
Accelerator-time demanded by the fleet’s daily queries. Equation: daily query count times accelerator time per query. Units: scalar accelerator-hours per stated day; concurrent batching effects must be reflected in the input.
datacenter_hours_per_day
engine.scenario_types.WakeWordFleetScenario.datacenter_hours_per_day
Daily accelerator-time capacity of one reference datacenter. Equation: accelerators_per_datacenter * one_day. Units: scalar accelerator-hours; full availability is assumed.
datacenters_average
engine.scenario_types.WakeWordFleetScenario.datacenters_average
Reference datacenter equivalents required by daily average query work. Equation: accelerator_hours_per_day / datacenter_hours_per_day. Units: dimensionless; this is continuous capacity, not a rounded site count.
peak_ratio
engine.scenario_types.WakeWordFleetScenario.peak_ratio
Peak-to-daily-average load multiplier under the stated waking window. Equation: peak_multiplier * one_day / waking_hours. Units: dimensionless; the waking-window concentration is assumed.
Peak over the all-day average: the waking-hours concentration times the peak multiplier.
datacenters_peak
engine.scenario_types.WakeWordFleetScenario.datacenters_peak
Reference datacenter equivalents required at the modeled peak. Equation: datacenters_average * peak_ratio. Units: dimensionless; spare capacity and geographic placement are excluded.