Recent submissions

Comment · 11 days ago
Some details and benchmarks were announced but the weights didn’t get released
Comment · 12 days ago
"Experimental does not mean unstable" (2023) https://determinate.systems/blog/experimental-does-not-mean-...

I know not everyone is a fan of DS, but this post has a nice, concise explanation of how to think about the state of flakes.

Comment · 1 year ago
Comment · 1 year ago
Comment · 1 year ago
> However, this mode switching is expensive! Just this switch alone costs 1000-1500 CPU cycles in pure overhead, before any actual work happens.

...

> On a 3GHz processor, 1000-1500 cycles is about 500 nanoseconds. This might sound negligibly fast, but modern SSDs can handle over 1 million operations per second. If each operation requires a system call, you're burning 1.5 billion cycles per second just on mode switching.

> Package installation makes thousands of these system calls. Installing React and its dependencies might trigger 50,000+ system calls: that's seconds of CPU time lost to mode switching alone! Not even reading files or installing packages, just switching between user and kernel mode.

Am I missing something or is this incorrect. They claim 500ns per syscall with 50k syscalls. 500ns * 50000 = 25 milliseconds. So that is very far from "seconds of CPU time lost to mode switching alone!" right?

Comment · 1 year ago
Cool! Even though, my iPhone 15 Pro was misidentified as iPhone 16.
Comment · 1 year ago
Why the disappointment with Deno compile? I have not used it but from the website it seems that the end user does not need Deno to be installed. What is the shortcoming you are referring to?
Comment · 1 year ago
Seems like it can run on standard container runtimes so you don't specifically need macOS and the container is Linux based. So there is no need to involve macOS at all since you can develop Swift programs on Linux for example.
Comment · 2 years ago
It took a bit of time for me to respond because I wanted to make sure I wrote down the info in a nice detailed way. I will update the descriptions on the website to include the information I am proving here to give visitors a better understanding of the options. To be clear, I am not an expert on all this image coding stuff. I just wanted to make a simple tool to let people try out Jpegli because I thought it was interesting even though I don't know so much about the topic.

Progressive Rendering There are 3 options on the website. None, Basic and Enhanced. There correspond respectively to options 0, 1 and 2 for the JXL_ENC_FRAME_SETTING_PROGRESSIVE_DC option [1].

"Set the progressive mode using lower-resolution DC images for VarDCT. Use -1 for the encoder default, 0 to disable, 1 to have an extra 64x64 lower resolution pass, 2 to have a 512x512 and 64x64 lower resolution pass."

So "Basic" provides 1 scan and "Enhanced" provides 2 scans. Here is a detailed description on progressive loading: https://www.thewebmaster.com/progressive-jpegs/

DCT Method I can't really find documentation about DTC Method in libjxl but the options seems to be very similar to the options offered in mozjpeg [2]. They have a detailed explanation on that page I referenced which I won't all copy here. Seems like slow integer is the preferred method as the others are marked as legacy. Maybe I should just remove the options? From my testing the slow integer method has slightly worse compression but it is accurate.

XYB colorspace TBH, the library I am using only supports a few color spaces and it does not include XYB and I have not looked into it much further. Also as you can see I did not really bother to add colorspace settings in general but I might do it later.

[1] https://libjxl.readthedocs.io/en/latest/api_encoder.html#_CP...

[2] https://github.com/mozilla/mozjpeg/blob/6c9f0897afa1c2738d72...

Comment · 2 years ago
Comment · 2 years ago
It's on there now
Comment · 2 years ago
Thanks! I will try to find a nice place to put it on the home page.
Comment · 2 years ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton