Ars Analysis Calls Windows 7 Memory Usage Claims "Scaremongering"
Via newsycombinator comes a reaction at Ars Technica to the recently reported claims of excessive memory use on machines running Windows 7. From the article: "I installed the XPnet performance monitoring tool and waited for it to upload my data to see what it might be complaining about. The cause of the problem was immediately apparent. It's no secret that Windows 7, just like Windows Vista before it, includes aggressive disk caching. The SuperFetch technology causes Windows to preload certain data if the OS detects that it is used regularly, even if there is no specific need for it at any given moment. Though SuperFetch is a little less aggressive in Windows 7, it will still use a substantial amount of memory—but with an important proviso. The OS will only use memory for cache when there is no other demand for that memory."
Though SuperFetch is a little less aggressive in Windows 7, it will still use a substantial amount of memory—but with an important proviso. The OS will only use memory for cache when there is no other demand for that memory.
I really wonder when people will get this. In the earlier thread I saw people commenting that Windows 95 didn't need so much memory and so on..
To state it again. This is not RAM memory you need, use or have purpose for. IF you do need it, it is zeroed-out and free'd to application in like 30ms (one frame in usual FPS games).
If you have fast memory, do use it to it's full extend.
Really? 30ms. Shit that's slow.
This IS RAM we're talking about here, right? y'know nanosecond stuff, 10^-9 not 10^-3 seconds.
Deleted
I think it's just a sign of the times. I regularly bump up against my 2GB ram limit (once a day) if I have GIMP/Photoshop open, 3 or 4 Chrome windows open with 10-20 tabs each (many of those being youtube videos), usually a videogame in the background (Windowed No Border mode at full or almost full screen resolution rules), along with whatever else I'm doing, a paused VLC video, steam, and any other background apps + whatever I'm working on currently. This isn't a problem in Win7, it's a problem of Leaving a Bunch of Shit open all the time.
moox. for a new generation.
Sure, I know if my compiles seem to be slow there's nothing better for improving my productivity than diving into the cache.
In any case, if you want to compare OS cache performance you might at least try to use the same compiler and the same language on both machines.
As I understand it, it doesn't cache data, it caches applications (and I think also fonts and other often-used things). So startup time for your web browser, e-mail client, IM client, and any other applications you use often will be much faster. For example, Google Chrome loads almost instantaneously on my system, from a cold start. It won't keep a memory cache of things that applications do, and hence it won't speed up compilation, rendering, etc.
For that matter, 2GB of RAM isn't a whole lot to cache with when you think about it. The sweet spot for Vista/Win7 is really around 4GB or higher for SuperFetch to really shine.
Screw the rules, I have green hair!
How would you do either of those activities with Linux. I know you can cat stuff into the cache, and you can control the "swappiness" and something about dirty inodes in proc/sys, but how could you say "I want this file to be in the cache no matter what" or "what files are in the cache" other than by creating a ram disk and putting them there (and then wondering why your ramdisk files are also cached because you used /dev/ram instead of tmpfs...) manually?
Can you be Even More Awesome?!
This is completely offtopic, but you seem to come with this message in every thread so I answer you one time here - I am from sweden, not uk.
Seems to use 1.3 gig no matter what I do. It's got 4 gig total. Boots in less than 2 minutes. It makes mistakes a lot faster than the old machine, which was just shy of a brick when I switched.
How about a moderation of -1 pedantic.
I see what you did there. However, the alarming claim was misleading. W7 has a dynamic memory utilization, that's pretty much it.
And though your English has some minor mistakes every now and then, it's not like you are writing in such a way that we cannot understand you. Your English is better than my grasp of Spanish by many miles. Congrats.
SSC
It's not "hogging" memory if it dumps it the second you start up a program that needs it... It also doesn't make your system "appear" faster, it makes it faster. I paid for all that RAM, I don't mind it being taken advantage of; that's why it's there in the first place...
In any case, if you want to compare OS cache performance you might at least try to use the same compiler and the same language on both machines.
Use Visual C++ on both machines? Good luck getting it to run in Wine.
Use GCC on both machines? The last time I tried GCC on Windows, it produced bloated binaries for any C++ program that uses <iostream>. A quarter megabyte for Hello World, on two platforms (MinGW targeting Windows/x86 and devkitARM targeting GBA/ARM7)? Give me a break.
Linux uses available memory for cache, and rather aggressively. All available memory can be filled with cached file blocks. This happens routinely on systems which have big randomly-accessed files open, like databases.
There's nothing wrong with this, except that, once in a while, Linux hits a race condition in prune_one_dentry, causing an "oops" crash, when there's an unblockable need for a memory page and something is locking the file block cache.
This is one of the Great Unsolved Mysteries of Linux. Linus wrote about it in 2001 ("I'll try to think about it some more, but I'd love to have more reports to go on to try to find a pattern.. "). As of 2009, this area is still giving trouble. The locking in this area is very complex.
If one byte takes 10^-9 s, a million bytes take 10^3 s.
Only if you do them one at a time, one after another, waiting till each had been cleared. That'd be... Wait this is Microsoft we're talking about here... Carry on.
Deleted
Windows 7 is sucking up your system memory to make Windows appear faster.
So windows has a feature which makes everything run faster and yet it only "makes Windows appear faster", instead of making it actually faster?
It seems to me that windows is only using hardware in a rather intelligent way: if it's not being otherwise used or needed, it uses it to boost performance.
Linux does the same thing, as far as I know, and you don't see anybody calling Linux a memory hogging OS.
As has been pointed out, prefetched data is dropped if the RAM it occupies is needed in an infinitesimal amount of time, is your life so short, or your tasks so time sensitive that 10 or 15 ms is really a big deal?
Keep on knockin'
https://robbiecrash.me
Everyone knows there's a shadow-bus on the motherboard that only open source operating systems have access to.
Describing caching as a way Windows makes your computer "appear" faster is really a little disingenuous. If that is the only metric for your complaint then you should be angry that your processor caches as well. After all, your processor takes the time to check two or three caches every time it issues a move instruction. If it misses every time, then it has to pick what to throw out of the cache and read directly from memory. Wouldn't it be so much better if it just made a fetch to ram every time there was a move instruction? After all, your processors caches only "appear" to make your processor faster right? The question that people should be asking if they want to get upset about SuperFetch is does this approach to ram use benefit the user enough to be worth the extra complexity in the operating system's memory allocator.
Yeah much better to not use the available free memory and just keep loading the same things off the slow disk over and over again.
That way you can always 2GB of free RAM!
And it doesn't make Windows "appear faster", it makes it faster. Caching is one of the oldest performance optimizations in computing. Everything uses it.
The linux box I have here would drive you crazy:
# head -4 /proc/meminfo
MemTotal: 8156032 kB
MemFree: 51000 kB
Buffers: 59504 kB
Cached: 7584944 kB
People always mix up Sweden and Swindon
rewriting history since 2109
Programs and compilers have nothing to do with disk read/write caches, this is handled at the OS level.
Programs ask to read/write from/to disk and they have no idea where the OS get the data from.
You and the GP might be confusing CPU cache that has its own dedicated memory and disk cache that uses the OS RAM.
Everything I write is lies, read between the lines.
My intent was not to suggest the proper way to test cache performance. I was merely stating that any comparison experiment should hold all other variables constant.
if everyone is so afraid of their computer memory being used to the fullest, why do these people install so much of it?
I've got 8GB of ram in the machine I'm on at the moment, and I want the OS and applications to use it to the fullest and most efficient extent possible at all times. I didn't install a 64-bit OS and 8GB of ram so that I can see 6GB free at all times.
I want a new quote. One that won't spill. One that don't cost too much. Or come in a pill.
It seems a secondary problem using SuperFetch, is that the HDD is woken up, or prevented from spinning-down when it otherwise could have been. ie. Bad notebook/netbook battery life. Anyone with insight into this?
If Windows 7 actually uses that much memory it's not scaremongering, it's memory hogging. Whether it's using it on not is a pretty fine distinction, it's still using it just because it can. If something else needs it, Windows has to decide if it wants to let go of it or not.
So are you saying Linux, BSD, Mac OS X and pretty much every other modern desktop OS other than Windows XP are also memory hogs as well? Because they also do the exact same thing and use up all of the free memory for caching, marking it as available.
If Windows refused to use your RAM that you had installed, now that would be an issue. But fully using RAM? This, on its own, is not something to complain about.
The last article specifically said RAM was nearly exhausted and there was excessive paging to disk. No one cares if RAM is full or not, if it's unused it's wasted anyway. The concern is having 85% memory utilization and then paging memory out to the pagefile.
Or perhaps he was comparing proficiency at second languages ... (english as a second language vs spanish as a second language).
The only data in the article you refer to was captured data from XPnet that said that >90% of RAM was in use in Windows 7 machines. There was no data saying it led to swapping, that was supposition.
http://www.computerworld.com/s/article/9158258/Most_Windows_7_PCs_max_out_memory
http://lkml.org/lkml/2005/8/20/95
I think this is what redhat called their ReadAhead Manager (or something of the sort). I believe Ubuntu has or had something similar.
While it sounds like a good idea, it doesn't really pan out, it just makes your boot time longer. Who cares if you improve the speed of opening your browser when the rest of the OS finally loads. Lots of people only open their browser once each time they boot up anyways.
I'm not much of a fan of binary preloading, but the OS/caching memory model in linux does actually give you a huge and visible performance gain. This can be easily seen by trying to autocomplete all possible programs in bash under linux, twice, then comparing the same thing in MSYS (mingw32's linux environment) with bash.
*Spoiler* the second time you try and autocomplete the list it will be extremely fast.
This same effect speeds up directory listings, Open/Save dialog boxes (duh!), Traversing paths, the loading of frequently used binaries and libraries, and possibly the visualization of thumbnails in nautilus with image directories.
A good OS uses all the RAM, and allocates available free blocks of RAM to the programs as required.
However using the greater part of a gigabyte plus paging to the hard drive just to display the desktop and run the low level functions is inexcusable and points to either a) memory leak b) the OS is doing something legitimate you are unaware of, like indexing files, etc c) the OS is doing something illegitimate like sending the contents of your hard drive to someone in Redmond, the NSA/FBI or the RIAA/MPAA or d) your system has been compromised by a virus. I can't really think of any other possibility.
Seven puppies were harmed during the making of this post.
Isn't this how RAM is supposed to utilized anyway? I don't want my OS flushing out RAM if I'm just going to use the same data later on.
I have encountered people on /. that would like to put memory chips in their machine without having the OS touch it. We need to write a FAQ about this. ;-)
http://tech.slashdot.org/comments.pl?sid=1557492&cid=31213314
Everything I write is lies, read between the lines.
There used to be a ramdrive.sys but turns out the OS is smarter than us when trying to use RAM as a cache. Here's a reference to it in an article for troubleshooting memory problems: http://support.microsoft.com/kb/142546
Both articles miss some very big and important points. Back in the day of Windows 2000 and XP, the Task Manager chart reported the memory comit charge. Basically, that was the amount of memory applications (and Windows) requested allocated. This does not mean that much memory was actually used, but with the exception of very badly written/buggy programs, it should be close. As a rule of thumb, if you look at that and see that your commit is significantly larger than your RAM, you know you're probably in trouble and will be very reliant on swap.
Windows Vista and 7 report something completely different. The chart shows ram memory used minus cache, an almost useless metric, but it does not indicate how much 'total' memory, real and virtual, is allocated. If you look at the screenshot in the ars aritcle, you will see that the commit charge is over 3GB. That's a lot of memory, and doesn't include cache!.
At the end of the day, however, a bare bones Windows XP would require about 120MB of memory, whereas Windows 7 is around 1GB. That sounds like a big difference, but we are talking several years of new features and eye candy. Ultimately, when you drill it down, it means that Windows 7 requires $20 more worth of memory. An insignificant issue, so long as you keep that in mind when designing a system for Vista / Windows 7. (ie, make sure that any computer or device destined for those OS's have at least 2GB of ram)
I chose Spanish because that is the only foreign language that I have attempted to learn, not because of failing geography class. That last bit is why I don't think Europe is a country, just like some other people.
SSC
Actually, even XP had a disk cashe (like all the other OSes you mention, it was post-caching - storing data in case you need it again soon, rather than pre-caching things that you are probably about to use). However, as I understand it, the disk cache in XP was relatively small, and XP was (at release) used extensively on machines that really didn't have the kind of RAM it wanted. Therefore, it implemented an extremely aggressive paging algorithm, constantly writing memory pages to disk but not recovering them until it absolutely had to (even if there was un-allocated RAM). Not only did this increase I/O, but it meant that switching out of one long-running application (which has been allocating and freeing memory for so long that *everything* else got paged out) takes ages.
The up-side of this is that the main running program still looks pretty fast, even on a low-memory computer. That was the goal for XP. Unfortunately, it also makes XP hopelessly bad at managing systems with the kindof RAM you see today - it will still super-aggressively swap out memory pages for inactive applications, even if it could leave stuff in main memory and just re-use a portion of the RAM. Once that RAM is freed - perhaps because the program is closed - it lacks the sense to fill it up again with cached data that you might want soon (quite possibly including chunks of the pagefile holding data for one of the background processes the user is just about to click on and would rather see activate without 4 seconds of delay to pull paged memory in again).
That said, your point stands. XP's memory management is terrible for modern systems, and aside from the difference between pre- and post-caching, all other major OSes are "memory hogs" in this manner too. Unused RAM is wasted RAM.
There's no place I could be, since I've found Serenity...
Er, I think that Europe is a country. That's why.
SSC
The issue is not a simple one.
On the one hand it's potentially a good idea to use "unneeded" RAM to pre-fetch possibly useful in the future disk data.
But a whole lot of apps were written without that "feature", so a lot of them already pre-fetch data. Now you have twice the amount of RAM tied up, for no benefit.
And nobody can predict the future, so the pre-fetching is speculative at best, and has no way to compensate for other tasks the user may double-click into competion with ones being pre-fetched.
Worse yet, a lot of apps look at the amount of free RAM when they decide whether to prune their working set or make other cache/purge decisions.
If all of a sudden the OS reports less free RAM, all those apps are going to make the wrong decision.
XP has the same caching mechanisms as Linux. By default it uses 4MB of cache(per drive?), but if you enable the LargeSystemCache regkey, or change the setting in the System Properties, it uses all but 4MB.
The memory appears free in the XP task manager - but if you start a program up that you closed recently, it may start instantly with a minimal amount of disk IO.
If you have enough memory, I suggest turning Pagefile off. It makes it so every program is always responsive, because stuff assumed to be cached to disk is actually in memory. The downside is, programs often cache hundreds of megabytes of files they want access to, but don't currently need. This will now all be in RAM, which means you run out way easier. I've had TF2 crash from lack of memory when it hit 1.5GB/3.7GB, because of all the other programs sucking down RAM from the "VM size" column. This is the reason many sites call the XP "No Pagefile" option unstable - even though it works like a charm. When you do run out of RAM, there's nowhere for that memory to go. At least with Superfetch, you still have a Pagefile for when you do run out.
I doubt it; this *is* Slashdot, after all - nobody here gets laid.
*rimshot*
Thank you, I'll be here all week! Please - tip the editors!
These days I rarely see people putting together a system with less than 3-4 GB of memory, often as much as 8GB - and this goes for laptops as well. So if windows 7 wants to do something useful with all this memory, I say let it. My laptop runs W7 with "only" 2 GB of ram, but it runs everything I throw at it in a heartbeat. It should be mentioned that I'm not a gamer at all (except for the occasional round of minesweeper ;)), but still; your game won't utilize those 8 gigs of ram, at least not for anything really useful...
Smoother user experience by caching those files accessed on a regular bacis is a big plus in my book.
As someone commented on the last story a couple of days ago about this, if you don't want all your memory to be actually used, pull some of it out and put it in your desk drawer. What, you do want it all used? Well, that's what Windows 7 is doing, using all of it all the time, rather than leaving some of it unused much of the time. Oh, you only want it used for certain purposes? Why? If it's not being used for anything at the moment, using it for something is clearly better than that. And that's what Windows 7 (and Linux) do! If a more important use for it comes along, it repurposes it for that.
It might be irrelevant if we were discussing the performance of compilers on Windows vs. Linux, but that's not the topic. The topic was cache performance.
But to comment on your off-topic statements: Of course, you don't have to use VS to create CLI or GUI apps on Windows although most developers do. There are command-line versions of the compilers. Likewise, you can develop windows applications using compilers from other vendors as well.
For Linux there's a lot more than GCC available.
That Anonymous Coward is a very prolific poster.
"The agriculture ministry is not in charge of Gundam" - Japanese ministry official.
That'll be great the one time I launch Chrome/firefox this week.
Pretty much the only time a web browser gets closed on my system is when flash hangs. Same for almost all of the programs that I use daily - why would I ever exit them, when I'm just going to want them again in five minutes?
get this: _I_ dont NEED harddisk reads in the middle of my activities.
Then go back to DOS (or buy a quiet HDD). The rest of us understand that this is a multiprocessing OS which works even when you don't.
"I don't know, therefore Aliens" Wafflebox1
All good operating systems do this. My Mac, for instance has "inactive memory", which is not exactly the same as Windows, but close enough. If your memory is free, it's not doing anything for you. End of story.
I still cannot find the droids I am looking for...
Linux uses caches and buffers
Ubuntu is in orders of magnitudes far superior than Windows Vista running superfetch on my laptop with only 2 gigs in this area.
Firefox, netbeans, and openoffice runs under 1 gig and opens within half the time compared with running their win32 counterparts in vista which maximizes all the ram and then swaps them like crazy.
I do admit I am not a kernel hacker or anything but it seems superfetch is bad in the fact that Windows just pages everything to disk when it doesn't need too, which in return slows down superfetch as it likes to fill the ram, which than swaps it even more aggressively to disk and the cycle repeats. At least this problem seemed to be there in Vista and I hope Windows 7 is not as braindead. With machines with 4 gigs the problem is not nearly as bad but a laptop with a slow hard drive with only 2 gigs its silly.
I am shocked that Firefox and Netbeans together are less than half the ram in ubuntu. After loading once they open almost instantaneously again as Linux will store these program files in its cache.
http://saveie6.com/
The problems with superfetch is when Windows begins to swap aggresively to disk as it pretends to be running out of ram when its fine. It seems to me the same programs generally feel more responsive with Linux caching than they do with Windows Vista with super fetch. Its nice not waiting on the disk so much in which super fetch is supposed to solve.
http://saveie6.com/
With older laptops and netbooks ram is typically between 1 - 2 gigs. Guess which OS runs better and does not swipe to the hard disk constantly?
http://saveie6.com/
While catering to the Apple fan-base a little too much for my tastes -- hits it right on.
It is scaremongering.
.
Cache is there for a reason -- idle RAM is useless RAM. Now, do I think that Windows allocation mechanism for idle RAM is right on? Of course not. It could use some tuning. It could have used some tuning since XP -- but is idle RAM stupid? Yes.
Anything that can update the pipeline between process/thread interaction with data before it has to go to disk -- is preferred.
However, Windows needs to be smart about what it caches and keeps in the pre-fetch. Frequently used and accessed rather than conditional stale.
That's the point.
Memory leaks are the problem, especially with legacy software where the vendor is long gone. It is really annoying when a program is so badly broken that you have to feed it a command string of six numbers in octal every 108 minutes to purge memory or the bloody thing crashes.
Just like CPU utilization, idle RAM usage is a terrible performance metric. I'm constantly amazed by all the people that want to keep CPU and RAM usage to a minimum, particularly on servers. When I worked in a large enterprise I used to freak my Windows colleagues out by running my Mac OS X and Linux servers at 100%. It's not the % number of use, it's the loads that matter and learning how to size a server is more complicated than the Windows Task Manager.
In an ideal world your system would use every scrap of it's hardware to complete each task as quickly and efficiently as possible.
I think your confused.
The old office quick starter, and the adobe acrobat version of the same thing were like that. They started applications at startup which would use up system memory(they were real applications actively running and had the same priority as any other app) to make those applications appear to start up faster. That was(and in the case of adobe at least is) a cheat and a pain in the ass. Loading an application in the background so that if I try to use it it's already running is a bad thing.
On the other this is not like this. Windows tries to guess which data from the hard drive I might want want in the immediate future. It then pulls this data into memory when I'm not trying to use the disk for something else. If it's wrong, it flushes the data away and no harm is done, but if it's right then I've saved the time taken to pull that data.
Seems to me that unless it's designed really poorly(paging loaded applications to do this, trying to cache disk when you're using disk IO for other functions, etc) then little to no disadvantage for a chance at great advantage is a pretty good thing.
The constant disk trashing in Vista & Windows 7 - is the ultimate Achilles heel for these OS's. You can fany it up with your wiseness about coding until you turn blue from the waiting, it still makes the machine hopelessly slow, not to mention the mental pain aquired from the constant disk-trashing-sound. Not to mention the ever-lagging-soggy response you have because the harddisk is "doing something else all the time".
Why is it, that Linux with X11 & Gnome - takes less than 27 seconds to boot on a BRAND NEW computer, and the SAME brand NEW computer...Windows 7 fights itself through disk-trashing-hell+preload-to-infinity for 5-7 minutes? I was READY for windows 7, I heard good things about it, I tried it for a WHOLE WEEK...until I almost caved in, and even though it was HELL to get all my hardware up and running with Ubuntu 9.10 (which is the shitties Ubuntu yet, hardware wise)...I STILL prefer to run Linux...compared to almost wanting to KILL my computer over the constant disk-activity!
I know I can turn it off, but Microsoft turns it ON every freaking update anyway. I'm also tired of the constant nagging - on what I should have ON / activated / turned off etc...after every update (which is nearly every day), and constant nagging about my software trying to run (because I want to run it).....MY GOD WHY CANT MICROSOFT return to Windows 2000 days....?
What this world is coming to - is for you and me to decide.
Linux does the same thing, as far as I know, and you don't see anybody calling Linux a memory hogging OS.
Just FYI, a while ago Andrew Morton was flamed by some people for having the kernel cache too much, and a debate similar to this one ensued. Eventually he had to add a "swappiness" option to the kernel to make the complainers happy.
So yeah, Linux indeed does the same thing, but people flamed anyway.
Don't quote me on this.
If you're really curious, you can download windbg and run !memusage from a local kernel debugging session (or using livekd). You can also use meminfo -a -f, though you'll probably need to post process the output to group used pages per file like !memusage does.
Not that I would recommend that, but you can write a small app that maps a file into memory and VirtualLock's the entire view. That will make sure the file's pages remain resident.
It's also possible that something else makes things slow. You could profile the build process using xperf, or at least check whether these files are actually being read from disk using resmon.exe or some other disk tracing tool.
Even if it turns out that the files are in fact not cached, it's not usually the operating system's fault. Something must have pushed the cached pages out of memory. For example, maybe Visual Studio itself (or the tools it spawns, like the linker) temporarily consumes a lot of memory during the build, eating into the cache. (Though in that particular case, Superfetch should eventually reload the files back into memory)
Seriously, PAE? Come on now...
Even with PAE, then yes, you get the privilege of having your 32-bit OS running on 64-bit hardware access more than 4GB of RAM, but why? Haven't gotten a working crack of Win7?
At this point in the game, those that still run 32-bit OS's on hardware from 2 standard lifecycles ago just need to give it up and stop. 64-bit is where it is at.
0100010001101001011001 0100100000011010010110 1110001000000110000100 1000000110011001101001 0111001001100101
Your experiment simply can't provide any insight into caching "quality" on Windows vs. Linux.
You're changing OSs and your changing applications. You can't isolate the difference in performance due to the applications and the difference in performance due to the cache.
The only thing that you can conclude was that your experience indicated that VS on Windows didn't perform as well as GCC on Linux. That's all.
Except PAE is supported on all Pentium Pro and later Intel CPUs.
I don't know where you get the idiotic idea that it only works on 64-bit hardware.
I think we need a 0 mod.
0: Redundant information that any objective observer would conclude is blatantly obviously, and normally get a Redundant mod just for stating something akin to 'A is A', yet the post was a response to a total fucking moron who apparently didn't understand that rather basic information.
But that's clearly too long to fit in the dropbox. Ah well.
'to make Windows appear faster.' Jesus H. Christ.
Windows is using my system resources to make my computer appear to be faster! Those bastards at Microsoft have struck again! How dare they make things happen faster on my computer as some sort of optical illusion of speed! (Because it's not like the speed of a computer is actually defined by 'how fast things happen'. That's crazy talk.)
You know, it's an interesting thought experiment: What if no work had ever gone into making computers 'appear' faster? If through computer history, we'd actually made them faster like normal, but put absolutely no effort into caching or optimizing or offloading processing or DMA or anything, just making processors faster and faster?
I suspect, right now, we'd be trying to figure out how to play our fancy new 'MP3s' on our eight-core-processor RAID-array setups, and hoping, one day, we'll get processors fast enough to handle postage-stamp-size video, or possibly even redraw our entire video screen at once.
If corporations are people, aren't stockholders guilty of slavery?
Out of curiosity, is this on XP, or Vista/7? Their caching strategies are very different...
what on earth? what program do you have to feed octal numbers to so it purges its memory?
Except it simply doesn't do that as you can easily demonstrate with test case programs. Memory used for cache is used but not reserved, so if a program needs it, it will simply free some of the cache and give it to the program. No swapping required. Swapping programs in order to maintain the cache would be idiotic, but Windows doesn't do this.
If you don't know where you are going, you will wind up somewhere else.
I agree, and it's amazing to me that all this hubbub doesn't surface around other areas where this is happening. OS's are using the GPU more both for UI and accelerating computing-intensive tasks. They use unused network bandwidth to trickle down updates and other resources from the Internet.
I suppose people will bitch if an OS uses idle time on one of 3 unused CPU cores? Or recording video of you while you're not using your webcam?
Oh wait, strike that last one.
Now ONLY if it had a spiffy cache configuration control menu. Why not let ME choose what it should cache and what not? Is the almighty cache dev team so enlightened so that they choose instead of me?
You can still use a ramdrive, you should look into "Dataram RAMDisk", it's free and fully configurable.
It seems like the problem lies in the same crappy logic handling memory in Windows 7 as in Vista. Superfetch can work but the logic has to be extremely good and Microsoft arent capable of such feats.
People notice their computer slow down to a crawl, look at memstats and see most memory used. See that little disk light illuminating bright as a star and condlude something is probably wrong in memory world. The problem isnt that most memory is used, its that its in use by a schizofrenic alzheimer despotic whirlhead.
HTTP/1.1 400
Sorry, just trying to make the "LOST" fans laugh over the silly deadman switch thing which involved typing numbers in every 108 minutes. It made me think of some NT4 machines with crap third party software on them that needed a reboot every week or they would run out of memory and crash.
Ubuntu's plan, if i read correctly, was to take advantage of periods in the boot cycle during which no IO was occurring to cache "frequently used programs" or just "stuff that's going to be needed during the boot process later" as determined by some kind of heuristic.
it shouldn't have added to the boot time because it was supposed to take place while the cpu was occupied, and presumably used direct memory access features to get the bits into the RAM.
I believe you could also add files to the list manually, but the important thing about this feature is that it does not specify what should stay in RAM, only what should be cached "if there's time" during boot.
I was hoping someone would know if there was any feature like that (other than /dev/ramN, which is inferior to tmpfs in every other way), and if there was any feature that would show what actually is cached. I'm definitely curious about it, seems like something that would be found under sysfs or procfs if it exists.
Can you be Even More Awesome?!
Well, unless I have unlimited bandwidth, I don't want my OS downloading crap or my web browser pre-loading web pages. There is a downside to doing more work than normal, so if anyone has a legitimate complaint, it's about the extra power and wear this pre-reading of hard disk content results in (and maybe even wear on the memory, though I doubt it's even measurable).
Heh, maybe we should bitch that the OS uses the entire display, even when there's no window in some portion of it. Or that it caches things on the hard disk.
Like being some sort of "trash folder" easy to acess on the control panel, where you can see exactly what files are being cached and be able to delete and put files there.
That would make it clear to the users how many ram is the superfetch using, and also allow em to add files when they actually need it instead of waiting windows to do so.
That would make the user have a better notion of "why i have low ram", because they would see the superfetch working.
You know. I am tired of my stories getting rejected. I submit this story on Friday, it gets rejected, only to have Timothy post the same exact story on saturday. WTF. Not the first time this happened.
I do not support "The Man". I also do not support your irrational stupidity
Actually, I've seen that exact comment before. It's probably half a joke.
I am not devoid of humor.
What's your proposed alternative algorithm for zeroing out a million bytes of RAM?