Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Training a 4B model to produce 81% faster query plans than Postgres(rohanbansal.com ↗)
    23comments
  2. Vectorized and performance-portable Quicksort (2022)(googleblog.com ↗)
    21comments
  3. Xiami Mimo 2.6 Live Training Dashboard(xiaomi.com ↗)
    15comments
  4. Small programming tricks(will-keleher.com ↗)
    147comments
  5. Accurate Models of AMD Matrix Cores(arxiv.org ↗)
    5comments
  6. Reversing Factorio's RNG(gegell.github.io ↗)
    4comments
  7. How good are frontier models at physics?(arxiv.org ↗)
    6comments
  8. Dream-RSI: Recursive Self-Improvement through Evolving Worlds(arxiv.org ↗)
    47comments
  9. Tell HN: An inside view of Montana's new biotech law
    discuss
  10. Mistral X Mozilla: Private, Multilingual AI Browsing(mistral.ai ↗)
    171comments
  11. WalShadow: Sub-second Postgres replication to ClickHouse from physical WAL(clickhouse.com ↗)
    discuss
  12. Show HN: An e-ink frame that hears birds and draws them as 1800s illustrations(github.com/arnegiacomo ↗)
    231comments
  13. The Siberian Ice Maiden and the Scythian World(patrickwyman.substack.com ↗)
    discuss
  14. Tell the speakers that you liked their talks(ohhelloana.blog ↗)
    67comments
  15. Learning Programming in an Age of LLMs(ploeh.dk ↗)
    167comments
  16. macOS 27 Golden Gate: The Ars Technica Review(arstechnica.com ↗)
    1comments
  17. Show HN: Restarted – a 2026 remake of the classic 2015 startup generator(restarted.io ↗)
    discuss
  18. The DeepMind Institute(deepmind.com ↗)
    32comments
  19. Claude Cowork and chat are now one Claude(claude.com ↗)
    181comments
  20. Training Text-to-Image Models 3.6× Faster(linum.ai ↗)
    1comments
  21. How big are factorials?(thegreenplace.net ↗)
    28comments
  22. The Google Play app review process now regularly takes longer than a week(gultsch.social ↗)
    313comments
  23. Kyber (YC W23) Is Hiring a Forward Deployed Engineer(ycombinator.com ↗)
    discuss
  24. Hackers Got Inside a Flock Camera(wired.com ↗)
    190comments
  25. Why a fast-growing German AI startup is moving its parent company from the US(euronews.com ↗)
    9comments
  26. Reverse-engineered Jev-like model(github.com/vinnylarouge ↗)
    2comments
  27. Show HN: How Stale Is Your AI? Release age and training cutoff for 20 models(stale.jock.pl ↗)
    42comments
  28. Can we stop with the uptime percentages?(jim-nielsen.com ↗)
    94comments
  29. Show HN: I made a flight simulator, except you're just a passenger(inflightsimulator.com ↗)
    199comments
  30. Salesforce Global Outage(salesforce.com ↗)
    160comments

Accurate Models of AMD Matrix Cores

36 pointsby 2h agoarxiv.org
5 comments
1h agoHN ↗

"Features of matrix multipliers differ across vendors and architectures of the same vendor [...] As a result, reproducibility of small matrix multiplier results [differences] across devices is not possible and cannot be achieved by software control. Implementation details of matrix multipliers are not documented, making it difficult to interpret discrepancies in the computed results."

I'm guessing (but not knowing) that small subtle differences in matrix multiply across different vendor's architectures (and product generations of an individual vendor's architecture) is responsible for a good portion of software crashes when trying to run a local LLM on a different architecture or with a different stack (ROCm vs. CUDA, for example) than the ones it has been explicitly tested on.

As such, this marks a rather significant problem for the future, which can basically be stated as:

There needs to be a standard matrix multiply specification (much like IEEE-754 is/was for floating point operations) that all future vendors of AI accelerators (any GPU, CPU, NPU or IC manufacturer whose circuits implement matmul) adhere to, such that the matmul of one vendor is exactly and precisely compatible with the matmul of another.

Hardware vendors of course, are free to compete in terms of speed, power efficiency, number of matmul engines on a given piece of silicon, parallelization optimizations, etc., but the basic matmul operation should be exactly and precisely compatible across vendors and across future product versions.

Step 1: We need a spec for this... (Maybe IEEE is already working on one? If so, that's a good step forward!)

Step 2: Hardware vendors need to implement it, to be universally compatible in all of their IC's that use matmul, in the future...

48m agoHN ↗

Isn't the same amongst same architectures?

For instance, when I created script to train my model it worked fine on RTX 5080, but when I rented H100 to hopefully wait less for completion of training, the training would collapse just in a few epochs, suggesting they compute things differently (RTX 5080 would run thousands of epochs without collapsing. The same script and the same data).

34m agoHN ↗

is responsible for a good portion of software crashes

I doubt it's the case, it should result in slightly different logits and generated tokens, but it shouldn't lead to crashes.

I suspect what you're facing are simply driver bugs…

7m agoHN ↗

It's memory/tiling alignment issues + wrong instruction/feaatures.

7m agoHN ↗

Yep, 100%. In fact writing anything GPU co-processor related is nothing like porting CPU code. Sometimes the entire kernel needs to be rewritten outright when switching between GPU gens (of the same vendor). Things like precision et al also vary massively.

Usually these architectural differences are handled by the intermediate platform layer, which often doesn't apply if you're writing low-level kernels. Although this

I'm guessing (but not knowing) that small subtle differences in matrix multiply across different vendor's architectures (and product generations of an individual vendor's architecture) is responsible for a good portion of software crashes when trying to run a local LLM on a different architecture or with a different stack (ROCm vs. CUDA, for example) than the ones it has been explicitly tested on.

Has to do with everything else but matrix mult precision. Feature support/drivers/alignment generally causes crashes, and again, the GPU field situation is so precarious that it's 10x worse than the AVX512 segmentation in the CPU world. You basically need to microverify whether the target GPU supports a given instruction/feature.