HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
travisdowns
avx-turbo
C++2018–2018
travisdowns / avx-turbo

avx-turbo

Test the non-AVX, AVX2 and AVX-512 speeds across various active core counts

2Distinct people
2Mentions
0Explicit recommenders
231GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Test the non-AVX, AVX2 and AVX-512 speeds across various active core counts

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by hour2 dated mentions

Observed mentions: 2018-09-08 01:27:40 UTC to 2018-09-08 13:26:54 UTC.

012018-09-08 01:00:00 UTC to 2018-09-08 02:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsSep 8, 01:002018-09-08 02:00:00 UTC to 2018-09-08 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 03:00:00 UTC to 2018-09-08 04:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 04:00:00 UTC to 2018-09-08 05:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 05:00:00 UTC to 2018-09-08 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 06:00:00 UTC to 2018-09-08 07:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 07:00:00 UTC to 2018-09-08 08:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsSep 8, 07:002018-09-08 08:00:00 UTC to 2018-09-08 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 09:00:00 UTC to 2018-09-08 10:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 10:00:00 UTC to 2018-09-08 11:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 11:00:00 UTC to 2018-09-08 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 12:00:00 UTC to 2018-09-08 13:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2018-09-08 13:00:00 UTC to 2018-09-08 14:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsSep 8, 13:00

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Sep 8, 01:002018-09-08 01:00:00 UTC2018-09-08 02:00:00 UTC101
Sep 8, 02:002018-09-08 02:00:00 UTC2018-09-08 03:00:00 UTC000
Sep 8, 03:002018-09-08 03:00:00 UTC2018-09-08 04:00:00 UTC000
Sep 8, 04:002018-09-08 04:00:00 UTC2018-09-08 05:00:00 UTC000
Sep 8, 05:002018-09-08 05:00:00 UTC2018-09-08 06:00:00 UTC000
Sep 8, 06:002018-09-08 06:00:00 UTC2018-09-08 07:00:00 UTC000
Sep 8, 07:002018-09-08 07:00:00 UTC2018-09-08 08:00:00 UTC000
Sep 8, 08:002018-09-08 08:00:00 UTC2018-09-08 09:00:00 UTC000
Sep 8, 09:002018-09-08 09:00:00 UTC2018-09-08 10:00:00 UTC000
Sep 8, 10:002018-09-08 10:00:00 UTC2018-09-08 11:00:00 UTC000
Sep 8, 11:002018-09-08 11:00:00 UTC2018-09-08 12:00:00 UTC000
Sep 8, 12:002018-09-08 12:00:00 UTC2018-09-08 13:00:00 UTC000
Sep 8, 13:002018-09-08 13:00:00 UTC2018-09-08 14:00:00 UTC101

What Hacker News says

2 sources
I now wonder what should be the average ratio of heavy 512-bit was AVX512 instructions vs lighter 256-bit instructions to avoid getting into permanent L2 mode and stay at L1. One of the co-authors talks more about the exact limits here: https://www.realworldtech.com/forum/?threadid=179654&curpost... The quick answer is that on the W-2104 system he tested, you can sustain one FMA every 2 cycles while still remaining in the medium speed L1 state. His avx-turbo tool (https://github.com/travisdowns/avx-turbo) can be used to check the situation for your particular processor.
In AVX-512: when and how to use these new instructions
> Also this is just false [1]. Running AVX-512 adjusts the > BASE clock for the package. There are throttling attempts > to ensure every other core on the package throttles back. > This is a package wide effect, not a per-core effect. This was true of server CPUs before Skylake-SP, but on Skylake-SP this effect is per core. This was widely touted by Intel since it was an improvement over the old behavior. What the other cores are doing still matters since the count of "active cores" is used to look up the turbo frequency for each other core, depending on its license: but for this purpose it only matters if the others are running or halted, not _what_ they are running. If you don't believe it, I've shared a benchmark you can try yourself if you have access to Skylake server [1]. Run with --spec avx512_fma_t/1,scalar_iadd/3, for example, t
Read the rest
o kick off 1 core of heavy FMA ops in parallel with 3 cores of scalar-only ops. You'll see only the FMA core drops down to the L2 license. Light instructions include integer operations other than multiplication, logical operations, data shuffling (such as vpermw and vpermd) and so forth. > This is false according cloudflare [2] which you've > linked. They test your "light" carry less adding, > shifting, and xoring (these are the only operations > in ChaCha20 [4]). It cost too much. Again, you can test this yourself with avx-turbo [1], there are a variety of tests there that show everything except FP operations and integer multiplications (which execute on the FP unit) are treated as light. Of course, the tests aren't exhaustive, but they hit the main categories of instructions. Note that even light AVX-512 instructions cause the chip to transition to a lower frequency (the so-called L1 license, which is usually about half way between the fasted L0 and slowest L2 speed). So even if ChaCha doesn't use any heavy instructions, any AVX-512 at all will slow down your frequency. They only reported a 5% to 7% reduction in performance, which could easily be consistent with a downclock to the L1 frequency. > The literal example to show AVX-512 is good at ends > with statement that people using AVX-512 are now > actively avoiding it. I think the example is intended to show that AVX-512 indeed significantly speeds up the parts of the code where it is applied: but if that makes up a small part of your code overall, it might not be worth it, because the rest of your code may suffer a frequency penalty. Unlike some earlier ISA extensions, there is no simple answer like "use it" or "don't": there are complex tradeoffs. That's what you should get out of this article. [1] https://github.com/travisdowns/avx-turbo
In AVX-512: when and how to use these new instructions

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.