Hacker Newsnew | past | comments | ask | show | jobs | submit | majora2007's commentslogin

I'm in the same boat, I just switched to using it for Kavita, which only does some basic open Image -> Thumbnail to smaller size -> write to disk when importing new comics/books and on linux, memory could swell to 10GB and never get released. Switched to jemalloc and instantly memory stayed well below 1GB.

Generally yes, but the wording of "instantly" begs for the following pedantic remark:

This is controlled by jemalloc settings `dirty_decay_ms`, `muzzy_decay_ms`, and their interaction with `background_thread`.

`dirty_decay_ms` currently defaults to 10 seconds, so it's not that instant.

That is important e.g. for single-threaded programs that start other programs, such as my Python example: If it starts a subprocess before the 10 seconds elapse after `free()`, Python (and jemalloc) do not run, and get no chance to return memory to the OS.

In such cases, either enable `background_thread`, or set the `_decay_` values to `0` to ensure immediate return to the OS upon `free()`. (This costs some performance.)

See e.g. https://github.com/jemalloc/jemalloc/issues/2688


Outside of the outstanding optimizations .net has made (plus async runtime), what I really enjoyed was the reworked entry section. Stephen reiterated all the concepts from the past Performance Improvement articles to really showcase the layers of optimization techniques and how the can transform.

How is the AI controlling the video game? Is there special coding/harness that allows for this?


Factorio has an extremely broad LUA modding API, so a mod was made that allows it to get data about the game and send input actions to control the game. It also has ability to make screenshots and it does use it from time to time to inspect whats going on.

One thing that really interests me is declining to issue CVEs. I get a lot of AI submitted security issues and they all want CVEs. But some are simple idor to access information around an age rating on selfhosted software for friends and family.

Does anyone have any advice when to decline CVEs?


Kavita has a custom epub library that actually streams the epub pages. The reason why it's non-existent is due to epub being a zip, with a manifest of pages and images. Each page is an html document, so it may have images requested from that manifest.

Most applications just use epub.js which needs the whole book loaded at once.

Edit: Also Kavita does support some calibre tags for metadata and def is much more customizable with a powerful filtering system which you can then bind to your dashboard/side nav.

www.kavitareader.com for those that might be interested (or check the wiki to get a bit more about it).


Why not use Kavita then? It uses even less resources, it's mature (nearly 5 years old) and supports manga/comics/ebooks with a rich ecosystem of apps (esp with AI now, lots of users are creating mobile apps to connect).


I totally agree with this. I recently tried vibecoding a side project that I used to code a few days a year on and it was really fun at first.

But then I started to feel overwhelmed by the amount of code and the fact that coding manually started to come harder.

I ended up just cancelling my sub and going back to the old ways. Side projects are fine to take extra time as they are my hobby for me.


You might want to check out Kavita, the epub reader is quite good.


Surprised Kavita didn't make your list. Has KOReader/Send to Support out of the box and is extremely mature (5 years old) and feature rich.


Sad to see Kavita (or any OS self-hosted reading server) not on openaltfinder :(


I've added it to my list of projects to look into, so should be added fairly soon!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: