What Is Rapid Packed Math and How Does It Make 'Far Cry 5' Better?

Radeon's RX Vega will make extreme gaming more ... extreme.

Aug 2 2017, 11:00am

Ubisoft

It's kind of funny. If you hang out around people that are way into GPU technology you probably won't hear a whole lot of talk about actual graphics. Or games.

This is mostly thanks to a nice coincidence. The kinds of computations that are optimized by GPU architectures—massively parallel computations, namely—are also demanded by cutting-edge machine learning algorithms, such as those used for visual object recognition.

AMD's Vega architecture is, however, targeted right at gamers, particularly those gamers interested in running every video game at its maximum possible graphics potential. For this crew, no ordinary GPU will suffice. This week at the annual SIGGRAPH conference, AMD unveiled the next iteration of GPUs, the Radeon RX Vega line. The baseline retail price for a low-end RX Vega is \$399.

New to the Vega architecture is this thing called Rapid Packed Math. The video above explains it simply as a way to sneak in two computations where normally only one could take place. Sort of.

A presentation this past spring explained further. Rapid Packed Math is a way of better optimizing computations of varying precision. Imagine that you had a calculator that can handle numbers four digits long, but you had a bunch of computations to do with numbers that are only two digits long. Every time you did those smaller computations, you'd in a sense be wasting the potential of the calculator. A calculator leveraging something like Rapid Packed Math, however, would instead be able to do two two-digit computations at once, essentially "packing" both together in a way that the four-digit calculator can handle.

So, if all of your computations were two-digit computations, you could imagine a two-times speedup. This naturally goes down once you start mixing in actual four-digit calculations, which don't see any speedup.

Basically, in the Vega architecture, we just swap out 32 bits for four digits, and 16 bits for two digits and there you have it. It's one of those ideas that seems both really obvious and really clever at the same time.