Single pumped AVX512 can still be a lot more effective than double pumped AVX2.
AVX512 has 2048 bytes of named registers; AVX2 has 512 bytes. AVX512 uses out of band registers for masking, AVX2 uses in band mask registers. AVX512 has better options for swizzling values around. All (almost all?) AVX512 instructions have masked variants, allowing you to combine an operation and a subsequent mask operation into a single operation.
Often times I'll write the AVX512 version first, and go to write the AVX2 version, and a lot of the special sauce that made the AVX512 version good doesn't work in AVX2 and it's real awkward to get the same thing done.
"A $30 million mess-up" can look like (at least) two things. It can be $30 million was spent on a project that earned $0 revenue and was ultimately canceled, or it can look like $x was spent on a project to win a $30 million contract but a competitor won the contract instead.
Every inside contributor (besides the original author) started as an outside contributor. If the solution to the problem of LLMs is a blanket ban on outside contributors, I fear for the future of open source.
I can’t believe I’m chiming in on HN about work pants…
The B01 are the only pants still Union made in the USA. AFAIK they still are durable as hell, I’m wearing them now.
The rest (mostly stretchy but some normal ‘washed’ duck) are imported and the quality is traded for fashion/lifestyle
These are light rail/tram tracks, not railroad tracks. The road is the same type of road that you normally drive up, they just have train tracks embedded in the road surface, signs telling you not to drive there, and every now and then a tram drives along it.
Functionally, they're no different than bus lanes or a wide shoulder. Humans drive on them all the time, because there's no traffic on them and they can get to where they're going faster. They shouldn't, it's illegal, and they can get ticketed for it, but they do it anyway. If you load up google street view in Phoenix/Tempe/Gilbert you can see a few people driving on them.
Okay, so this is tracks embedded in and parallel with road surface, not tracks with cross-ties, sitting on ballast. That’s a bit more understandable, then.
I think it's great that there are Linux projects where the people in the project are obviously unhinged fanatical idealists sent on a mission by god to do <whatever> in the One True Way. I wouldn't use any of those projects, but it's great that they exist, and sometimes their good ideas percolate out to projects that I do use.
Like fine, they're gonna make a distro that only uses software under one of the FSF's free as in freedom copy-left open source licenses, not just excluding closed source software, but also binary blob device firmware and software distributed under one of those filthy permissive licenses. That's great. It's fucking unusable, but it's awesome that it exists and it's great that they're doing it.
Curious to hear which good ideas had their origin in a distro run by fanatical idealists. Not asking for evidence to try and disprove you. Genuinely curious!
Framing it as "fanatical" is a way of not understanding people's needs sometimes and that makes it harder for oneself to admit when they got it right - after all you don't want to find that you've turned into "a fanatic."
I like rolling distributions. Fedora was my longtime ship and at the beginning it was a pain because I always wanted to build something that wasn't available - the newest version of something like python. Then you wouldn't be able to build it because it had dependencies that needed to be newer also than what Fedora had.
I spent countless hours sorting out dependencies, clashes with the versions that were already installed that I couldn't remove, building and rebuilding things to keep them working and fixing @#$%@ SELinux permissions issues that made things fail extremely mysteriously. I tried making my own updated RPMs to ease the dependency management but that turned out to be so hard to do that I gave up in frustration - some tiny mistake and you have to go through almost the whole process again to get an updated RPM. One would have mysterious failures in the RPM build process that were extremely difficult to debug.
Then RedHat fixed the problem in an even worse way: by releasing new versions at a crazy rate. The upgrade process never seems to go smoothly for me.
Ubuntu was/is more uptodate generally but it's based on exactly the same strategy. Packaging on Ubuntu seems to me to be an even more incredible mess of confusion with documentation that doesn't help one iota.
I tried various things but the one that stuck with me was Artix. It's rolling and it sometimes breaks e.g. today when the new nvidia 590 drivers installed and they don't work with my old card. The upside is that it's always at the bleeding edge and I rarely need to build things myself - and if I do I usually already have the required dependencies. Packages also install with all the development headers etc and for me that is just a luxurious simplicity. I could also understand the PKGBUILD files and use makepkg without even needing to see the documentation. It just works.
It also doesn't use systemd. That's a preference you might call fanatical but I did after all get off windows to use Linux partly so that "the man" wouldn't tell me what to like so why would I accept that kind of thing on Linux? I use dinit instead and that is what I would have liked systemd to be - a service manager with a simple file format that is a million times easier to write and more reliable than system V init scripts and the ability to use it for running things in a user session as well .... and nothing else.
Anyhow this is all driven by my personality - I like trying out new things. I'm not fantatical, I think?? My computer is a toy for my mind. My work machines can be "reliable."
A tiny yellow dot on white paper is basically invisible to the human eye. Yellow ink absorbs blue light and no other light, and human vision is crap at resolving blue details.
A tiny black dot on white paper sticks out like a sore thumb.
But they do keep the active tab of each window in memory. Firefox even continues rendering all active tabs in all windows, even if for windows which are not visible.
Not sure if this 45MB is per browser instance or per tab, but it’s the latter case, 10 windows would save 450MB. >10% on a lower-end device.
> Did they actually need all variables to be stable at the point of any memory access?
One of the most important optimizations that a compiler can do is keeping a variable in a register and never even bother letting it hit memory in the first place. If every variable must get its own RAM address and the value at that RAM address must be faithful to a variable's "true" value at any given instruction, we should expect our software to slow down by an order of magnitude or two.
AVX512 has 2048 bytes of named registers; AVX2 has 512 bytes. AVX512 uses out of band registers for masking, AVX2 uses in band mask registers. AVX512 has better options for swizzling values around. All (almost all?) AVX512 instructions have masked variants, allowing you to combine an operation and a subsequent mask operation into a single operation.
Often times I'll write the AVX512 version first, and go to write the AVX2 version, and a lot of the special sauce that made the AVX512 version good doesn't work in AVX2 and it's real awkward to get the same thing done.
reply