CPU Tests: Encoding

One of the interesting elements on modern processors is encoding performance. This covers two main areas: encryption/decryption for secure data transfer, and video transcoding from one video format to another.

In the encrypt/decrypt scenario, how data is transferred and by what mechanism is pertinent to on-the-fly encryption of sensitive data - a process by which more modern devices are leaning to for software security.

Video transcoding as a tool to adjust the quality, file size and resolution of a video file has boomed in recent years, such as providing the optimum video for devices before consumption, or for game streamers who are wanting to upload the output from their video camera in real-time. As we move into live 3D video, this task will only get more strenuous, and it turns out that the performance of certain algorithms is a function of the input/output of the content.

HandBrake 1.32: Link

Video transcoding (both encode and decode) is a hot topic in performance metrics as more and more content is being created. First consideration is the standard in which the video is encoded, which can be lossless or lossy, trade performance for file-size, trade quality for file-size, or all of the above can increase encoding rates to help accelerate decoding rates. Alongside Google's favorite codecs, VP9 and AV1, there are others that are prominent: H264, the older codec, is practically everywhere and is designed to be optimized for 1080p video, and HEVC (or H.265) that is aimed to provide the same quality as H264 but at a lower file-size (or better quality for the same size). HEVC is important as 4K is streamed over the air, meaning less bits need to be transferred for the same quality content. There are other codecs coming to market designed for specific use cases all the time.

Handbrake is a favored tool for transcoding, with the later versions using copious amounts of newer APIs to take advantage of co-processors, like GPUs. It is available on Windows via an interface or can be accessed through the command-line, with the latter making our testing easier, with a redirection operator for the console output.

We take the compiled version of this 16-minute YouTube video about Russian CPUs at 1080p30 h264 and convert into three different files: (1) 480p30 ‘Discord’, (2) 720p30 ‘YouTube’, and (3) 4K60 HEVC.

(5-1a) Handbrake 1.3.2, 1080p30 H264 to 480p Discord(5-1b) Handbrake 1.3.2, 1080p30 H264 to 720p YouTube(5-1c) Handbrake 1.3.2, 1080p30 H264 to 4K60 HEVC

For the lower resolution modes, it would appear that the increased memory bandwidth plays a role for the 3995WX and 7742, although single core frequency also means a lot. Moving to the HEVC metrics, the Ryzen 9 takes a win here, but the 3995WX still goes above the 3990X.

7-Zip 1900: Link

The first compression benchmark tool we use is the open-source 7-zip, which typically offers good scaling across multiple cores. 7-zip is the compression tool most cited by readers as one they would rather see benchmarks on, and the program includes a built-in benchmark tool for both compression and decompression.


Example Test Run on an Intel 10-core i7-6950X

The tool can either be run from inside the software or through the command line. We take the latter route as it is easier to automate, obtain results, and put through our process. The command line flags available offer an option for repeated runs, and the output provides the average automatically through the console. We direct this output into a text file and regex the required values for compression, decompression, and a combined score.

(5-2c) 7-Zip 1900 Combined Score

This is a 16.6% win for the TR Pro 3995WX.

AES Encoding

Algorithms using AES coding have spread far and wide as a ubiquitous tool for encryption. Again, this is another CPU limited test, and modern CPUs have special AES pathways to accelerate their performance. We often see scaling in both frequency and cores with this benchmark. We use the latest version of TrueCrypt and run its benchmark mode over 1GB of in-DRAM data. Results shown are the GB/s average of encryption and decryption.

(5-3) AES Encoding

WinRAR 5.90: Link

For the 2020 test suite, we move to the latest version of WinRAR in our compression test. WinRAR in some quarters is more user friendly that 7-Zip, hence its inclusion. Rather than use a benchmark mode as we did with 7-Zip, here we take a set of files representative of a generic stack

  • 33 video files , each 30 seconds, in 1.37 GB,
  • 2834 smaller website files in 370 folders in 150 MB,
  • 100 Beat Saber music tracks and input files, for 451 MB

This is a mixture of compressible and incompressible formats. The results shown are the time taken to encode the file. Due to DRAM caching, we run the test for 20 minutes times and take the average of the last five runs when the benchmark is in a steady state.

For automation, we use AHK’s internal timing tools from initiating the workload until the window closes signifying the end. This means the results are contained within AHK, with an average of the last 5 results being easy enough to calculate.

(5-4) WinRAR 5.90 Test, 3477 files, 1.96 GB

WinRAR is variable threaded, but the Xeon Gold takes the win here - even compared to the Xeon W-3175X. It's all relatively close at the top end.

CPU Tests: Rendering CPU Tests: Office and Science
Comments Locked

118 Comments

View All Comments

  • Oxford Guy - Friday, February 12, 2021 - link

    Bulldozer was indeed particularly awful. Abstract names like Xeon are generally less annoying than misapplied real-world names.
  • Qasar - Friday, February 12, 2021 - link

    too bad bulldozer and netburst were code names for the architecture, and not marketing names like xeon and threadripper.
  • GeoffreyA - Saturday, February 13, 2021 - link

    You're right, but even FX and Phenom were in poorer taste than Athlon, which was sheer gold, I'd say. Is Threadripper good or bad as a name? What I say, or anyone else here says, doesn't matter. Only from a survey can we get a better picture, and even there it's a reflection of popular opinion, a blunt instrument, often misled by the times.

    Is there a standard of excellence, a mode of naming so tuned to the genius of the language that it never changes? It's evident to everyone that "Interstellar" sounds better than "Invisible Invaders from Outer Space," but we could be wrong and time only can decide the matter. If, in 500 years, people still get a shiver when they hear Interstellar, we'll know that Nolan named his film right.

    Back to the topic. I think the spirit of Oxford Guy's comment was: TR and Epyc aren't that good names (which I partly agree with). Whether it inspires confidence in professionals is a different matter. A professional might be an expert in their field but it doesn't mean they're an expert on good names (and I'm not claiming I am one either). It matters little: if the target demographic buys, AMD's bank account smiles. But it's a fair question to ask, apart from sales, is a name good or bad? Which were the best? Does it sound beautiful?Names, in themselves, are pleasurable to many people.
  • jospoortvliet - Saturday, February 13, 2021 - link

    Names should have a few properties if they are to be good.
    Easy to pronounce (cross-culturally!)
    Easy to remember (distinctive)
    Not (too) silly/funny
    Bonus: have some (clever) relation to the actual product.

    Threadripper certainly earns the bonus but might arguably perhaps maybe lose out on the 3rd ‘silly’ point. However, in that regards i would argue it makes a difference how well it fulfills that rather ambitious title, and as we all know the answer is “very well”. Now if threadripper was a mediocre product, not at all living up to its name, I’d judge different but as it stands I would say it is a brilliant name.
  • GeoffreyA - Saturday, February 13, 2021 - link

    Good breakdown that, to test names against. Simplicity, too, wins the day.
  • GeoffreyA - Saturday, February 13, 2021 - link

    "Bulldozer was indeed particularly awful"

    One of the worst. AMD's place names were good in the K8 era, and the painter ones are doing a good job too.
  • danjw - Saturday, February 13, 2021 - link

    You may not be aware of this, but Threadripper, is actually comes from the 80's fashion fad of ripped clothing. ;-)
  • GeoffreyA - Saturday, February 13, 2021 - link

    Well, I like it even more then, being a fan of the 80s.
  • Hulk - Tuesday, February 9, 2021 - link

    Is the difference in output quality strictly due to rounding/numerical errors when using GPU vs CPU or are there differences in the computational algorithms that calculate the numbers?
  • Kjella - Tuesday, February 9, 2021 - link

    Not in terms of color accuracy, not a problem making 10/12 bit non-linear color from 32 bit linear - even 16 bit is probably near perfect. But for physics engines, ray tracing etc. errors can compound a lot - imagine a beam of light hitting a reflective surface where fractions of a degree means the light bounces in a completely different direction. Or you're modelling a long chain of events that cause compounding errors, or the sum of a million small effects or whatever. But it can also just be that the algorithms are a bit "lazy" and expect everything to fit because they got 64 bits to play with. I doubt that much needs ~1.0000000001 precision, much less ~1.0000000000000000001.

Log in

Don't have an account? Sign up now