The SBC can leverage Graphics Processing Units (GPUs) for increased transcoding capacity of T-SBC instances deployed in OpenStack cloud environments (Newton and above). GPU acceleration significantly increases transcoding capacity of virtual instances, which otherwise would have a limited scale. In many cases a GPU-accelerated solution performs better than specialized DSP hardware-based solutions. GPU-based solutions have the following benefits:
G.722 Silence Suppression is not supported with GPU transcoding.
Prior to SBC 8.0 release, for GPU-based solutions, the SBC could not offer more than one transcodable codec in the outgoing offer for following reasons:
The SBC is enhanced to offer all the configured transcodable codecs that the SBC supports, in the outgoing offer and address the above GPU gaps.
The configured codecs include:
GPU acceleration is currently supported on SBC SWe T-SBC instances on OpenStack (Newton and above). T-SBC is a component in Distributed SBC architecture that provides transcoding service.
GPU devices are attached to the SBC SWe instances through PCIe pass-through – a single GPU device can be used by only one instance at a time. The process of enabling PCIe pass-through in OpenStack is detailed later in this document. For performance considerations, NUMA locality of devices should be ensured.
NVIDIA GRID is not supported.
The following NVIDIA GPU devices are supported.
GPU Device Name | PCI Vendor ID | PCI Device ID | Releases supported | Remarks |
---|---|---|---|---|
Tesla V100 PCIe 16GB | 10DE | 1DB4 | 7.0.0 onwards | recommended |
Tesla V100 SXM2 16GB | 10DE | 1DB1 | 7.2.0 onwards |
In addition, G.711 is supported for GPU instances, but only when G.711 is being transcoded to a non-G.711 codec. You cannot currently configure transcoding from G.711 to G.711 on GPU instances. The coding rates and packetization times for the supported codecs are shown in the tables on the Audio Codecs page.
The GPU transcoding solution currently does not support more than one non-G711 transcodable codec per leg on a trunk group. Therefore when configuring Packet Service Profiles, do not configure multiple non-G711 codecs on a single leg (This Leg/Other Leg parameters) when specifying the Codecs Allowed For Transcoding within Packet To Packet Control. Refer to Packet Service Profile - CLI or Packet To Packet Control - Codecs Allowed For Transcoding (EMA).
While GPU-based T-SBCs offer marked increase in scale when compared to CPU-based T-SBCs, there are some caveats with the GPU solution that are highlighted in the following table.