HNHacker News
TopNewBestAskShowJobs

matja

1,184 karma · joined December 29, 2018

https://github.com/matja
submissionscomments
matja··on Corrupting a ZFS File on Purpose
You're right that the ECC validation is very robust, but that only validates one small part - that the drive is reading what it has previously written, not that the data was correct when it came in to the drive, correctly handled by the firmware, or even written in the correct place (LBA) on the drive.

There's been times when some features of entire models of drives have been disabled in the Linux kernel because of buggy firmware that silently writes bad data (with correct ECC), so reading it back is successful from both the drive's and the OS's block driver views.

I was hit by this myself with the queued TRIM command firmware bug that affected all Samsung EVO 840 SSDs (Linux kernel commit 9a9324d3969678d44b330e1230ad2c8ae67acf81 if you want to look into the history) - the drive didn't report any errors, but ZFS kept reporting corruption, and kept on fixing it in the background.

matja··on There's still no point in gigabit broadband
Because I would have expected for game development that it would be rare for majority of the large assets (art, textures, 3d meshes, video, sound, music) to change multiple times per day, so - to me - sounds like would perfectly suit a differential/incremental sync protocol, rather than treating everything as a large packed blob. At least that was the case for the game development I did.
matja··on There's still no point in gigabit broadband
I play games but I suppose I don't download a 100GB game frequently enough for it to matter to myself.
matja··on There's still no point in gigabit broadband
True, but that is transport (TLS). I was asking about the underlying data.
matja··on There's still no point in gigabit broadband
Please can you enlighten the ignorant that are also gamers? :)
matja··on There's still no point in gigabit broadband
Is that 80-100GB of unique data multiple times per day? Is it encrypted with a different key every time? Sounds very interesting.
matja··on Gemma 4 12B: A unified, encoder-free multimodal model
One side-effect, is that the separate .mmproj file (Multi-Modal Projection encoder) is no longer needed, when using the model with llama.cpp etc.
matja··on OpenRouter raises $113M Series B
+1 this. Example: Using Mistral TTS voice cloning appears to be not possible via the "providers" pass-through object in the OpenRouter API because some parameters are always forwarded which conflict with the provider's parameters.
matja··on I put a datacenter GPU in my gaming PC
The latest Raspberry Pi 5 has one 32-bit channel (2x 16-bit subchannels) of LPDDR4X-4267 SDRAM giving 17.1GB/s of bandwidth, 52x less than this GPU. Never mind lacking the CUDA and Tensor cores, so the FP16 performance is 102x less (307 GFLOPS vs 31.4 TFLOPS). So for £200, there's absolutely no comparison for this specific use-case.
matja··on I put a datacenter GPU in my gaming PC
The AMD MI250X GPUs are also interesting - 128GB of HBM2E at 3TB/s, sometimes you see them second-hand for under $1k, the catch obviously is that it needs an OAM socket. Never seen an easy way to hook them up to a regular mainboard.
matja··on Bijou64: A variable-length integer encoding
> canonicality matters — for signatures, content-addressing, or any kind of “two implementations must agree on the bytes” property

If you don't do this properly, you end up with things like: - SAML XSW attack due to XML signature wrapping - ASN.1 BER/DER signature forgery - Bitcoin transaction malleability attacks

matja··on Converting an Integer to a Decimal String in Under Two Nanoseconds
The problem is AVX-512 was disabled in later Intel Alder Lake CPUs, and later generation Intel desktop CPUs, so very few Intel desktop CPUs have AVX-512 now. Ironic that AMD has better support/performance for an ISA extension that Intel invented.
matja··on I spent 50 hours drawing a line graph
I loved hearing this comment in my mind :)
matja··on Regex Chess: A 2-ply minimax chess engine in 84,688 regular expressions
I was also thinking along the same lines. Interesting, but I'm not sure in which aspect it is an achievement, considering the loop isn't a regex.

Meanwhile, 1K ZX Chess takes fewer bytes of memory than the first four paragraphs from the post.

matja··on Removing fsync from our local storage engine
Even with O_DIRECT and aligned blocks, I still don't understand how the storage engine can return a "successful commit" to the client without a sync at some point, because a sync (IIRC) is the only way to guarantee an ATA/NVMe FUA command is sent, and the device write cache/buffer is committed.
matja··on Different language models learn similar number representations
The eigenvalue distribution looks somewhat similar to Benford's Law - isn't that expected for a human-curated corpus?
matja··on XOR'ing a register with itself is the idiom for zeroing it out. Why not sub?
SUB has higher latency than XOR on some Intel CPUs:

latency (L) and throughput (T) measurements from the InstLatx64 project (https://github.com/InstLatx64/InstLatx64) :

  | GenuineIntel | ArrowLake_08_LC | SUB r64, r64 | L: 0.26ns=  1.00c  | T:   0.03ns=   0.135c |
  | GenuineIntel | ArrowLake_08_LC | XOR r64, r64 | L: 0.03ns=  0.13c  | T:   0.03ns=   0.133c |
  | GenuineIntel | GoldmontPlus    | SUB r64, r64 | L: 0.67ns=  1.0 c  | T:   0.22ns=   0.33 c |
  | GenuineIntel | GoldmontPlus    | XOR r64, r64 | L: 0.22ns=  0.3 c  | T:   0.22ns=   0.33 c |
  | GenuineIntel | Denverton       | SUB r64, r64 | L: 0.50ns=  1.0 c  | T:   0.17ns=   0.33 c |
  | GenuineIntel | Denverton       | XOR r64, r64 | L: 0.17ns=  0.3 c  | T:   0.17ns=   0.33 c |
I couldn't find any AMD chips where the same is true.
matja··on XOR'ing a register with itself is the idiom for zeroing it out. Why not sub?
Alpha: r31, f31
matja··on The local LLM ecosystem doesn’t need Ollama
> This is a bit like saying stop using Ubuntu, use Debian instead.

Not really, because Ubuntu has always acknowledged Debian and explicitly documented the dependency:

> Debian is the rock on which Ubuntu is built.

> Ubuntu builds on the Debian architecture and infrastructure and collaborates widely with Debian developers, but there are important differences. Ubuntu has a distinctive user interface, a separate developer community (though many developers participate in both projects) and a different release process.

Source: https://ubuntu.com/community/docs/governance/debian

Ollama never has for llama.cpp. That's all that's being asked for, a credit.

matja··on Do you even need a database?
If you think files are easier than a database, check out https://danluu.com/file-consistency/
matja··on My adventure in designing API keys
What if the "slug" was a prefix for the API key revocation URL, so the API key was actually a valid URL that revoked itself if fetched/clicked? :)
matja··on My adventure in designing API keys
I suppose there could be two checksums, or two hashes: the public spec that can be used by API key scanners on the client side to detect leaks, and an internal hash with a secret nonce that is used to validate that the API key is potentially valid before needing to look it up in the database.

That lets clients detect leaks, but malicious clients cant generate lots of valid-looking keys to spam your API endpoint and generate database load for just looking up API keys.

matja··on Steam on Linux Use Skyrocketed Above 5% in March
Does Nvidia need to support Wayland, or does Wayland need to support Nvidia? I.e., what is the support at the API boundary which is missing?
matja··on Google releases Gemma 4 open models
I'm running Gemma 4 with the llama.cpp web UI.

https://unsloth.ai/docs/models/gemma-4 > Gemma 4 GGUFs > "Use this model" > llama.cpp > llama-server -hf unsloth/gemma-4-31B-it-GGUF:Q8_0

If you already have llama.cpp you might need to update it to support Gemma 4.

matja··on Steam on Linux Use Skyrocketed Above 5% in March
That's a good point that I hadn't considered. I've never had a laptop with Nvidia, I probably subconsciously avoided those dual GPU setups as they sounded hacky and I never really needed fast 3D on a laptop.
matja··on Steam on Linux Use Skyrocketed Above 5% in March
The "Nvidia on Linux compatibility" issues are something I wonder if I have side-stepped somehow either by lucky choice of GPUs, or lucky choice of Linux distros.

Was/is this a distro thing, or an actual issue?

Every Nvidia I've used [1] has worked perfectly, from the change for Xfree86 to Xorg, through the Compiz desktop wobbly window craze, to the introduction of GPGPU APIs like CUDA/OpenCL and recently Vulkan.

I do recall once helping a friend setup a Debian and a Ubuntu machine with Nvidia (which I never used before) and it took some figuring-out of how to install non-free drivers, so maybe my choices of Gentoo and Arch (not being as conservative towards non-free licenses as Debian/Ubuntu) always made it a non-issue?

[1] 6800 Ultra, 7800 GTX , 7900 GTX, 8800 GTX, GTX 280, GTX 480, GTX 680, GTX 760 Ti, RTX 2080, RTX 4080... probably missed some.

matja··on Artemis II is not safe to fly
I'm nowhere near qualified to say if the design is not safe, but I'm suprised the article doesn't mention that some heat shields are designed to indeed, blow chunks: https://en.wikipedia.org/wiki/Atmospheric_entry#Ablative
matja··on Apple discontinues the Mac Pro
Yeah 80GB/s total I/O bandwidth is a lot for a Mac, but desktop PCs have been doing 1TB/s (128x PCIe5) for years (Threadripper etc).
matja··on curl > /dev/sda: How I made a Linux distro that runs wget | dd
That sounds like the best way if keeping the filesystem is an option. In my case I wanted to also change filesystems and apply FDE, which is possible to do if the original filesystem supports online shrinking but many do not.
matja··on curl > /dev/sda: How I made a Linux distro that runs wget | dd
I totally missed part 2/3, thanks for linking!
← PreviousPage 3 of 13Next →