729 karma · joined September 15, 2019
This is the only sentence of your summary that accurately portrays my comment.
I do think they are investing in tactical AIs, you even see it with those new loyal wingman UAVs. But the notion that AlphaStar proves that we already have tactical AIs that outperform humans is absurd.
Now, my last argument for why alphastar wasn’t some sort of brilliant tactician was that eventually people figured out that it’s susceptible to all the same problems a normal bot is: you can dart a warp prism in and out of its vision and it will send its army back and forth, you can confuse it by going mass raven/PF etc. and it’s completely unable to adapt. So in conclusion, no: AlphaStar doesn’t say anything one way or another about military AIs.
I didn’t quite get this part. Even if your runtime has no overhead, the fastest way you can execute 1 million 10-second tasks is 10 * 1 million / num_cores, right? Why would these million tasks only take 12 sec?
The locking strategy very rarely had any reduction in parallelism due to the randomized lock-taking.
There were also other reasons, such as not wanting to replicate the filter per-thread.
What ended up being MUCH faster was to partition the filter, and to have a lock per partition. Each thread would attempt to grab a random lock, perform its inserts into that partition, then release the lock and try to grab another random lock that it hasn't grabbed yet. Granted, these locks were just atomic booleans, not std::mutex or anything like that. But I think this illustrates that partitioning+locking can be better for throughput. If you want predictable latency for single inserts, then I'd imagine the __sync_fetch_and_or strategy would work better. Which maybe brings up a broader point that this whole discussion relies a lot on exactly what "faster" means to you.
Indeed people aren’t complaining about stuff like this. My friend just bought a new Subaru that has 0 buttons. It now takes two presses on the not-very-responsive touch screen to change the power of the seat warmer. Same with all of the other environmental controls. It’s not just less tactile, it’s much slower.
Personally I appreciate having a screen of some sort for music and navigation, but for things that I’ll be changing often while driving such as environmental controls buttons are the way to go.
It's just a regex that filters out "GPT", "AI", "LLM", and "LLaMA" :)
This paper applies E-graphs to augment Datalog's reasoning/constraint solving.
I feel the same way about these other languages, but for kind of the opposite reason! I write some code in the new language and then transpile it to C in my head just to see what I expect the CPU to be doing. I'm going through SICP right now and I find myself fighting the urge to imagine `cdr` as dereferencing the `next` pointer of a linked list. I spend a lot of time worrying about this stuff when writing other languages, probably to the detriment of my productivity.
For crypto, what keywords would be good to filter? I haven't seen much crypto spam so maybe it's not a huge deal.
I’d say they already have. I have half a mind to write a HN front end that filters out any posts with the phrases “GPT”, “LLM”, and “AI”.
If you want to be fully free, you may be interested in the Raptor Talos II, which is based on OpenPOWER and has free firmware. It is pretty pricey however.
In regards to letting books get scuffed up, I must say I disagree as well. I like to keep all of my things shiny and new, and my books are no exception.
I guess I get it though, designing your own language is great fun and I’ve definitely made a couple myself in my spare time.
My interpretation was that he thinks the baseline for performance is too low. There are kind of two parts to performance: non-pessimization and optimization. He’s mostly harping on the former point, that you don’t have to go tuning anything. Just by writing code without following the clean code rules you can get a huge speed up for free, without any tuning at all. It’ll be free of obvious overheads, even if it doesn’t do anything special to fully utilize the hardware.
POSIX has mutex and condition variable, is this not enough to do those things?