22,524 karma · joined November 15, 2017
You can reach me via https://bayindirh.io
https://github.com/zwang4/awesome-machine-learning-in-compil...
Using small, purpose built ML "things" to make things better makes sense. We use them everywhere. I never argued against it, as well.
Personally, I don't care. If you don't support open drivers, you have to provide first class drivers on Linux on day 1, because NVIDIA's majority of business is running on Linux already.
On top of that, they claim to have the best Linux support, and claim to have best drivers in their class.
So, it's better to act like that and provide support. If any other company has done that, they have been incinerated with the flame of internet's hate thrice already.
However, starting with LLMs directly generating machine code and moving to ML directed optimization passes, you're moving the whole stadium with a crawler-transporter, not only the goalposts.
Helping compiler in a well defined way, and working on IR or driving it repeatedly to optimize the output is one thing, generating machine code from a training set is other. Let's not mix them.
A good espresso/americano has more bite in taste than a good Aeropress/V60/drip. I personally love smoother profiles (less acidity, less bite, etc.), so darker roasts and espresso on the bitter side is not my kind of thing, but preferences differ. OTOH, I can make myself a cup of instant coffee if I feel lazy.
Again, there's no need to punch yourself like that. Try, experiment and build your taste profile. These kinds of hobbies needs some kind of experience to refine what you like and what you don't.
Most importantly, don't let anyone's taste dictate yours and vice versa. I never get upset just because how someone I know prefers their coffee way different than mine, but they insist that I shouldn't drink that coffee, because that doesn't fit their taste preferences.
There's no wrong, but only things you like. You can't fail at this, because there's no way to do so.
I can hit the temperature I want every time on a Bosch microwave from 80s which has two power levels and a rotary, mechanical timer.
When you want to go low or no plastics, there are many choices now.
Considering it just pulls and remixes blocks, this is a very tall order for today's LLMs, and maybe a couple of generations as well.
Calling GCC/clang at the back and emitting ASM is both cheating and has no advantages whatsoever as well.
Remember, the kernel module is open source, but rest of the driver is closed source, and any kernel level code which can't be open sourced but had to be is moved to card firmware. Only the kernel module is open source. Not the libraries, not the driver, nothing else.
NVIDIA is holding to its pearls like a sloth holding to its branch, because their all business model and livelihood is dependent on that control. I still commend AMD's decision to allow full card enablement with any driver which talks the correct language.
Note, these models generally run 60/120/240 FPS depending on the camera range, and can command the connected lenses at ~100FPS (because physics).
However, while Testing is "relatively secure", it's never "Server secure". I'd never use testing or testing packages in stable or any server for that matter.
That's interesting, can you give an example? Asking as a curious Debian user.
Again. Stable is for servers, testing is for personal use.
I never argued otherwise, ever.
If you want real testing, you should run "unstable". If you're in for fun, try experimental.
Running Testing on my desktops and stable on my servers since forever. None of them broke, none of them created problems.
I don't care Stable running 6.x.x. It gets security updates in less than 24h, and is applied automatically before I wake up, and doesn't ship coreutils with 104CVEs, just because it's Rust.
Debian used to move a bit slow in terms of userspace, and that's true, but for servers, that's a non-issue for the last 20 years or so (from my experience).
On the Desktop side, Fedora and Ubuntu moves faster on the userspace front, but if your system is behind a NAT, and you know what you're doing, Debian Testing is just as good, more stable and it's rolling (except when it's feature freeze, but a stable workhorse is better than a shiny but breaking one).
Debian allows me to sleep well at night, provides guaranteed updates, and works rock solid all-round, so I won't be touching Ubuntu for the foreseeable future. Esp, with controversial choices like uutils, etc.
Also, extensive commenting inside codebases is useful documentation, incl. these kinds of incidents. Good code documents the how, but not why. Comments shall also include the "why" where applicable.
I have reduced my social media to two sites: Here and Mastodon (with a very limited follow circle). I don't follow tons of ad-ridden websites. I have a self-hosted RSS reader, following 10 feeds. Instead of following junk tech news, I read LWN.
Next step might be enabling antiproc on HN to reduce my time here, since I added time limits on applications on my phone and love that artificial limit.
I have limited energy and I want to focus it instead of spreading it around. Otherwise progressing beyond a certain point becomes impossible.
Also, I also agree that people optimize without proper testing and profiling. If there's a real bottleneck here, trying to optimize it is the right call. OTOH, optimizing without profiling opens a lot of unnecessary cans.
Lastly, Go doesn't like constant allocation and deallocation of variables, that's true, but I believe knowing this and optimizing hot-loops for that goes a very long way as a start.
I'm on $20 Claude plan, and it's also ample for my needs, for now.
True, I use LLMs as glorified search engines to unearth material to read myself, but Gemini is much more useful if you decide to learn yourself. It also offers interesting expansions to your questions.
While I don't offload my work to LLMs (e.g.: Write this project, I'll be watching TV), I find them useful for closing my knowledge gap by collating information, and Google's Gemini is good at that.