Show HN: Save Memory in Google Chrome
one-tab.com
one-tab.com
RAM is now fantastically cheap. 16GB of DDR3 costs less than $120 in either DIMM or SODIMM format, so there's little reason not to load out your machine with far more memory than you'd practically need.
I'd like software to use more memory, not less - for the vast majority of the time, most of my RAM is unused and my disk is idle, so why not use an aggressive strategy of pre-emptive caching?
http://superuser.com/questions/40113/does-installing-larger-...
Depending on the complexity of the web pages, having 100 open tabs can easily cripple a brand new laptop with 8GB ram.
So ... it's not a technical problem.
Don't project your UI limitations onto other people please :)
And then everyone will continue to write code without regards to memory usage, and we'll be complaining that Chrome 45 locks up 19g per tab, and people with your mindset will say it doesn't matter because 1TB ram chips are cheap enough at $400 to just upgrade.
Just having loads of stuff using RAM takes more time to manage. I would not have imagined in 2013 with 16G of RAM and a > 2ghz multi core processor that I would still get system hangs and beach balls in my OS, but I do.
Unless you simply can't install more RAM without buying a whole new laptop. That's certainly the case for my laptop; its Intel i5 only can address 8GB max.
Memory is cheap, but buying a new laptop sadly isn't, especially when it's a decent development machine, and a step above standard consumer configurations.
I've had a recent incident in which Chrome was consuming about 7GB of memory, just because I had about a hundred tabs open! It was really, really, insane. This reckless disregard for memory usage caused more problems in terms of performance, and it wasn't apparent what was happening until things started OOM'ing. (Swapping is really just as bad as an OOM - the computer's practically useless if it's trashing due to low memory.)
Your ideal situation of having more memory used will, in many cases, lead to degraded performance.
That is a lot of tabs, though.
If a hundred tabs is not really a lot, what would be? 250? 1,000?
It would be like me arguing that driving my car with the parking brake on makes it get hot, of course it does, it's user error.
There's no reason I should be fighting against my browser because my optimal workflow causes it to chew through memory!
My laptop's motherboard can't handle more than 8GB, so I don't even have the option of putting more RAM in it as it already has 8GB. Also, I shouldn't have to keep throwing in memory to handle applications whose coders feel it is fine and dandy to gobble memory with reckless abandon. Why should I bear the financial cost of a poorly designed application?
I'm most certainly using my tools properly whether you agree or not. I'm not bitching about 5,000 tabs causing excessive memory usage, I'm complaining about 100 which is not that many during research that requires going from page to page, or opening lots of links without having to remember where I was at in each part of my stack; I've got less working memory than my computer!
10 tabs yes, 100 tabs no!! Stop arguing, even your computer's telling you the same thing :) you're just bent belligerent snd acting like a spoiler child. You're browser can't do, so you maybe should find a different way. As I've suggested.
Maybe you don't need to have 100 tabs open. Maybe you lack imagination to see scenario where having that many tabs open.
It is also possible that you are aware of some great/better way to solve similar scenarios than me, but I guess you are keeping it a secret, since I regularly evaluate new plugins and extensions, and also search google for tips and tricks, how to do it better. (And to date haven't found a way)
Sure I could work with less tabs. Hell Everything could be done with only 1 tab in 1 window (and I used to in the 90s), but it's not as efficient as what I do now.
Edit: major spelling errors.
the ideal number of tabs roughly corresponds to the human stack size, plus a couple for on-going apps like gmail. If you need more than that, you should consider a better mechanism than the browser. Since you haven't found any, I posit that its you who lacks imagination. If you found my comment insulting then I am sorry.
Although once the favicons disappear, I usually open a new window, or group windows by subject matter. I've tried to alter my browsing habits over the years to ease the load on my computer, but I've just come to accept that I am just one of those people.
This tool is either the best thing that's ever happened, or it's about to exacerbate my problem 10 fold.
However, I don't really see why there needs to be a strict limit on the number of tabs you can have open before your browser starts trashing all your memory. This is a problem that can be solved by designing your software to deal with that use scenario, either by pausing unused pages and serializing the resources to disk or by disposing of the unused pages entirely without removing the tabs. You'd want a pref for this, but it seems entirely reasonable to me.
Maybe what we need is Chrome/FF to consider the very high tab count as a use case and handle it better, when you have so many tabs it's not easy to find the 1 in 100 that you're looking for, we would need a new find tool, possible the browser should build a client side tf/idf index and make the whole working set (workspace) searchable. You see what I mean? Until the browser changes to support this usecase, the usage will be klunky and fraught with problems.
It also features Panorama built-in, which lets you search through all the tabs. It's as simple as Ctrl+Shift+E, type your keyword.
As someone else itt already said, a better solution would be some improved bookmarking system that I can use to just file away a tab, knowing that it'll be there when I need it, as well as offering the option of, I dunno popping up for review in a couple of days or a specific time maybe.
One thing I do not understand is why modern browsers, apart from bookmark-folders do not offer tags as well. They were a hugely successful way of ordering things back in the day and they have all but disappeared for some reason. And they would be tremendously useful in bookmarks (to me). And del.icio.us is dead, plus I don't want a web service to keep my bookmarks, it's too slow.
You probably do still have a 32bit system so you're still capped at 4GB of useful memory. I'd still upgrade my system if I were you.
This is a fairly common problem: http://superuser.com/questions/308310/what-limits-a-motherbo...
2. The form factor may also impose a limit. You won't find a DDR stick larger than 1GB, for example.
Of course, if either of those were the cause of a 2GB limit, then you could make the case that the whole system should be upgraded, but that's a lot more expensive than a couple of sticks of RAM.
Granted, you could have multiple tasks ongoing in parallel, but are you really working in parallel at that point? If not, save the tabs and return to them later. I really doubt you are visiting all 100 tabs on a regular basis so as to merit they stay open at all times.
I've seen way too many people use their browser as a sort of todo app, by virtue of "I'll open a tab for this so I don't forget to do it later" -- hell, I do this too -- but that's not at all the intended usage of a browser, and so naturally, it sucks at it.
Also, if I need to click on a whole bunch of links that I know I'm immediately going to evaluate, it's faster and easier to click on 50 links in one go than to click, evaluate, close, find my old position, click, evaluate ...! I'm someone that likes to batch tasks because I find it more efficient.
Opening that many tabs isn't something I do every day. I've only got seven open right now, which is normal-ish, but sometimes I need it and I know I'll need it again soon.
(On a side note, I can't really figure out why but I hate the term smell but it triggers a visceral reaction and wish it'd die a horrible death!)
It is very possible to do a lot with less memory.
I do understand at times you want to open many more than that for a limited time, but those situations (at least in my experience) are typically very short-lived and don't represent my ordinary common usage pattern.
[and yes, smell is supposed to invoke that reaction! a code "smell", or process "smell", etc. is something that stinks, and it should disgust you, and you should work to clean up the 'smell' ASAP! :)]
... because if you do it only occasionally it uses less memory? :-/
> [and yes, smell is supposed to invoke that reaction! a code "smell", or process "smell", etc. is something that stinks, and it should disgust you, and you should work to clean up the 'smell' ASAP! :)]
Yes, Mother.
But not anymore. They change. There's tons of them. And organization sucks, though FF isn't as bad as Chrome and IE, but the general paradigm of shortcuts needs to be re-evaluated. I don't like web-based services (for many reasons), and I've yet to find a fitting extension that works for me.
So yeah, I can see how this usage pattern has arisen, but I think the answer is ultimately up to innovation that has sadly yet to occur.
Also interesting that Chrome never added an option to sync bookmarks to the Google Bookmarks web service.
I hope you didn't really try to say "there's nothing wrong with browsers' memory usage, as long as you don't stress them too much" ? :) :)
I'm sure there's no way you could effectively work that way, but imagining that what's true for you is true for everyone is a massive smell for ignorance of other workflow styles and cognitive abilities.
It's a bit silly, because RAM and storage seem to be the only things most people need more of on a daily basis. I suspect 5 year old CPUs would meet most people's needs just fine.
this is the logic of someone willing to adapt to the environment around him. While the best solution would be more efficient programming, consumers are best served to max out their RAM and work with what they're given.
> this is the logic of someone willing to adapt to the environment around him.
How is this true? OP is saying devs should dump their app into memory and that devs need to adapt to OP's limitless RAM.I agree it should not be an issue, but when the usual short-sighted budget issues are the primary problem, one has to use other tricks:
"You mean the 3 year old machine you work on for 12 hours a day is no longer good enough? Sorry, that does not fit the depreciation model. Also, we spent all the budget on new MacBook Airs for Sales, because they really needed new web browsers."
But then again the HN bubble also thinks my mother knows "Twitter Bootstrap" by name.
This is Not A Good Thing. This is people throwing every last feature -- even if it has a pile of 800kb of DLLs/SOs attached -- into every app, with no regard for memory.
I find my system thrashing almost daily at this point. I need to upgrade. Two years ago, running predominantly the same software, 4Gb was just barely not enough, and I upgraded to 8Gb. And two years before that, cut the memory requirements in half again. And again, and again, until you get back to the 1Mb of RAM I had in 1990.
There has been a trend to do exactly what you say you want for 30+ years. And you know, some of that extra memory has been used to great effect -- we can do a ton more now than we could in 1990. But a lot of it is wasted, just Because It's Easy.
And that wasted RAM means pointless upgrades every two years; 99% of the bloat at this point is for something I don't need or want. The ONLY valid reasons to need 16Gb+ are if you're actually using that much data in one place -- a server that needs to scale, for instance, or editing video, or maybe a game that uses crazy amounts of data and/or video.
That the same apps are bloating 2x every two years -- and as a result get slower, since hard drive and memory speeds certainly aren't doubling every two years -- is really unacceptable laziness on the parts of companies and developers in general. It's pretty much the opposite of a Good Thing.
Shared Objects are not too bad, since they are shared between all processes that use (the same version of) them. In fact, the apparently worst case of linking them "into every app" is only slightly worse than having them appear in one app each. Assuming they are not all in the working set of every app at once, the overhead is small. Great OS technology!
I think the main technical problem with code/feature bloat is the increased likelihood of bugs with every additional line of code.
The problem is that one app wants the Mono/.NET runtime, another wants Python, another is using Java, another is using a huge pile of Visual Basic libraries...and then every app ECOSYSTEM has its own pile of dependencies and libraries. And on Windows, to avoid DLL-hell, everyone pretty much ships their own version of libraries to ensure compatibility (and if you're on Mac, the story is pretty much the same there -- apps don't share anything but OS services -- it's only on Linux where you can rebuild everything that people dare share versions, and even then another commenter just pointed out there are bugs with that too).
Java/Eclipse is probably my current worst offender, and Firefox is still greedy (though it's gotten better -- and Chrome is just completely broken on my system right now for whatever reason). Both are actually worse than the (bloated) Visual Studio that I need to run to develop Windows apps. And then of course there's Firefox (which has gotten better) and other various apps I'm running just to do basic development.
Eclipse makes Visual Studio look lean by comparison -- but if I want to develop for Android, I have to work a lot harder to get an alternate environment ALMOST working as well as they've got Eclipse configured to work.
Sounds like you're on Linux or Mac, and not doing as much GUI development as I choose to do. Looking right now Eclipse (the GUI from hell) alone is using 608Mb of memory. I know it has a lot of useful features, but 608Mb is a crazy amount of memory to use for a fancy text editor.
I'm also using Notepad++ with tons of plug-ins, and it takes up <10Mb. Eclipse does more, but really, does it do THAT much more?
And SKYPE is taking 90Mb to sit idle. I use Skype to chat with business clients, so I can't easily just toss it, despite that Pidgin is using 21Mb to connect to 4 different chat networks simultaneously and Skype only connects to one...
The list goes on. And I need to upgrade to 16Gb soon (though looking at the memory usage right now, shortly after a reboot, I'm "only" at 4.1Gb, so it's not critical yet). Sigh.
Chrome, in particular, is generally be used for far more tabs (I have like 30 open right now on a MacBook Air) and increasingly complex web sites every year. It's easy to look at memory usage and complain, but the fact is that our usage and the size of the pages we're loading is also rising rapidly. If you loaded Chrome from two years ago and used it how you work today, you might not find the memory footprint that much better than the current version.
That's assuming you're using a computer with user upgradeable RAM, and not a new macbook pro.
But if you have to buy a whole new machine every two years when they only pieces of hardware that are getting better should be upgradeable (ram & display) it's pretty disheartening.
The ram upgrade procedure for the new MBPs is backup, Craigslist, Apple Store, restore.
It objectively doesn't make your program run better to waste RAM.
If RAM usage goes up 2x every two years but RAM and hard drive speed go up 20% in the same time period, then using more RAM when you don't need it is making programs more sluggish to start and to suspend to disk, and it's making computers draw more power while sleeping (to keep that much RAM alive -- the D in DRAM means every bit in the RAM needs to be refreshed continuously).
From what I've read, an SSD has an expected life of about 1-2 years. Aside from not being able to afford $2500 JUST for an SSD to hold my data [1], I can't fathom paying that much every 1-2 years as the drives die. Not to mention downtime and potential lost data (between the back-up and the failure).
I'd love to have an SSD. In a year or two, I probably will, as the costs will likely drop.
But until then, yes, the performance has objectively dropped.
[1] http://www.amazon.com/OCZ-Technology-2-5-Inch-Performance-OC...
Quality is measured on multiple axes. RAM use is only one of them. CPU use is another, for example, and it's often the case that reducing CPU use requires increasing RAM use.
[1] One can't easily buy a 64GB DIMM today, but Moore's Law is swift and mighty.
http://httparchive.org/trends.php?s=All&minlabel=Mar+15+...
And yes, that's pure raw bloat. Sites haven't gotten richer content the past 2 years, they've just put on some weight.
Sure I don't use it for modern gaming and sure I've delegated tasks to much stronger uni machines a few times in the past but other than the occasional hw problems due to age it still works and is mostly enough...
We have come to understand that developer time is vastly more valuable than computing resources in the overwhelming majority of applications - the only real disagreement is how many orders of magnitude of inefficiency we consider tolerable. Even the most resource-constrained applications are using higher-level languages and computationally inefficient designs, because it's much easier to spec a faster chip than a smarter dev team.
Most applications aren't getting significantly slower. Web browsers are a perfect example of this; Almost every aspect of their performance has improved vastly over the past few years, but as a result we're building much more sophisticated web apps and doing things in the browser that were once purely the domain of highly optimised native apps. It's a near-perfect example of Jevons Paradox. Improving the efficiency of a process reduces the cost of the output, which leads to increased demand for the inputs to that process.
My current computer has 700,000x more RAM than my first computer. If 99% of that memory is wasted, I'm still doing pretty well.
>We have come to understand that developer time is vastly more valuable than computing resources
I get that, but still, 30 servers is pretty expensive. Having a full time engineer just to manage the cluster and write load balancing code is pretty expensive. Having down time because of a usage spike is pretty expensive. I'd rather pay for the smarter dev team myself, but I'm an engineer, so I'm biased.
Though fundamentally I wasn't talking about servers above. I was talking about desktops, and mostly Windows desktops. And having to install Python because that's what one developer prefers, and .NET because of another preference, and Perl because of a third, and Ruby because of a fourth, and Java because of a fifth...where does it end?
My own "scripting language" of choice is Lua. It's TINY, it's faster than all of the above (except, under some circumstances, Java -- but give Mike Pall another year or two and I bet LuaJIT will be beating Java in all the benchmarks instead of just many of them), and using it gives developers that productivity boost you're rightly saying is important.
And if you need more speed than Lua can give you, Go is a good option, if it comes to that. But as you point out, not every app needs every cycle.
[1] http://blog.iron.io/2013/03/how-we-went-from-30-servers-to-2...
I used to carry around a laptop with 128MB RAM. In 2010-2012, I had 1GB and was happy with it, but I had to adapt:
- Try a tiling window manager. You'd be surprised how many resources it takes to draw those window decorations, which not only saves RAM but also helps you focus better.
- Try a lightweight browser like LuaKit, dwm, surf, etc. Most of them are Webkit-based anyway, so there's not many problems. Plus, a keyboard-driven web browser is a hoot
- Try using emacs/vim instead of Word or OpenOffice. Thanks to LaTeX, I haven't touched a huge office suite in ages.
- Instead of having lots of programs open in the background, why not try some command-line equivalents? If you're not on windows, you have access to a world of utilities: music players, todo lists, file managers, etc.
Now I'm on an 8GB machine, and even under heavy load, I don't think I've ever come close to reaching that limit in the six months I've owned this box. (I don't have any swap space either)
Sure, but IMO it is the height of hubris to assume that your application's space-time-trade off to gain a few ms here or there is vastly more important that every OTHER application I am trying to run.
Play nice.
You are right that using RAM is preferable to using disk; however, nobody is talking about disks here.
Using a lot of RAM is bad because it makes you slow: pretty much everything, from paging to hash table lookups, works faster the lesser data there is to process.
Minimizing RAM usage is a very worthwhile goal if you want to be faster.
Sometimes people run other heavy programs alongside a browser: games, IDEs, etc. These tools also assume that RAM is cheap and use lots of it.
At that situation an extension like OneTab becomes very handy.
It's somewhat ironic than opening Gmail in Google Chrome seems to consume roughly the same resources as Microsoft Outlook....
And even in the first world there are a lot of miserly corporations that penny pinch on things like RAM.
If software that wants to target either of those markets can be made more hardware efficient, it should be.
Since caches are up to 100 times faster, it does impact the reactivity of your program, in fact quite a lot.
Also, good luck figuring out how much is "as much RAM as possible without having to swap out".
I was fortunate to get a new work PC recently which has 4GB of RAM. Getting it upgraded (even if I bought the memory myself) would likely take another three months of requests and I suspect would be limited to a maximum of 8GB anyway.
I could certainly benefit from reduced memory usage while still being able to go back to all those tabs. My overall system usage was 15 GB and with any more stuff I risk losing everything (since I'm not using a page-file).
This might be a very specific use-case, but I do see a lot of value in the extension. (Now, only if I could further hack my machine to use 32 GB :>)
I refuse to compromise on functionality because Chrome can't get its memory deal together.
(edit: this seems to measure the size of the installer binary. I think you wanted to link https://areweslimyet.com/ which shows Firefox using <512MiB with 30 tabs for popular websites open)
Firefox definitely wins out in memory with more tabs because Chrome's process-per-tab model accumulates overhead for every process, while Firefox's tabs are more lean.
The underlying problem here is workflow.
People are leaving tabs open as a reminder of things to which they intend to return. (Regardless of whether they will or not; that's another discussion.) And they're not bookmarking, because bookmarking begs organizational overhead, which leads to its own mess. (neither tags nor folders are great or sufficient)
And who knows if a bookmark will still point to the content you intended, when you finally get back to it?
So the problem is ultimately that bookmarking is broken, both for quick reference and longer-term storage. So why not fix that?
Why not a system where bookmarking a site saves a copy to a (cloud-stored) cache. [1] And then searches can be done on the content in that cache. And hits can be served both from the cache, and a simultaneously downloaded 'live' result, available with a toggle. [2]
So that one can bookmark a brag-post about a neat jquery-enabled dropdown list and not have to worry about categorizing it, nor whether or not it will be there in a year, and be confident that they can refer to it again with a simple search of any of the key words that occur to them. [3]
[1] Because one can never know what will happen to content online (changes, broken links, takedowns, etc) and doing a federated search across thousands of bookmarked sites looking for 'jquery dropdown' is going to be a nightmare.
[2] Room here for a great feature of non-trivial difficulty: change-detection and display of diffs (if any) rendered in-line.
[3] Or even searching by meta-data such as date-of-bookmark, location or source-device. "That thing I was reading on my phone last spring, when I was stuck in Chicago on business..." can be surprisingly useful when searching.
Because it wouldn't consist of randomly spidered or submitted noise. It would only be things explicitly identified as useful or interesting.
And you could rank by how many people bookmarked it, when the bookmarks happened, who they are, etc -- alongside already-useful PageRank attributes.
It'd be like +1 data, but the +1 would have meaning behind it.
The very creation of a network of mannequins would seem to run counter to the big goal of most SEO (traffic, now) as the mannequins would require months-to-years of seemingly-valid traffic of build-up to become relevant and then a very slow-and-cautious release of bookmarks to the desired spam to even attempt to avoid detection and thus nullification of all the preceding effort.
And the user-expectation of such a search would be heavily weighted to prior personal activity [1]. So even if mannequins were successfully pumping bookmarks to promote some site that just scraped stack-exchange, if you and I were bookmarking stack-exchange, we should always get the real links bubbling to the top.
[1] Yes, this would raise a lot of the same "echo chamber" concerns that people have with Google search, but if it matches the user expectation, I don't see a problem with it.
1. I bookmark lots of sites but rarely go back to them (mainly because it's hard to find what I'm looking for)
2. Sometimes I spend ages looking through my history to find something I remember seeing but didn't bookmark
3. I leave dozens of tabs open because I think I'm going to refer back to them but 50% of the time never do. The order and which window they were grouped with is info I need for context.
So I want -
1. a full-text search of history or bookmarks (I haven't decided which)
2. someway to really quickly convert my open tabs to history/bookmarks
3. A psychic computer that knows when I meant to bookmark something ;-)
I know some extensions can help with this but I've never found the ideal one yet. Suggestions appreciated.
Though the logistics of cloud-storing every single page every user visits would quickly become non-trivial.
And your want #2 seems like a simple UI task. IE already has/had a "bookmark all open tabs"-style menu option -- and I thought the others did too, but I'm not seeing it at the moment.
https://kippt.com http://pinboard.in
Pinboard already has archiving, Kippt archiving is in beta.
Still, there's room for improvement.
"Infinite pages" are also breaking search. Google finds a hit but you die of boredom before you can actually scroll down that far....
Me, I'm a documentation-holic. I need to have all the references for whatever project I'm working on a single click away. Sometimes that will be working with a very specific library, so there's no point in replacing my entire bookmarks bar with all the documentation links for that. I'd normally just leave everything in tabs, and when I run out of memory when I need to launch a memory-heavy app, I'd go to Chrome's Task Manager and kill those tabs. So this is a godsend for me.
But as long as no browser does that, OP's option looks like a huge timesaver for me.
End of the day: save it to your project folder where all other project files live. Later when you work on the project again: double click to reopen all your tabs.
"Bookmark All Tabs" is nearly there, but I also tend to forget about it if I don't see it.
For instance, your workflow doesn't work for me because "bookmark" in my life pretty much means "lose this page in my junk drawer of pages that I'll probably never read again, but I might if I'm ever stranded on an island with nothing but my cached bookmarks."
So I have a completely different workflow that you'd probably find equally extraneous, but it works for me.
A few FAQs:
1. The OneTab tab persists even if you close your web browser. 2. If you ever close your OneTab tab, this doesn't lose your tabs. You can always get it back by clicking the blue extension icon. 3. Your tabs are never sent to our servers unless you press the button to 'share as a web page'.
What happens if I click it, close it's list tab, open some new tabs and click it again? Does the old list get overwritten? Is there any way to get it back?
If you accidentally close your OneTab tab, it will reappear when you click the blue extension icon or when you restart your web browser.
I had six windows open each with some tabs related to a specific task. Used OneTab on one window and then tried to use it on another and it looks like the window just closed. Took me a minute to release the OneTab tab was on another window and another to find the right window. Not sure if this needs to be fixed or anything but maybe allowing a OneTab tab on each open window would be less confusing.
As for the suggestion, it would be nice to be able to give each tab group a name instead of just showing the number of tabs. Could be useful on the shared web page as well.
Thanks again!
Opening a new tab by holding Control instead of right click->new tab opens the page, decreases the tab count in that group, but leaves the entry on the page. Fixed with a refresh.
A bit of feedback: I was just typing this comment and hit the button, obviously the comment was lost and had to type it again. Would be great if if checked for focused inputs or textareas or something before closing that tab, or that it restores the tabs them with the content.
Another idea I can think of is to "close" all the tabs that are NOT the one you currently are in, or "close" all the tabs on the right of the current one.
Anyway, thanks
http://blog.chromium.org/2008/09/google-chrome-memory-usage-...
"Measuring memory
If you're measuring memory in a multi-process application like Google Chrome, don't forget to take into account shared memory. If you add the size of each process via the Windows XP task manager, you'll be double counting the shared memory for each process. If there are a large number of processes, double-counting can account for 30-40% extra memory size."
I find it very strange that a tool exists to reduce chrome's memory footprint by closing tabs. This does not seem to be the right solution to any problem I can think of.
If memory consumption is what bugs you, maybe you should use a browser that consumes less memory per open tab.
If the number of open tabs is what bugs you, then you are probably using tabs as temporary bookmarks. There should be tools especially for this job. Some sort of "read-it-later" list comes to mind.
"one-tab" looks like some sort of read-it-later list that is labeled as a memory saver. Fascinating.
So in a sense, One-Tab is indeed a memory saver. Not by really reducing Chrome's memory usage, but by plugging the workflow gap that induces users to use Chrome in a way that consumes enormous amounts of memory. (And the selling tactic sure worked, seeing as there's 200 posts on it here in two hours.)
The use-case is slightly different, though--instead of being an en-masse "dump these things out of my sight" button, I basically wanted a single-page "bookmark" that works more like the real kind you use in books, where the two fundamental operations are:
> "Open, remove the bookmark, and restore reading to previous position, atomically"; and
> "Save position, create bookmark, and put away for later, atomically".
If you want, though, it can still give you the same effect of "hammer the button to 'put away' a window's worth of tabs."
On the other hand, the bookmarks Pause Tabs creates [despite just being regular bookmarks] preserve of your vertical-scroll position on the page, which is kind of nice for long documents. I wonder why that isn't a "built-in thing bookmarks are just expected to do", actually.
30 tabs opened simultaneously (with AdBlock, Ghostery and Disconnect), alongside Thunderbird, Emacs (+daemon) and a full DE run up to 1.8GiB of RAM used on my machine, which is everything but fast, new, or fancy. Consequently, I still have 2GB of RAM remaining that are not directly needed (and hence used for caching by the OS).
I'm writing all this from a Core2Duo laptop, so really, when exactly does any computer bought at the same time (or since) have actual problems of running out of memory? I have not experienced such problems in years on anything other than a Raspberry Pi. Is this a problem that really needs solving?
Feel free to point me to use cases where this is essential or useful, for I cannot see any.
Ah yes, I remember the days being a dev that didn't use VMs. It kinda sucked as a development environment that said: no easy way to test software on different OSes locally, no easy way to try other software which you don't necessarily trust in a confined environment (to see if it may be worth using, in which case you'd look into the trust issue more closely), etc.
If you're a dev and have "enough RAM" you're probably not trying hard enough ; )
VMs tend to use quite a lot of memory and tend to be very useful for knowledgable devs.
You asked and seemed so cocksure so these were my 2 cents...
I don't doubt that you can manage to fill an arbitrary amount of RAM running multiple browsers, VMs and other programs, however, I do fail to see how that in turn enhances (or constricts) productivity. Multiple VMs? Sure. Multiple browsers? Sure. Multiple VMs and browsers? Sure. Multiple VMs, browsers and multiple dozen tabs? I don't see a use case here.
If you have multiple multi-gigabyte VMs running, chances are its not your brower's RAM usage that is hamstringing you by using all available RAM.
edit: I'm not saying I don't see a use case were theoretically there are tangible limits on RAM which become a problem, but to me, it remains exactly that: theoretical.
In general, my machine has 8GiB of RAM and low-memory thrashing / out-of-memory errors are pretty much a daily occurrence. They're certainly not all Chrome's fault, but I don't think it is helping matters any.
> In general, my machine has 8GiB of RAM and low-memory thrashing / out-of-memory errors are pretty much a daily occurrence. They're certainly not all Chrome's fault, but I don't think it is helping matters any.
I suppose the choice of operating systems has to do with this as well, since a browser can only do so much if the underlying OS handles memory allocation in a less than ideal way. This at least sounds like it might a problem that is situated on a much lower level than your browser dealing with multiple tabs.
Would it not be more secure and safer to render this on some sort of local page?
Don't really see the need for this information to go to a third party server.
> Your tab URLs are never transmitted or disclosed to either the OneTab developers or any other party, and icons for tab URL domains are generated by Google. The only exception to this is if you intentionally click on our 'share as a web page' feature that allows you to upload your list of tabs into a web page in order to share them with others. Tabs are never shared unless you specifically use the 'share as a web page' button.
The only way the one-tab servers know about your tabs is if you click to 'share as a web page', which transmits your tabs to our servers to create a web page you can share with others.
Apologies.
Which information is sent to OneTab?
Ninja edit: note the disclaimer at the bottom of chrome://memory:
(Note: Due to memory sharing between processes,
summing memory usage does not give total memory usage.)Assumptions: each tab uses same memory; no shared memory (or shared memory equally divided between all tabs), every user has around 20 tabs open given the first 2 assumptions hold true.
To me, the 95% is a magic number.
Right click on any tab in a window and choose "Bookmark all tabs..." from the bottom of the menu. Or press CTRL+SHIFT+D.
This has the following advantages over OneTab:
1. You can add new bookmarks to the list at any time.
2. Bookmarks can be synced with google sync.
3. You can name the folder so you know what the list is.
4. Bookmarks are searchable in the omnibar.
5. You can open a single bookmark without it being removed from the list. If you don't want to keep it, just click the star in the address bar and then the remove link.
6. When right-clicking a folder there's an option to open all bookmarks in an incognito window.
I can't believe I've overlooked it for so long! I don't need any session management extensions now.
The one thing that's going to prevent me from using this regularly, though, is that once you reopen a tab, there's no back state. I find that some of the most valuable information that I can get from a webpage isn't necessarily the page itself, it's the process leading up to the page.
That being said, this is an absolutely beautiful Chrome extension and I commend the developers on what they've accomplished.
It is similar to OneTab but keeps the tab open (with Flavicon and Name) but just "parks" it after a time period. It saves back states.
As a heavy open tab users (we have a support group I've heard) I like it. Working with 4 GB of Ram is made much easier!
If you have a tab that you don't want "parked" after 15 minutes (configurable) then you just pin it. So Gmail and Pandora get pinned. The rest park themselves and reload on when I select them.
IMO the great suspender is better at solving this problem for me because (recalling from memory my experience with tabmemfree couple of weeks back):
1. The great suspender retains a visual snapshot of the page (along with title, favicon etc) thus helping me jog my memory about what the tab is about.
2. It uses a internal chrome:// URL to park the suspended tabs instead of using an external URL (http://). I am not saying that the developer of tabmemfree could be spying on the URLs being parked. But I am just not comfortable with the idea of parking my tabs using an external http service.
3. An explicit text format white list rather than relying on pinned tabs (which makes me lose the tab position, title etc).
4. Explicit option to suspend a tab or group of tabs (and bring them out of suspension) - instead of just relying on time-outs to suspend a tab.
It frees memory by taking a snapshot of the page and loading the image (instead of the DOM). This frees up a great amount of memory. It also persists the tab position, title, favicon (which are essential to me in remembering information about the tab). Clicking (or pressing Enter, F5 ..) on the image preview loads the page.
You can set tabs to be automatically suspended after a predefined amount of time. You can set tabs to be restored automatically on focus (unfortunately no time delay option here). You can white-list domains from auto-suspension.
For Chrome v25 users: The extension is having some stability issues which causes Chrome to crash (https://github.com/deanoemcke/thegreatsuspender/issues/30). But if you are using any version before that, it should work fine. It had become an indispensable tool for a tab hoarder like me. Waiting for the dev to fix the current issue with Chrome v25.
If the extension install is not working for you, it should start working later today once Google's webstore servers have updated
I love this. I don't get why people are being so negative on this thread. Also that discussion about the cost of RAM, is pointless. Who cares how much RAM/Diskspace costs. That doesn't mean we should be inefficient with our resources, because we can simply buy more for cheap. That's an excuse that lazy developers use.
That being said, I would love to know a few things about this extension (if the creators are here):
- Where is this list stored? On my HDD? In my Gmail Account?
- I would love to backup the list, so it doesn't get lost. I am accustomed to using Chrome's history, but that gets wonky from time to time and I have been in many situations where I expect the full history to be there, but it isn't for one reason or another.
- Will my One Tab list be there if I reset my machine? I assume so, but what if I close my `One Tab` tab?
Other than that...THANK YOU...for this WONDERFUL extension. This will easily be my most used extension - hands down.
https://chrome.google.com/webstore/detail/extension-gallery-...
It might be easier just to save them as bookmarks. Right click on any tab in the tab bar and choose "Bookmark all tabs" or press CTRL+SHIFT+D. Use the Split Tabs extension to break them up into local groups first:
https://chrome.google.com/webstore/detail/tab-split/imjbfepo...
I've talked more about the benefits of using just bookmarks here:
As a compulsive tab hoarder, I've been using Tab Wrangler for this same purpose for over a year and I believe its approach is far superior: it just closes tabs that you ahven't visited for a period of time. If you haven't been to a tab in ~20 minutes, likely you don't need it on hand. I can't know when I'm done with a tab until I've moved onto my next task, which means I'm no longer thinking about that tab.
Also, you can lock tabs, have a minimum number of tabs (I set mine to 5) and easily list any auto-closed tabs so you don't lose anything, though I find myself only needing to look through that list once or twice a week.
Anyway, Tab Wrangler absolutely changed my life.
Not my project, just think it's awesome: https://chrome.google.com/webstore/detail/tab-wrangler/egnjh...
I saw support for vertical tabs in Chrome that can be turned on, but I think that is experimental. The people that suffer from the memory problems are the people who really just need better tab management features. Maybe this is something for power-users that just needs to be handled with extensions.
Also being able to suspend and resume sessions better is a good idea, and this may help with. When coding on a particular thing, I'll have most of the tabs open that I need. When I get back into it it's just a storm of CMND-T and searching for the references I was using. Sounds like this could help with that.
Anyone willing to record screencast how OneTab fails at handling million tabs? :)
This also happens if Chrome crashes / I quit or force-quit out of Chrome and then restart. I don't really want it to open however many tabs I had open, I just want to be able to see what tabs were open. I would be happy with it creating the tabs with the title at the top but not loading it. Short of that, One-Tab is a decent way to help with this issue.
the mystery continues ...
1. Try to maintain state for all the content in the controls. For instance, if I'm on JSONlint.com with some complex JSON in there, I'd like for that to be there when I re-open the tab. So, simply storing historic reference and reloading the pages doesn't add so much value for my use-case.
2. Can you do the same with other extensions? I have a ton of things running and it would be nice to disable all on-demand via one-click. My memory consumption was still over a GB with all the running extensions.
Thanks & Good luck!!
So if a tab is dormant for a while, Chrome will throw it away. Then when you recall it, the next day or whatnot, it will re-load it.
For someone who typically has a hundred tabs open at any given moment, that would be a pretty cool feature.
In Chrome, you can right-click any tag and choose "Bookmark All Tabs". Occasionally, I do that to save open the tabs if I don't have enough time to read them all. Admittedly, OneTab has a simpler interface and conveniently closes the tabs for you.
One way you could keep the one-click-to-open functionality of tabs is to keep the tabs in a persistent vertical list of favicons along the side of the screen. One tab could remain open, and clicking another tab, or favicon, could replace the current tab.
Edit: Here's a mockup: http://imgur.com/pfYO7xY. You could have the title show up next to a tab on hover.
Open-sourced here: https://github.com/jsvine/tab-bankrupter
As the name suggests, it's aimed more at the mental — rather than computational — weight of tabs.
I'm no affiliated with whoever makes it (except as a user, I guess) -- but I did want to bring pre-existing alternatives into the discussion.
[1] https://chrome.google.com/webstore/detail/dossier/hohaaljbjh...
My main problem with this is that you can't order your tabs into groups - the extension may not even make a distinction between regular tabs and pinned tabs.
I wouldn't mind having a side tray or list of temporary bookmarks that I could easily add to, restore from, or remove. Then I would have 3 or 4 active tabs and about 15 inactive tabs and could swap between them easily.
I know it is possible with shift + cmd + D, as one commenter pointed out, to bookmark all tabs temporarily but that would get cumbersome if you were constantly changing out tabs.
I have 1GB of RAM in my Note and rarely run more than one thing at a time. FF for android seems to have a really aggressive unload policy.
[0] www.sessionbuddy.com
1. bookmark all tabs ⇧⌘D
2. in the file dialog create a new folder e.g. "foo"
3. (later) with Bookmarks > foo menu open, select "Open All Bookmarks in New Window"
Voilà
Thanks for sharing, though!
It makes sense if you are using a machine with limited memory or you want to leave one page open whilst doing something memory intensive, but it by no means is a 'useful' way to casually browse.
This extension opens the page again, loading it which leads to bigger time load.
Got the addon.Thanks and good luck!
one reason for me keeping chrome is the tab syncing works. Firefox offers nothing on iOS. safari only works whenever it feels like it.
or
Is it opensource already?
Now when is there going to be a version for Safari?
I have 2020 open tabs!
https://chrome.google.com/webstore/detail/tab-split/imjbfepo...
to get just the tabs I want to save, and then put them in a new list. However I think I'll stick with Session Buddy
https://chrome.google.com/webstore/detail/session-buddy/edac...
as it allows:
1. naming of saved sessions (of which I have many). It's list of saved sessions will be easier scan to find the one I'm interested in.
2. opening of saved urls without removing them from the saved session. This I would find infuriating due to the way I use saved sessions as a more powerful bookmark feature.
Also, if I closed the OneTab tab there didn't appear to be a way to bring it back without creating a new list.
Some features that I'd like to see in a session saving chrome extension:
1. Sync to my google account with chrome extension syncing. Sessions Buddy will hopefully have this in the next release but it's been in development for over a year...
2. Multiple saved session lists so I can separate sessions between e.g. work/private, or "things I want to get back to" and "archived things that might be useful in future."
3. Integration with omnibar searching.
1 and 3 Could be done by saving sessions as bookmarks, which is what FreshStart does
https://chrome.google.com/webstore/detail/freshstart-cross-b...
but I don't use that extension because of it's confusing UI.
After Edit:
I should have mentioned. The easiest way I've found to limit chrome memory is to firstly only enable the extensions I use on a day to day basis, and enable/disable others as needed using Extension Manager
https://chrome.google.com/webstore/detail/extensions-manager...
and then kill every tab process in the chrome task manager after chrome starts up. I usually have 90-100 tabs and currently have 142 tabs open. My system would grind to a halt if I didn't do this.
chrome://memory-redirect/