6 ms·
That's a shame to hear. I had to give up on Ghostty because of its memory leak issue. Granted, it was on an 8GB system, but that should be enough to run a ter
by quantummagic 9mo ago
That's a shame to hear. I had to give up on Ghostty because of its memory leak issue. Granted, it was on an 8GB system, but that should be enough to run a terminal without memory exhaustion a few times a week. Foot has been rock solid, even though it lacks some of Ghostty's niceties.
- mi_lk 9mo agoI’m sure they would appreciate a report as it doesn’t seem that it can be reproduced yet
- favflam 9mo agobtw, is it me or is there any justification for anyone including a developer to run more than 8GB of RAM for a laptop? I don't see functionality as having changed in the last 15 years. For me, only Rust compilation necessitates more RAM. But, I assume devs just do RAM heavy dev work on a server over ssh.
- tynorf 9mo agoChrome on my work laptop sits around 20-30GB all day every day.
- typeofhuman 9mo agoI wonder if having less RAM would compel you to read, commit to long term memory, and then close those 80 tabs you have open.
- transcriptase 9mo agoI wonder if a good public flogging would compel chrome and web devs to have 80 tabs take up far less than a gigabyte of memory like they should in a world where optimization wasn’t wholesale abandoned under the assumption that hardware improvements would compensate for their laziness and incompetence.
- refulgentis 9mo ago[flagged]
- abenga 9mo agoIs there a straightforward way to have one-process-per tab in browsers without using significant amounts (O(n_tabs)) of memory?
- samus 9mo agoThere is no justification for that IMHO. The program text only needs to be in memory once. However, each process probably has its own instance of the JS engine, together with the website's heap data and the JIT-compiled code objects. That adds up.
- m-schuetz 9mo agoThe high memory usage is due to the optimization. Responsiveness, robustness and performance was improved by making each tab independent processes. And that's good. Nobody needs 80 tabs, that's what bookmarks are for.
- lukan 9mo ago"that's what bookmarks are for" And if you are lucky, the content will still be there the next time.
- pdpi 9mo agoIf I'm doing work than involves three different libraries, I'm not reading and committing to memory the whole documentation for each of those libraries. I might well have a few tabs with some of those libraries' source files too. I can easily end up with tens of tabs open as a form of breadcrumb trail for an issue I'm tracking down. Then there's all the basic stuff — email and calendar are tabs in my browser, not standalone applications. Ditto the the ticket I'm working on. I think the real issue is that browsers need to some lightweight "sleep" mechanism that sits somewhere between a live tab and just keeping the source in cache.
- magicalhippo 9mo agoThe issue for me is that bookmarks suck. They don't store the state (where I was reading) and they reload the webpage so I might get something else entirely when I come back. They also kinda just disappear from sight. If instead bookmarks worked like tab saving does, I would be happy to get rid of a few hundred tabs. Have them save the page and state like the tab saving mechanism does. Have some way to remind me of them after a week or month or so. Combine that with a search function that can search in contents as well as the title, and I'm changing habbits ASAP.
- bananadonkey 9mo agoRegarding wanting to preserve the current version of a page: I use Karakeep to archive those pages. I am sure there are other similar solutions such as downloading an offline version, but this works well for me. I do this mostly for blog posts etc I might not get around to reading for weeks or months from now, and don't want them to disappear in the meantime. Everything else is either a pinned tab (<5) or a bookmark (themselves shared when necessary on e.g a Slack canvas so the whole team has easy access, not just me). While browsing the rest of my tabs are transient and don't really grow. I even mostly use private browsing for research, and only bookmark (or otherwise save) pages I deem to be of high quality. I might have a private window with multiple tabs for a given task, but it is quickly reduced to the minimum necessary pages and the the whole private window is thrown away once the initial source material gathering is done. This lets me turn off address bar search engines and instead search only saved history and bookmarks. I often see colleagues with the same many browser windows of many tabs each open struggling to find what they need, and ponder their methods.
- magicalhippo 9mo agoI've started using Karakeep as well, however I don't find its built-in viewer as seamless as a plain browser page. It's also runs afoul of pages which combats bots due to its headless chrome. Anyway, just strikes me as odd that the browsers have the functionality right there, it's just not used to its full potential.
- 9mo ago
- fastasucan 9mo agoThats a weird assumption to make.
- gizmo686 9mo agoHow much would it take up if there was less RAM available. A web browser with a bunch of tabs open but not active seems like the type of system that can increase RAM usage by caching, and decrease it by swapping (either logically at the application level, or letting the OS actually swap)
- tynorf 9mo agoThe computer has 18GB of total RAM so I would hope that it’s already trying to conserve memory. It’s kind of humorous that everyone interpreted the comment as complaining about Chrome. For all I know, it’s justified in using that much memory, or it’s the crappy websites I’m required to use for work with absurdly large heaps. I really just meant that at least for work I need more than 8GB of RAM.
- viraptor 9mo ago~10 projects in Cursor is 25GB on it's own.
- favflam 9mo agoI do work off of a Chromebook with 8GB of RAM total, but I do keep an eye on how many tabs I have open.
- pdpi 9mo agoThere's all the usual "$APPLICATION is a memory hog" complaints, for one. In the SWE world, dev servers are a luxury that you don't get in most companies, and most people use their laptops as workstations. Depending on your workflow, you might well have a bunch of VMs/containers running. Even outside of SWE world, people have plenty of use for more than 8GiB of RAM. Large Photoshop documents with loads of layers, a DAW with a bazillion plugins and samples, anything involving 4k video are all workloads that would struggle running on such a small RAM allowance.
- gizmo686 9mo agoThis depends on industry. Around here, working locally on laptop is a luxury, and most devs are required to treat their laptop like a thin client. Of course, being developer laptops, they all come with 16 gigs of RAM. In contrast, the remote VMs where we do all of the actual work are limited to 4GiB unless we get manager and IT approval for more.
- sumanthvepa 9mo agoInteresting. I required all my devs to use local VMs for development. We've saved a fair bit on cloud costs.
- happymellon 9mo agoCurrent job used to let us run containers locally, but they decided to wrap initially docker, and then podman with "helper" scripts. These broke regularly, and became too much overhead to maintain so we are mandated to do local dev but access a dev k8 cluster to perform any level of testing that is more than unit and requires a db. A really shame as running local docker/podman for postges was fine when you just ran the commands.
- cdogl 9mo agoI find this quite surprising! What benefit does your org accrue by mandating that the db instance used for testing is centralised? Where I am, the tests simply assume that there’s a database available on a certain port. docker-compose.yml makes it easy to spin this up for those so inclined. At that stage it’s immaterial whether it’s running natively, or in docker, or forwarded from somewhere else. Our tests stump up all the data they need and tear down the db afterwards. In contrast, I imagine that a dev k8s cluster requires some management and would be a single point of failure.
- afiori 9mo agoBrowser + 2 vscode + 4 docker container + MS Teams + postman + MongoDB Compass Sure it is bloated, but it is the stack we have for local development
- stackghost 9mo agoWith 32 GB I can run two whole Electron applications! Discord and Slack! It's a life of luxury, I tell you.
- samus 9mo agoBrowsers can get quite bloated, especially if one is not in the habit of closing tabs or restarting it from time to time. IDEs, other development tools, and most Electron abominations are also not shy about guzzling memory.
- nkrisc 9mo agoYou asked if there is a justification and then in the same post justified why you need it.
- favflam 9mo agoMy post was about laptop RAM. I counted server-side RAM as a separate thing.
- School-Cotton 9mo ago> But, I assume devs just do RAM heavy dev work on a server over ssh. This assumption is wrong. I compile stuff directly on my laptop, and so do a lot of other people. Also, even if nobody ran compilers locally, there is still stuff like rustc, clangd, etc. which take lots of RAM.
- fastasucan 9mo ago>But, I assume devs just do RAM heavy dev work on a server over ssh. Why do you assume that? Its nice to do things locally sometimes. Maybe even while having a browser open. It doesn't take much to go over 8gb.
- mitchellh 9mo agoNote that this is an active discussion where we're trying to get to a point of clarity where we can promote to an issue (when it is actionable). The discussion is open and this is the system working as intended! I want to clarify though that there isn't a known widespread "memory leak issue." You didn't say "widespread", but just in case that is taken by anyone else. :) To clarify, there are a few challenges here: 1. The report at hand seems to affect a very limited number of users (given the lack of reports and information about them). There are lots of X meme posts about Ghostty in the macOS "Force Close" window using a massive amount of RAM but that isn't directly useful because that window also reports all the RAM _child processes_ are using (e.g. if you run a command in your shell that consumes 100 GB of RAM, macOS reports it as Ghostty using 100 GB of RAM). And the window by itself also doesn't tell us what you were doing in Ghostty. It farms good engagement, though. 2. We've run Ghostty on Linux under Valgrind in a variety of configurations (the full GUI), we run all of Ghostty's unit tests under Valgrind in CI for every commit, and we've run Ghostty on macOS with the Xcode Instruments leak checker in a variety of configurations and we haven't yet been able to find any leaks. Both of these run fully clean. So, the "easy" tools can't find it. 3. Following point 1 and 2, no maintainer familiar with the codebase has ever seen leaky behavior. Some of us run a build of Ghostty, working full time in a terminal, for weeks, and memory is stable. 4. Our Discord has ~30K users, and within it, we only have one active user who periodically gets a large memory issue. They haven't been able to narrow this down to any specific reproduction and they aren't familiar enough with the codebase to debug it themselves, unfortunately. They're trying! To be clear, I 100% believe that there is some kind of leak affecting some specific configuration of users. That's why the discussion is open and we're soliciting input. I even spent about an hour today on the latest feedback (posted earlier today) trying to use that information to narrow it down. No dice, yet. If anyone has more info, we'd love to find this. :)
- withinboredom 9mo agoValgrind won’t show you leaks where you (or a GC) still holds a reference. This could mean you’re holding on to large chunks of memory that are still referenced in a closure or something. I don’t know what language or anything about your project, but if you’re using a GC language, make sure you disable GC when running with valgrind (a common mistake). You’ll see a ton of false positives that the GC would normally clean up for you, but some of those won’t be false positives.