What is a teraflop?


Bonus: The new Mac Pro has graphics with up to 56 teraflops of computing power, how is that different from a small supercomputer with 56 teraflops

In: Technology

Tera is short for

Flops is Short for „how often in a second can you do math with numbers with a comma?“

A teraflop means: This device can under good circumstances do this much math with commas per second

It is a measure of how fast a device can do this job.

Bonus: A graphics Card as in the Mac is an expert in doing this all the time with a lot of numbers at the same time. Geometry and something called linear algebra needs this all the time, which is what we need to have for nice computer pictures.

A supercomputer can do this too, but it is not an expert device. It can do many other things better than a graphics card, for example sorting things, following complicated rules, etc. Teraflops are not a good measure for comparing devices with different usages.

A floating point number is a number with a decimal in it.

1.1 is a floating point number.

1.1 * 2.1 is a floating point operation that gives the value 2.31.

A “flop” is a floating point operation per second.

A “teraflop” is thus a trillion floating point operations per second.

And the difference between the new Mac Pro and a small super computer is that the small super computer will have a far more reasonable cost per teraflop than anything Apple will ever make.

Graphics processing needs a lot of computation but a fairly small set relative to a general purpose computing device.

So it is “easier” to get high performance graphics that can boast of high teraflops because most of the hardware is optimized for only the computation needed.

FLOPS is an acronym – it stands for Floating Point Operations Per Second. It’s a measurement for how fast something can do floating point math.

Keep in mind, 56 Teraflops is impressive for a desktop machine – a Radeon RX Vega video card does 11-14 Teraflops. However, a top supercomputer in 2004 (the IBM Blue Gene) was performing at 70.72 Teraflops. The top supercomputer today, the IBM Summit, runs at 200 petaflops – that’s 200,000 Teraflops.

As others have explained, FLOPS is FLoating point OPerations per Second, TeraFLOPS is trillion(tera) FLoating point OPerations per second. This weird name comes from the more common IPS or MIPS for more modern chips which is Instructions per Second and Million Instructions Per Second and are just a way of setting two processors to do a specific task and ending up with a single number at the end that you can compare them by.

56 Teraflops is pretty good for a modern system, almost all of that is from the Graphics card which is really really good at floating point operations. Back in the year 2000 getting your hands on a teraflop of processing power would have cost you close to $1M, now you can get it in any GPU really.

So how does it compare to a small supercomputer?

First, a small supercomputer is an array of computers that only takes up a few thousand square feet and *only* consumes about 1 MW of power, or as much as 72 homes… Its something like [Clemson’s Palmetto Cluster](https://www.palmetto.clemson.edu/palmetto/userguide_palmetto_overview.html) which is the 412th fastest super computer in the world right now. It draws 587 kW of power, has 30,000 cores, and puts out 1017 TeraFlops which is 200x more than the new Mac Pro.

A big super computer is something like [Summit](https://en.wikipedia.org/wiki/Summit_(supercomputer)) which takes ~10 MW to run its 2,397,824 cores(yes, over 2 million) and puts out over 140,000 Teraflops

The new Mac Pro is pretty strong, but a good super computer would have hundreds or thousands of them networked together in order to do its job properly

Plenty of people have defined flops, so I won’t re-explain that.

But the main differences between a 56-teraflop GPU (Graphics Processing Unit) and a 56-teraflop supercomputer are, among others:

* GPUs are a bunch of tiny processors working at the same time; that’s a good strategy for doing things with graphics, but there are a lot of problems that can’t be solved with that strategy. A supercomputer will be a lot better at those problems, because it’s using fast individual processors rather than a bunch of less-fast processors at the same time.

* For a lot of tasks, how fast you can get data to and from the processor matters a lot. A lot of what makes supercomputers fast is that the data exchanges between components are screamingly fast compared to what your desktop/etc. can handle.

However, for some tasks — things that are large numbers of discrete operations, like 3D modeling or protein folding or the like — they’re pretty comparable. Scientific tasks that are well-suited to that kind of processing are already run on farms of PCs with fast GPUs instead of supercomputers, because it costs a lot less per teraflop to do it that way. But there are still a lot of analysis tasks that don’t work well in that sort of system, and that’s why people still buy supercomputers.