Live data from Hacker News

Viewing profile — simonbyrne

simonbyrne

HN member
Joined
Thu, Mar 27, 2014, 7:03 PM UTC
HN karma
680
Public activity
212 items

About simonbyrne

https://github.com/simonbyrne

Recent public activity

  1. comment
    Comment #29909394

    If that's seriously what you're looking for, you should really consider Fortran. There is a reason it is still very widely used in scientific domains.

  2. comment
    Comment #29372400

    You can just wrap the literal in a conversion function, eg Float32(0x1p52), which should get constant propagated at compile time.

  3. comment
    Comment #29213280

    That's fascinating thread, thanks: https://github.com/WebAssembly/design/issues/148

  4. comment
    Comment #29205125

    Do you know what happens when you have ops with different flags? e.g. if you have (a + b) + c, where one + allows reassoc but one doesn't?

  5. comment
    Comment #29204191

    From personal experience, yes: I've seen multiple cases of scientists finding the ultimate cause of their bugs was some fast-math-related optimization. The problem isn't necessaril…

  6. comment
    Comment #29204128

    I tried to lay out a reasonable path: incrementally test accuracy and performance, and only enable the necessary optimizations to get the desired performance. Good tests will catch…

  7. comment
    Comment #29204079

    I'm not exactly sure what you're asking here, but the point is that "to machine precision" is relative: if f(x) and g(x) are O(1e200), then the absolute error of each is still O(1e…

  8. comment
    Comment #29203474

    The key thing about floating point is that it maintains relative accuracy: in your case, if you have say f(x) and g(x) are both O(1e200), and are correct to some small relative tol…

  9. comment
    Comment #29203222

    Herbie is a great tool, especially for teaching.

  10. comment
    Comment #29202642

    In theory, every function should do that to check things like rounding mode etc. But that would be pretty slow, especially for low-latency operations (modifying mxcsr will disrupt …

  11. comment
    Comment #29202468

    -ffp-contract=fast will enable FMA contraction, i.e. replacing a * b + c with fma(a,b,c). This is generally okay, but there are a few cases where it can cause problems: the canonic…

  12. comment
    Comment #29202349

    My point isn't that fast-math isn't useful: it very much is. The problem is that it is a whole grab bag of things that can do very dangerous things. Rather than using a sledgehamme…

  13. comment
    Comment #29202291

    Not necessarily: if your cospi(x) function is always returning 1.0 ( https://github.com/JuliaLang/julia/issues/30073#issuecomment... ), but you wrote your code assuming the result …

  14. story
  15. comment
    Comment #28222321

    > But then people latched on to the idea that it was caused by some kind of sonic device or hitherto unknown weapon targeting embassies. Possibly prompted by historical precedent: …

  16. comment
    Comment #23835560

    One of the interesting things about the 80-bit format was that allowed the use of 64-bit integers on a 16 or 32-bit machine. This was what Thomas Nicely was using them for when he …

  17. comment
    Comment #22292834

    > or wait for optimizations to be done, e.g have pandas, numpy etc handle multi-core processors etc ? All those exist already. Indeed, other than DataFrames.jl (the pandas equivale…

  18. comment
    Comment #21597064

    I disagree about practical and accessible: - its exposition is complicated (trying to prove everything in a general base makes it difficult to understand) - it's woefully out of da…

  19. comment
    Comment #21581430

    Deep learning is the obvious answer: 10 years ago it was largely confined to a small number of research groups and niche conferences.

  20. comment
    Comment #21575799

    Thank you! The Goldberg article is a terrible way to learn about floating point, and the frequency with which it is referred to on StackOverflow is really disheartening.

  21. comment
    Comment #20494109

    I seem to recall that part of the DoE's selection criteria is to ensure a competitive market for future contracts (since they will always be buying more supercomputers). Given the …

  22. comment
    Comment #20453959

    Additionally the language and penalties for fare evasion often don't match that of say parking tickets, which I would put as roughly similar in terms of moral violations (i.e. taki…

  23. comment
    Comment #20271369

    Not to mention a Cray 1 used 115kW: the new raspberry pi uses 7W peak.

  24. comment
    Comment #19963152

    It's difficult to examine his comments without historical context: I haven't dealt with any code from that era, but there is still plenty of Fortran 77 code from ~20 years later wh…

  25. comment
    Comment #19815459

    Am I missing something? Other than the doc generator (which is in Python), none of the repos have been touched for a year or so.