• Wowza Transcoder performance benchmark

    Wowza Transcoder in Wowza media server software offers both accelerated and un-accelerated video encoding, depending on your hardware configuration. This article presents the latest performance benchmark numbers captured for software (Default) encoding, Intel Quick Sync ("Haswell / Skylake") accelerated encoding, and NVIDIA NVENC accelerated encoding. These numbers are for guidance only and your results may vary depending on network traffic, source file composition, configuration, overall operating system overhead, and so on.

    Notes:
    • Wowza Streaming Engine™ software or Wowza Media Server™ software (version 3) is required.

    • For information about how to measure the transcoding benchmarks for your Wowza Streaming Engine configuration, see How to capture Wowza Transcoder benchmark statistics.

    • Important: NVIDIA CUDA encoding acceleration isn't supported in the latest NVIDIA graphics drivers (340 and later). CUDA-based accelerated encoding is NOT supported in Wowza Streaming Engine 4.1.2 and later.

    • Wowza also provides Transcoder benchmarks for earlier versions of the Wowza media server software. See Wowza Transcoder performance benchmark archive.

    Overview


    All tests were conducted using the methodology of incrementally transcoding incoming video streams until the Wowza media server reached approximately 65 percent CPU utilization. We recommend that when running in a production environment, the transcoding operation not consume more than 50-55 percent of the total CPU resources of the server computer. This will leave sufficient CPU resources available for streaming the transcoded streams.

    Notes:
    • It is possible, especially with VMs, for GPU resources to deplete before the CPU. This is the reason some of the results do not include testing up to 65 percent of CPU utilization.

    • Before executing the tests, the test servers were tuned using the Performance Tuning guidelines.

    Test servers


    Server 1


    • Processor: Single Intel Xeon CPU E3-1285 V3 @ 3.60GHz
    • Cores/Threads: 4/8
    • Memory: 32 GB
    • Motherboard: Supermicro X10SAE
    • OS: Linux (64-bit)
    • Java: Java 8 (64-bit)
    • GPU/Acceleration: Built-in HD4600 with Intel Quick Sync (Haswell)

    Server 2


    • Processor: Single Intel Xeon CPU E3-1285 V3 @ 3.60GHz
    • Cores/Threads: 4/8
    • Memory: 32 GB
    • Motherboard: Supermicro X10SAE
    • OS: Linux (64-bit)
    • Java: Java 8 (64-bit)
    • GPU/Acceleration: NVIDIA Quadro M5000

    Server 3


    • Processor: Single i7 6700k @ 4.0GHz
    • Cores/Threads: 4/8
    • Memory: 16 GB
    • Motherboard: Supermicro X10SAE
    • OS: Windows 10(64-bit)
    • Java: Java 8 (64-bit)
    • GPU/Acceleration: Built-in HD4600 with Intel Quick Sync (Skylake)

    Server 4


    • Processor: Single i7 6700k @ 4.0GHz
    • Cores/Threads: 4/8
    • Memory: 16 GB
    • Motherboard: Supermicro X10SAE
    • OS: Windows 10 (64-bit)
    • Java: Java 8 (64-bit)
    • GPU/Acceleration: NVIDIA Quadro M4000

    Server 5


    • EC2 Instance: AWS G2 2.2xlarge
    • Cores/Threads: 12/24
    • Memory: 32 GB
    • 8 EC2 Compute Units: 4 virtual cores with 2 EC2 Compute Units each
    • OS: Amazon Linux
    • Java: Java 8 (64-bit)
    • EC2 Instance:G2 2.2xlarge
    • GPU/Acceleration: NVENC

    Server 6


    • EC2 Instance: AWS G2 2.8xlarge
    • Cores/Threads: 12/24
    • Memory: 32 GB
    • 8 EC2 Compute Units: 4 virtual cores with 2 EC2 Compute Units each
    • OS: Amazon Linux
    • Java: Java 8 (64-bit)
    • EC2 Instance:G2 2.8xlarge
    • GPU/Acceleration: NVENC

    Server 7


    • EC2 Instance: AWS C4.8xlarge
    • Memory: 15 GB
    • 8 EC2 Compute Units: 4 virtual cores with 2 EC2 Compute Units each
    • Java: Java 7 (64-bit)
    • OS: Amazon Linux
    • EC2 Instance:C4.8xlarge
    • GPU/Acceleration: None

    Server 8


    • Azure: Azure-D4-v2
    • Memory: 60 GB
    • 20 EC2 Compute Units: 32 virtual cores with 3.37 EC2 Compute Units each
    • Java: Java 7 (64-bit)
    • OS: Azure Linux
    • Instance Type: Azure-D4-v2
    • GPU/Acceleration: None

    Server 9


    • Google: GCP-n1-highcpu-32
    • Memory: 60 GB
    • 20 EC2 Compute Units: 32 virtual cores with 3.37 EC2 Compute Units each
    • Java: Java 7 (64-bit)
    • OS: Google Linux
    • EC2 AMI: GCP-n1-hoghcpu-32
    • GPU/Acceleration: None

    Input test stream


    Transrate 720p


    • Video Codec: H.264
    • Video Frame Size: 1280x720
    • Video Frame Rate: 24 fps
    • Video Bitrate: 5.588 Mbps

    • Audio Codec: AAC
    • Audio Sample Rate: 48 kHz
    • Audio Channels: Stereo
    • Audio Bitrate: 97 kbps

    Transrate 1080p


    • Video Codec: H.264
    • Video Frame Size: 1920x1080
    • Video Frame Rate: 24 fps
    • Video Bitrate: 9.7208 Mbps

    • Audio Codec: AAC
    • Audio Sample Rate: 48 kHz
    • Audio Channels: Stereo
    • Audio Bitrate: 97 kbps

    Transcode


    • Video Codec: MPEG-2
    • Video Frame Size: 1280x720
    • Video Frame Rate: 23.98 fps
    • Video Bitrate: 3.0 Mbps

    • Audio Codec: MPEG-1 Layer 2
    • Audio Sample Rate: 48 kHz
    • Audio Channels: Stereo
    • Audio Bitrate: 128 kbps


    Transrate 720p


    To view the Transcoder benchmark results for an incoming 720p stream transcoded with the Transrate template, see Wowza Transcoder Benchmarks: Transrate 720p.

    Transrate 1080p


    To view the Transcoder benchmark results for an incoming 1080p stream transcoded with the Transrate template, see Wowza Transcoder Benchmarks: Transrate 1080p.

    Transcode 720p


    To view the Transcoder benchmark results for an incoming 720p stream transcoded with the Transcode template, see Wowza Transcoder Benchmarks: Transcode 720p.



    Originally Published: 10-10-2011.
    Updated: For Wowza Streaming Engine 4.4.1 on 06-30-2016.

    If you're having problems or want to discuss this article, post in our forum.