Description
Weighted Million Operations Per Second (WMOPS) is a standardized measurement unit defined in 3GPP TS 26.258 and related specifications to quantify the computational complexity of speech and audio codec algorithms, such as those in the AMR, AMR-WB, and EVS codec families. It is not a measure of raw processor speed but a weighted count of specific low-level operations (like additions, multiplications, memory accesses) that the codec executes per second when processing a signal at a given sampling rate and frame length. Each type of operation is assigned a weight reflecting its relative computational cost on a typical DSP or processor architecture. The total WMOPS value is calculated by summing the weighted counts of all operations performed during one second of audio encoding or decoding.
The calculation methodology involves profiling a reference codec software implementation (typically in fixed-point C) using a defined set of operation types and their associated weights. These weights are established based on the estimated cycle cost of each operation on a generic processor model. The specification defines detailed counting rules, including how to handle loops, conditional operations, and functions. Compliance testing for a codec implementation often includes verifying that its WMOPS consumption does not exceed a specified maximum limit under worst-case channel conditions (e.g., Frame Erasure Rate tests) to ensure it can run in real-time on target hardware.
WMOPS serves a critical role in the 3GPP ecosystem by providing an objective, platform-independent metric for comparing codec complexity. This allows network operators and device manufacturers to select appropriate hardware capable of supporting multiple concurrent codec channels (e.g., in a base station transcoder or a smartphone). It also ensures that different software implementations of the same codec standard have comparable computational footprints, aiding in interoperability and certification. The metric is essential for system design, capacity planning, and power consumption estimation, as processing load directly impacts battery life in mobile devices and infrastructure costs in networks.
Purpose & Motivation
WMOPS was created to solve the problem of objectively comparing and specifying the computational requirements of digital speech and audio codecs in a hardware-agnostic manner. Before its standardization, codec complexity was often described in vague terms like 'DSP MIPS', which were highly dependent on specific processor architectures, compiler efficiencies, and memory systems, making accurate cross-platform comparisons and system design nearly impossible. This lack of a standard metric posed significant challenges for mobile phone manufacturers who needed to ensure their chipsets could support mandatory codecs in real-time while meeting power budgets, and for network infrastructure vendors designing high-density transcoding equipment.
The motivation stemmed from the proliferation of advanced codecs in 3GPP systems (from GSM FR/HR to UMTS AMR and later LTE EVS), each with increasing algorithmic complexity to deliver higher audio quality and better bandwidth efficiency. A standardized complexity measure was necessary to define minimum performance requirements in technical specifications, enabling fair benchmarking and certification of implementations. WMOPS provided a reproducible, transparent method to assess whether a given software implementation of a codec could be executed in real-time on a particular hardware platform, thus de-risking product development and ensuring consistent end-user experience across devices and networks. It addressed the critical need for a common language between codec algorithm designers, software developers, and hardware engineers within the 3GPP ecosystem.
Key Features
- Platform-independent complexity metric for speech/audio codecs
- Uses weighted counts of low-level operations (add, multiply, shift, memory access)
- Defined operation types and weights in 3GPP TS 26.258
- Includes profiling rules for worst-case channel conditions (e.g., frame erasures)
- Used for compliance testing and maximum complexity limits
- Enables real-time processing capability assessment on target hardware
Evolution Across Releases
Initially defined in TS 26.258 for the AMR-NB and AMR-WB codec families. Established the fundamental methodology for counting weighted operations, defining operation types (OP, L_OP, LD, ST, etc.), their associated weights, and the procedures for measuring WMOPS under normal and frame erasure conditions to ensure real-time performance compliance.
Defining Specifications
| Specification | Title |
|---|---|
| TS 26.258 | 3GPP TS 26.258 |
| TS 26.441 | 3GPP TS 26.441 |
| TS 26.442 | 3GPP TS 26.442 |
| TS 26.443 | 3GPP TS 26.443 |
| TS 26.444 | 3GPP TS 26.444 |
| TS 26.450 | 3GPP TS 26.450 |
| TS 26.451 | 3GPP TS 26.451 |
| TS 26.452 | 3GPP TS 26.452 |
| TS 26.997 | 3GPP TS 26.997 |
| TS 46.055 | 3GPP TR 46.055 |