![](/static/253f0d9/assets/icons/icon-96x96.png)
![](https://lemmy.ml/pictrs/image/c0ed0a36-2496-4b4d-ac77-7d2fd7f2b5b7.png)
Computer programming, regardless of language, is hard. The computer does exactly what you tell it to.
Computer programming, regardless of language, is hard. The computer does exactly what you tell it to.
Is that an armadillo? Forgetting how my own code works is my forte.
Screen 0 deleted because of no matching config section.
Your XOrg conf ig has got hard definitions of your devices which aren’t matching what is being detected. Probably best to let auto detection do it’s thing.
Arch people tell you “I use arch BTW”
Rust people make PRs rewriting your code in rust.
Rust people are worse.
Memory ownership isn’t the only source of vulnerabilities. It’s a big issue, sure, but don’t think rust code is invulnerable.
That’s disengenuous though.
We’re not forcing you to learn rust. We’ll just place code in your security critical project in a language you don’t know.
Rust is a second class citizen, but we feel rust is the superior language and all code should eventually benefit from it’s memory safety.
We’re not suggesting that code needs to be rewritten in rust, but the Linux kernel development must internalise the need for memory safe languages.
No other language community does what the rust community does. Haskellers don’t go to the Emacs project and say “We’d like to write Emacs modules, but we think Haskell is a much nicer and safer functional language than Lisp, so how about we add the capability of using Haskell and Lisp?”. Pythonistas didn’t add Python support to Rails along side Ruby.
Rusties seem to want to convert everyone by Trojan horsing their way into communities. It’s extremely damaging, both to those communities and to rust itself.
The question was “How do you define GPL compatible?”. The answer to that question has nothing to do with code being split between files. Two licenses are incompatible if they can’t both apply at the same time to the same thing.
…because they are incompatible licenses.
Not under a license which prohibits also licensing under the GPL. i.e. it has no conditions beyond what the GPL specifies.
My experience is that AMDs virtual memory system for VRAM is buggy and those bugs cause kernel crashes. A few tips:
If running both cards is overstressing your PSU you might be suffering from voltage drops when your GPU draws maximum power. I was able to run games absolutely fine on my previous PSU, but running diffusion models caused it to collapse. Try just a single card to see if it helps stability.
Make sure your kernel is as recent as possible. There have been a number of fixes in the 6.x series, and I have seen stability go up. Remember: docker images still use your host OS kernel.
If you can, disable the desktop (e.g. systemctl isolate multi-user.target
, and run the web gui over the network to another machine. If you’re running ComfyUI, that means adding --listen
to the command line options. It’s normally the desktop environment that causes the crashes when it tries to access something in VRAM that has been swapped to normal RAM to make room for your models. Giving the whole GPU to the one task boosts stability massively. It’s not the desktop environment’s fault. The GPU driver should handle the situation.
When you get a crash, often it’s just that the GPU has crashed and not the machine (Won’t be true of a power supply issue). ssh
ing in and shutting down cleanly can save your filesystems the trauma of a hard reboot. If you don’t have another machine, grab a ssh
client for your phone like Juice SSH on android. (Not affiliated. It just works for me)
Using rocm-smi
to reset the card after a crash might bring things back, but not always. Obviously you have to do this over the network as your display has gone.
Be aware of your VRAM usage (amdgpu_top
) and try to avoid overcommitting it. It sucks, but if you can avoid swapping VRAM everything goes better. Low memory modes on the tools can help. ComfyUI has --low-vram
for example and it more aggressively removes things from VRAM when it’s finished using them. Slows down generations a bit, but better than crashing.
With this I’ve been running SDXL on a 8GB RX7600 pretty successfully (~1s per iteration). I’ve been thinking about upgrading but I think I’ll wait for the RX8000 series now. It’s possible the underlying problem is something with the GPU hardware as AMD are definitely improving things with software changes, but not solving it once and for all. I’m also hopeful that they will upgrade the VRAM across the range. The 16GB 7600XT says to me that they know <16GB isn’t practical anymore, so the high-end also has to go up, right?
It’s meant to be that malloc
fails and the application handles it.
Trouble is applications are written expecting it to never fail.
The argume t would be that their job is to advise buyers on the performance they would see. If most buyers are using windows and gaming then they should report windows gaming numbers.
However, there’s a lot of people who aren’t doing that and I’m not sure where we are meant to get our numbers from. Phronix I guess.
To sell into the US government in the 70s you had to ensure your parts could be sourced from a second company. That way, if you had supply problems, the government would just got to the second source.
AMD was a second source for the 8086.
The most difficult part is to keep track of the big picture because it is so verbose. Otherwise it’s a handful or two of instructions you use 90+% of the time.
It’s a long time since I wrote any assembly in anger, but I don’t remember this being an issue. Back then Id be writing 2D and 3D graphics demos. Reasonably complex things, but the challenge was always getting it fast enought to keep the frame rate up, not code structure.
As you say, I think you just establish patterns to decompose the problem.
Only the most very basic compilers. C compilers are in C mainly.
I intentionally misunderstood for (not very) comedic effect
It takes a while but I’m surprised the WR would be nearly 72 minutes.
Lucky it was set in America.
The standard library is where project go to die.