HNHacker News
TopNewBestAskShowJobs

matja

1,132 karma · joined December 29, 2018

https://github.com/matja
submissionscomments
matja··on NAND-16: a computer built from 277,248 NAND gates
Most of the gate budget here is on SRAM used for system memory and video memory, so not exactly comparable to a i386 which had neither on-die.
matja··on Nvidia wants to put a watchdog chip next to every AI agent
"It appears you've loaded weights into your GPU that have not been signed/approved by the government of the country your GPU is registered to..."
matja··on Sourcehut account takeover via build logs (XSS in ansi2html)
By "stripped out" I hope that means only accept colours and bold/underline and discard everything unrecognised :)
matja··on AMD's random number generator can't generate a 0?
The fact that Intel Bull Mountain (code name for Secure Key Technology), and NSA's BULLRUN program share the name "bull" is a complete coincidence. I'm sure.
matja··on MUNI Heritage Weekend in San Francisco
I like the photos, they look like architectural diagrams.

I suppose the subjects moved past the camera perpendicular to the lens direction, so you only see one side.

Are there any examples of what it looks like with a line scan camera when a subject goes past at an angle?

Also, for anyone setting up a tripod with a tripping hazard in public, do consider public liability insurance :)

matja··on AMD's random number generator can't generate a 0?
Why does systemd use architecture-specific instructions rather than using the kernel-provided random interface in the first place?
matja··on AMD's random number generator can't generate a 0?
CVE-2008-0166 (Debian OpenSSL Predictable PRNG Vulnerability) inspired xkcd/221 but this sort of thing happens a lot :)
matja··on AMD's random number generator can't generate a 0?
Why would it be a normal distribution?
matja··on AMD's random number generator can't generate a 0?
I'm getting 16-bit zeros on my Zen 3 chip (+1:3821, 0:3893, -1:3895), I will wait to get some statistically significant samples for the 32-bit values and update the forum thread. Maybe it was fixed after Zen 2?
matja··on Samsung is expected to more than double output of its HBM4 and HBM4E DRAM
Depends on what proportion of Samsung's output is current HBM4 and HBM4E DRAM.

Everything in their statement can be true and it be a bad thing for consumers of non-HBM RAM.

"HBM capacity to expand to 250,000 wafers a month"

So let's say their current HBM capacity is 100k wafers/month (pure speculation/random number for illustration), and their total RAM capacity (including HBM( is 300k wafers/month, then non-HBM capacity reduces from 200k to 50k.

matja··on Apple iPhone 18 Pro Camera test
I'm surprised that in no reviews of the iPhone 18 camera there is mention of the bad quality bokeh, it has heavy ring shapes that looks like what you'd get from a cheap catadioptric lens.

Edit: e.g. the tree in one of the images in the page: https://www.dxomark.com/wp-content/uploads/2026/09/PoleHDR_D...

matja··on What Zig felt like, coming from Rust
.len doesn't work on a list (because it might mislead you about the efficiency of the operation if it did exist), so it's better to use iterators - so then you can change the underlying type without changing your code.

But then, saying while "let Some(item) = iter.next()" everytime is tedious, so they give you .iter() - for any type that is efficiently iterable.

Nothing stopping you using a manual loop that you need to update if you change the container type.

matja··on Btrfs/ZFS/bcachefs under workloads classic benchmarks skip
> I'm not sure that nuking 2G of the underlying block device is a recoverable error on any filesystem that I'm aware of?

ZFS and btrfs were designed from the start to handle this, by using checksums on every piece of (meta)data and redundancy to return the same data as was stored to the kernel, and rewrite the bad data.

I've tested my own machines running ZFS by random writes out of band from the filesystem/kernel and it has always found and fixed them.

matja··on Introducing System One Models and Jev
Add:

    "call_back_day": {
      "criteria": {
        "none": "The user does not want a call back.",
        "today": "The user wants a call back today.",
        "tomorrow": "The user wants a call back tomorrow."
      },
      "instructions": "When does the user want a call back?",
      "type": "choice"
    }
And you get: "tomorrow": confidence 1
matja··on Microcode in Intel's 8087 floating-point chip: the scale instruction
I wouldn't say so, because it was a co-processor: e.g., it depended on the 8086 to even generate addresses for memory operations.

I think the IBM 7030 Stretch CPU (from 1964) would be a likely contender for being one of the first 64-bit CPUs.

matja··on Microcode in Intel's 8087 floating-point chip: the scale instruction
> Also, the arbitrary "Oh, and the registers are 80 bits wide" is also just one of those weird "Where did that number come from?".

One of the features that was advertised (mentioned in the iAPX 86, 88, 186 Microprocessors Part II book (July 1984)) was the ability to do exact arithmetic on integers up to 2^64, which is possible due to the 64-bit mantissa used in the 80-bit format.

matja··on I refuse to let SPICE die
> I wish the stars would align for QEMU to gain support for sunlight/moonlight streaming directly in the hypervisor.

I didn't know I wanted it until you said it.

I have a few QEMU VMs where I use PCI-passthrough of a whole GPU and a USB controller, and wire the display and USB outputs physically into a KVM switch - works great, but not having to fiddle with the KVM (and run out of physical ports) would be - indeed, killer app.

matja··on Technique for Manipulating Satellite Photos Now Reveals Ancient Images (2025)
The levels tool maps a subset of the channel range to the full range, effectively changing the brightness and contrast in one step.

The center point controls the gamma correction, so you can map a biased distribution (mostly bright or dark for example) to be more evenly distributed.

That was the purpose of that step - move the midpoint slider to about where the peak in the histogram is, to get an evenly distributed range.

The low/high slider can be moved towards that to increase the contrast.

"Contrast" here will only apply to the A/B channels, which is the color information, so it's increasing the color contrast and unbiasing it, while keeping the luminance information.

Photoshop also can do the same transform, and interactively in the LAB colorspace (no need to combine/uncombine the channels first).

matja··on Technique for Manipulating Satellite Photos Now Reveals Ancient Images (2025)
You can do something similar in GIMP:

1) Colors > Components > Decompose > LAB

2) For the layers of the A/B (chroma) channels, Colors > Levels > "Auto Input Levels" (maximize the contrast), and move the mid point to the median.

3) Colors > Components > Compose > LAB

matja··on Show HN: The same nine streaming subscriptions cost $702/year more than in 2021
You're rejecting information solely based on the aesthetic quality of the delivery medium?
matja··on Bill Gates tries to install MovieMaker (2003)
> every department is fighting for their lives against the others

https://bonkersworld.net/img/2011-06-27_organizational_chart...

matja··on “I just chose words carefully”
Looks like it messed-up and they're just for padding, remove them and it makes sense.

I never noticed that before.

As such, I propose a replacement :) :

    To accomplish this, append the following warnings to the software. It is
    safest to place them at the beginning of each source document to clearly
    declare the exclusion of guarantees; plus every single file must include
    a minimum of the "copyright" text and a link detailing the full warning.
matja··on “I just chose words carefully”
Obligatory mention, the GNU JUSTIFIED PUBLIC LICENSE: https://tom7.org/bovex/JCOPYING

(for the rabbit hole: https://tom7.org/bovex/)

matja··on Recovering Corrupt Zip Files
The more popular your software is, the more likely you'll get bug reports from people with just bad hardware. I know a few applications now that perform a simple memory/CPU test when sending a bug report and reject those that are basically impossible.

E.g.: 10% of Firefox crashes are caused by bitflips : https://news.ycombinator.com/item?id=47252971

matja··on New Mac Studio with M5 Max and M5 Ultra
I meant that it's a difficult comparison between platforms without having all the details like memory latency, how the memory controller load increases latency (can increase by 4x on some platforms), cache latency, TLB entries, etc.

Extremely high bandwidth is great for copying data, but not as relevant for walking chains of pointers, where latency/cache/TLB entries are more important.

So just saying "high bandwidth == better" is true when other variables are the same, but they rarely are, especially in comparison to x86-64 offerings.

All of these are independent that it is a SoC with on-package DRAM.

matja··on Show HN: A desktop fly drawn to the scent of vibecode
Thanks for this, really interesting parent project too, I went down a rabbit hole on that one :)
matja··on New Mac Studio with M5 Max and M5 Ultra
It's higher bandwidth than any dual-channel DDR5 desktop machine, but Apple never quote the memory latency, so hard to compare otherwise.
matja··on Omacom Foundation launches with $8M
It installed and runs perfectly on my VM with an RTX 4080 passed-though using VFIO. It uses the nvidia module rather than nouveau (at least on my GPU).
matja··on Show HN: A desktop fly drawn to the scent of vibecode
For those not on macOS, is there a video?
matja··on Protect Your Relays
Same, having worked on firmware that controlled relays (and NAND chips) and managed to burn them both out surprisingly quickly due to software bugs :p
Page 1 of 13Next →