Nvidia’s Vera Whitepaper Has a Thread Loose
Posted by pella 1 day ago
Comments
Comment by titzer 17 hours ago
Comment by JohnMakin 10 hours ago
Comment by rbanffy 6 hours ago
Comment by honkostani 9 hours ago
Comment by amluto 1 day ago
Maybe if “cyber” models get good enough at exploiting speculation attacks, people will start demanding equipment that is less prone to these attacks.
Comment by dzaima 19 hours ago
(doesn't help when the attack target is general-purpose/user-controlled code leaking things, but if you're relying on a process not leaking memory plainly available to it without full careful control of what the process runs, you've already been fully-SOL on that for decades and nothing has nor will nor can change about that)
Comment by amluto 14 hours ago
Comment by scotty79 16 hours ago
Comment by archipelago123 1 day ago
Attacker: Oh wait, I can run any code? I already own the machine...
Comment by samrus 20 hours ago
Comment by debugnik 22 hours ago
Any side effects from speculation machinery can easily become a side-channel to infer values across security boundaries.
Comment by twoodfin 1 day ago
That you need a whole lot of “ordinary” compute to benefit from the scaling properties of agents is the reason Nvidia is making this chip in the first place.
Comment by jcranmer 1 day ago
I also don't buy that it's a particularly representative set of tasks you might do with agents. Also included in the SPEC benchmarks are multimedia codecs, lossless data compression codecs, sqlite (i.e., database), all of which are going to be things you should easily throw into the sets of tasks an agentic workload might do. Cherry-picking just the compiler benchmarks instead of all of SPECint... again, it just raises a couple of eyebrows.
[1] To be honest, I'm kinda surprised that both gcc and llvm are in SPEC cpu2026.
Comment by fibonacci112358 1 day ago
Comment by jcranmer 1 day ago
Where compiler code is going to get really unusual, I suspect, is that compilers tend to be a little mono-focused on relatively few data structures. I know I was able to get measurable (single-digit percent!) performance differences in LLVM making very small tweaks to layout in llvm::Value. By contrast, when I was working on Thunderbird, the only similarly small change I could think to make that kind of difference would be to "oops, all string functions are now a cross-DLL call" (and even then, only because string handling is so dominant in that kind of application). Another kind of difference is that the compiler-based benchmarks are going to be quite light in virtual or indirect function calls (there's more of an emphasis on switch-based dispatching than vtable-based dispatching in most compiler implementations), which is going to make it a poorer proxy for some kinds of applications.
Comment by 14113 20 hours ago
Comment by 14113 20 hours ago
If you're solely interested in single-core performance, then I would agree that they are a good stress test, but I think for a processor that is being sold on it's parallelism, they are not a great benchmark.
Comment by adrian_b 13 hours ago
The reason is that for the other benchmarks the CPU vendors have always succeeded sooner or later, to tweak their compilers and compiling options, or even the hardware of the CPUs, in order to get improved benchmark results that nonetheless are not indicative of the improvements in other applications.
On the other hand, the compiling benchmarks, like with gcc, and now also with clang, are too diverse in CPU resource usage and no special feature of the CPU has a significantly greater weight than others, so special tricks to enhance the benchmark results have never been found.
When looking at the past SPECint results, the values of the gcc benchmark remain the most reliable relative performance estimator.
I doubt that this will change in the near future.
Moreover, the multi-threaded compiling benchmark is also very useful, because it matches exactly a real-world workload that is extremely frequently encountered. Due to the great clock frequency difference between running a benchmark on a single thread and running it on all available threads, the single-threaded results have a very poor correlation with the multi-threaded results.
Comment by lstodd 1 day ago
That is, nowhere.
Also you are wrong and anyone sizing up an arch to put their loads onto must first try that load on it and not rely on "bah, compilers compile on it".
Comment by speed_spread 1 day ago
Comment by Symmetry 16 hours ago
Comment by pjmlp 23 hours ago
Comment by wtallis 21 hours ago
Comment by hajile 15 hours ago
I'm not completely convinced of this.
If you ignore VLIW, you just have a very unexciting RISC ISA, but because of the VLIW, you get extra scheduling info that most RISC designs don't provide which might be advantageous. The real question is actually about the code density of 41-bit instructions and if it can be offset by the 128-bit package (and perhaps something like allowing new 24-bit compressed instructions).
Poulson already somewhat proved part of this as it added back a traditional frontend and even added some OoO capabilities and 4-way SMT. It wasn't earth-shattering, but it wasn't absolute garbage either.
Comment by adrian_b 12 hours ago
The Itanium ISA actually had a few nice features, but it also had other bad features that outweighed the good features. Besides the static instruction scheduling in bundles, there was also the handicap of using SPARC style register windows, which slowed-down context switches.
The second version of HP PA-RISC, which was too quickly replaced by Itanium, would have had good chances of providing superior performance in comparison with Itanium, had it not been abandoned without a fight.
Comment by pjmlp 19 hours ago
Remember, the very first Windows XP 64 bit release was on Itanium.
Comment by kjs3 13 hours ago
[1] https://archive.org/details/NT351PMZPPC
[2] https://www.techmonitor.ai/technology/undercurrent_bubbling_...
[3] Legend has it that the SPARC port existed, done by Intergraph, but for Reasons was never a product.
Comment by my123 15 hours ago
Comment by torginus 21 hours ago
The former implies per core memory bandwidth is probably not great, meaning SQLite wont perform as well, the latter meaning FP workloads are better done on the GPU, so video encoding wont be a high point. The idea is to run branchy integer workloads that fit into RAM imo, which is what these benchmarks measure.
Comment by rbanffy 6 hours ago
Benchmarking is tricky. The only one that counts is your software running the way you run it. I often run a profiler while running unit/integration tests, but I know the results will not replicate actual use - it's just a proxy, because I don't want to profile everything in production unless the profiler has almost zero cost.
Comment by KeplerBoy 22 hours ago
https://www.amd.com/en/products/processors/server/epyc/9006-...
Comment by wtallis 21 hours ago
You could try reading the footnotes, which include a link to https://www.amd.com/content/dam/amd/en/documents/solutions/a...
Comment by KeplerBoy 21 hours ago
It's marketing after all and nobody should make buying decisions based on that.
Comment by transcriptase 1 day ago
- The digital equivalent of the VW emissions scandal where drivers detected when they were being benchmarked and altering rendering for better results
- Selling GPUs as having 4gb vram when it was only 3.5gb usable, the remaining 0.5 being absurdly slower and causing performance loss when used
- Using intentionally misleading naming schemes to obfuscate things like memory bus width being drastically different between what superficially appeared to be similarly spec’d cards
A dozen other less egregious but similarly disingenuous decisions
But to be clear, I’m a huge fan and continue to run Nvidia because their products are generally incredible regardless
Comment by podocarp 17 hours ago
Comment by Dylan16807 13 hours ago
That GPU was much worse though. If that .5GB had been moderately slower it wouldn't have gotten the same attention. But because it was a weird backup path to that segment of memory, on a design that normally runs all segments in parallel, it ran at 1/7 the speed of everything else. Overflowing into it was devastating.
Comment by kjs3 13 hours ago
Comment by lostmsu 18 hours ago
Comment by davoneus 1 day ago
Comment by foota 1 day ago
Comment by dannyw 13 hours ago
I used to really enjoy Chips and Cheese's writing, not sure if they made a change.
Comment by Lvl999Noob 13 hours ago
If you say it isn't just slop, I suppose I'll push past and read it. The topic itself did seem interesting.
Comment by pjmlp 23 hours ago
Comment by brcmthrowaway 1 day ago
Comment by wmf 1 day ago
Comment by allenrb 1 day ago
That said, looks like an impressive core and complete CPU built with it. Would love to see a smaller, affordable version.
Comment by jnaina 1 day ago
They are not competing in the CPU space. Different markets.