For those of you who've been following me, You know I'm developing an AVX2 based sort that I'm running against C#'s own Array.Sort(), which is really the same as glibc's sort, std::sort etc.) and compiled in C++. It's been 6 months, so let's just say I know its perf by heart.
-
-
Prikaži ovu nit
-
Here's what it looked like Yesterday, vs. Today: Those of you with keen eye-sight can immediately tell that something is awfully wrong here.... Array.Sort() is 20% (!) slower when sorting 10M numbers for example...pic.twitter.com/Yawb5JgNML
Prikaži ovu nit -
Note the while my own code happens to run roughly as fast as before, while Array.Sort(), compiled down to machine code in C++ is really not having a good time. This is probably a good time to mention I'm on clearlinux which is a very bleeding edge Linux distro from Intel.
Prikaži ovu nit -
Here's a snippet from my /proc/cpuinfo: Yesterday: model: 158 model name: Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz stepping: 9 microcode: 0xb4 Today: model: 158 model name: Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz stepping: 9 microcode: 0xc6
Prikaži ovu nit -
As you can see, I was blessed with microcode revision 0xc6. Apparently, Intel are about to release a new μcode update, that I got slightly earlier than you rest. This one, unlike previous ones, doesn't just affect syscalls, but is a tad more invasive: https://www.intel.com/content/dam/support/us/en/documents/processors/mitigations-jump-conditional-code-erratum.pdf …pic.twitter.com/cjEWjTPMit
Prikaži ovu nit -
Now, I happen to have gotten this update a tad earlier than the rest of you, since clearlinux is already been completely recompiled against this errata with a new patched up compiler that attempts to avoid placing conditional jumps around 32-byte boundaries. But:
Prikaži ovu nit -
* 3rd party binaries are going to get a major penalty (Like CoreCLR in this case). * JITs (C#, JVM, Chrome, NodeJS) need to be updated and patched pronto to not generate conditional jumps on said boundaries, or suffer the consequences. Also:
Prikaži ovu nit -
And we're all doomed. Have a nice day. From your friends in Damage industries...
Prikaži ovu nit
Kraj razgovora
Novi razgovor -
-
-
Mickens is always relevant to everything and anything :)
- Još 2 druga odgovora
Novi razgovor
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.