Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
anematode
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
211.
▲
by
anematode
10mo ago
The parents you talk about just seem like assholes. > Those advocates with low support needs are the ones that are actually making an attempt to give those high support needs a voice. Having low-support-needs autism is neither necessary
212.
▲
by
anematode
10mo ago
Even syntactically, TS is not a superset of JS: https://anemato.de/blog/js-to-ts
213.
▲
by
anematode
10mo ago
It's the specter of a lawsuit that's the problem.
214.
▲
by
anematode
11mo ago
Love Scala! One of my favorite high school memories is putting Scala files into a DAW and hooking it up to an electric piano, so that my piano teacher and I could play around with different tunings.
215.
▲
by
anematode
11mo ago
I'd love if this could make it into Rust... but I'm wondering if it'd be a bit of a burden on the creators of alternative backends (e.g. Cranelift), since if they implemented it naively, they would be unsuitable for compiling
216.
▲
by
anematode
11mo ago
The solution is always another macro :) #define ct_select __builtin_ct_select
217.
▲
by
anematode
11mo ago
It's fixed if you pass -fno-trapping-math. There could be junk in the upper half of the registers that causes a floating-point exception.
218.
▲
by
anematode
11mo ago
Love this! Some years ago I made an online demo for complex domain coloring, which is related to this idea: https://anematode.github.io/grapheme-math/demo/domain_colori...
219.
▲
by
anematode
11mo ago
Great post. I wonder whether profile-guided optimization would have led LLVM to select a better (or worse) decision.
220.
▲
Fishtest
(tests.stockfishchess.org)
2 points
by
anematode
1y ago
|
0 comments
221.
▲
by
anematode
1y ago
Starting contributing to Stockfish, the little-known chess engine :)
222.
▲
by
anematode
1y ago
Besides the potential typo noted by another comment, I'd also note that the benchmarks are on a WebAssembly compiler, which has already gone through the LLVM wringer and thus undergone many high-level optimizations, including those rel
223.
▲
by
anematode
1y ago
Cool :) Feel free to reach out as well. I should note that that link is optimized for variable lengths and offsets -- if your lengths and offsets are constant then it can be much more efficient and I'd expect rustc/LLVM to nail
224.
▲
by
anematode
1y ago
I don't think there's a single instruction to do this, but you could probably do it with a combination of shld + bzhi + cmov. rustc already seems to do a great job, and whatever I could come up with that assumes [src, src + len] i
225.
▲
by
anematode
1y ago
Sure, no doubt a non-atomic load would be dangerous to write in C, C++, or Rust rather than in assembly
226.
▲
by
anematode
1y ago
Thanks for your insights. (2) makes sense to me, but for (1), on ARM64 can an aligned 64-bit store really tear in a 64-bit non-atomic load? The spec says "A write that is generated by a store instruction that stores a single general-pu
227.
▲
by
anematode
1y ago
With a relaxed ordering I'm not sure if that's right, since the ldumax would have no imposed ordering relation with the (atomic) decrement on another thread and so could very well have operated on the old value obtained by the non
228.
▲
by
anematode
1y ago
I did a little unscientific test here on an Apple M4 Pro with n threads spamming atomic operations with pseudorandom values on one memory location (the worst case). Used inline asm to make sure there was no funny business going on. atom
229.
▲
by
anematode
1y ago
Curious: even with hardware atomics, wouldn't it be a good idea to first perform a non-atomic load to check for whether the store might be necessary (which would require the cache line to be locked), then only run the atomic max if it
230.
▲
by
anematode
1y ago
Great article :)
231.
▲
by
anematode
1y ago
Unfortunately even the RTX 6000 Pro has nerfed double-precision throughput at about 2 TFLOPS, 64x slower than single precision. For comparison an EPYC 9755 does ~10 TFLOPS, while drawing less power. An A100 -- if you can find one -- is in t
232.
▲
by
anematode
1y ago
The latest incident was detected first by an individual researcher (haven't verified this myself, but trusting you here) -- or maybe s/he was just the fastest reporter in the west. Even simple heuristics like the sudden addition
233.
▲
by
anematode
1y ago
I think it would be silly to not proceed with the migration, although hopefully there's less stress to do it quickly. Slack has shown they can't be trusted.
234.
▲
by
anematode
1y ago
A lot of people will still use npm, so they'll be the canaries in the coal mine :) More seriously, automated scanners seem to do a good job already of finding malicious packages. It's a wonder that npm themselves haven't alre
235.
▲
by
anematode
1y ago
KASLR is broken anyway, at least on x86, even with KPTI (a Linux feature to mitigate Meltdown) enabled. See https://www.willsroot.io/2022/12/entrybleed.html , which still runs fine (with some modifications dependin
236.
▲
Quantum Chess
(q-chess.com)
1 points
by
anematode
1y ago
|
0 comments
237.
▲
by
anematode
1y ago
Consulted with Will to see exactly what he did and fixed, thx!
238.
▲
by
anematode
1y ago
Ye, hence a separate version for CPUs which don't have that problem. Although, maintaining so many of these RSA kernels does seem like a pain. Didn't realize u wrote that code; super cool that it's used in practice!
239.
▲
by
anematode
1y ago
Ooh interesting, I should have looked at this while developing.... Looks like that code could definitely use another version for e.g. Zen 5 where using zmm registers would lead to a 2x multiplication throughput. Also the mask registers are
240.
▲
by
anematode
1y ago
fixed :) thx
More ›