Slashdot Mirror


Windows Memory Manager To Introduce Compression

jones_supa writes: Even though the RTM version of Windows 10 is already out of the door, Microsoft will keep releasing beta builds of the operating system to Windows Insiders. The first one will be build 10525, which introduces some color personalization options, but also interesting improvements to memory management. A new concept is called a compression store, which is an in-memory collection of compressed pages. When memory pressure gets high enough, stale pages will be compressed instead of swapping them out. The compression store will live in the System process's working set. As usual, Microsoft will be receiving comments on the new features via the Feedback app.

144 of 231 comments (clear)

  1. Congratulations, Microsoft! by drinkypoo · · Score: 4, Informative
    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    1. Re:Congratulations, Microsoft! by SoftwareArtist · · Score: 4, Insightful

      You mean Welcome to 1990. Everything old is new again.

      --
      "I'm too busy to research this and form an educated opinion, but I do have time to tell everyone my uninformed opinion."
    2. Re:Congratulations, Microsoft! by drinkypoo · · Score: 2

      Yeah, I had RAM Doubler for Macintosh, too. But this is actually included with the OS. The sibling commenter pointing out that OSX wins by a year wins that competition, though.

      I was actually imagining that some crusty old fart would crop up to tell us you could do it in VMS or something but so far nope

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    3. Re:Congratulations, Microsoft! by Eristone · · Score: 1
    4. Re:Congratulations, Microsoft! by Cafe+Alpha · · Score: 4, Interesting

      I vaguely remembered that that (or a similar product) was analyzed and it actually did nothing.

      There was code in it, but all that code was bypassed. One imagines that the programmer couldn't get it working but had to ship something - and his bosses couldn't actually tell if the driver DID anything.

    5. Re:Congratulations, Microsoft! by Karlt1 · · Score: 3, Interesting

      The Macintosh version actually did a few things. Mostly to help alleviate Classic Mac OS's piss poor memory management where you had to pre-allocate a contiguous chunk of memory to each process -- manually.

    6. Re:Congratulations, Microsoft! by Ravaldy · · Score: 2, Interesting

      Guys, guys, guys, guys!!!

      Come on. Companies can't list new features without being called negatively on it?

      It's silly to point out completely different implementations of the same concept as "DONE BEFORE!". Compression is old and has, could and will be used for many different strategies in the future.

      New uses for old concepts is an ongoing thing and should not be regarded as non original. By those standards flight was never a big achievement since birds have been flying for millions of years.

    7. Re:Congratulations, Microsoft! by SoftwareArtist · · Score: 1

      This isn't a new use for an old concept. It's precisely the same use implemented in essentially the same way: modify the virtual memory system so pages get kept in memory in compressed form, rather than being written out to disk.

      I'm not saying it's not a good idea, or that Microsoft shouldn't be doing it. But they're one of the last to arrive at the party. OS X and Linux both already have this feature, and it's been available through third party products for decades.

      --
      "I'm too busy to research this and form an educated opinion, but I do have time to tell everyone my uninformed opinion."
    8. Re: Congratulations, Microsoft! by echnaton192 · · Score: 1

      You are joking, right? RAM doubler was a scam. Machines were not fast enough to compress on the fly.

    9. Re:Congratulations, Microsoft! by FranTaylor · · Score: 1

      The Macintosh version actually did a few things. Mostly to help alleviate Classic Mac OS's piss poor memory management where you had to pre-allocate a contiguous chunk of memory to each process -- manually.

      this is a necessary step on any hardware that doesn't have virtual memory, regardless of operating system

    10. Re:Congratulations, Microsoft! by lgw · · Score: 1

      We did it on our mainframe platform, but that was mid-90s, so others were first.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    11. Re: Congratulations, Microsoft! by Karlt1 · · Score: 1

      Yeah but the problem was that classic MacOS did have virtual memory as of System 7.

    12. Re:Congratulations, Microsoft! by Alien1024 · · Score: 2

      Yeah, SoftRAM was sued and declared guilty because it did nothing (worse, it slowed down the system). Other products did at least try, but the increase in apparent RAM came at a great performance cost, which sort of defeats the point.

    13. Re:Congratulations, Microsoft! by shess · · Score: 1

      Yeah, I had RAM Doubler for Macintosh, too. But this is actually included with the OS. The sibling commenter pointing out that OSX wins by a year wins that competition, though.

      I was actually imagining that some crusty old fart would crop up to tell us you could do it in VMS or something but so far nope

      NeXTSTEP 3 (I think) had this in the early 90s. Then the rationale was that compressing pages on the way to disk reduced I/O load.

      Like: http://www.nextcomputers.org/N...

    14. Re:Congratulations, Microsoft! by sodul · · Score: 1

      Why do I have to do that with Java as well?

    15. Re:Congratulations, Microsoft! by hvdh · · Score: 2

      zRAM's previous name was compcache, and that was available for Linux since 2008.
      https://code.google.com/p/comp...
      In 2014, zRAM just became a part of Linux kernel tree.

    16. Re:Congratulations, Microsoft! by xSander · · Score: 1

      Ha, MagnaRAM and QEMM. Those were the days... and apparently it's coming back in vogue.

    17. Re:Congratulations, Microsoft! by ultranova · · Score: 1

      You mean Welcome to 1990. Everything old is new again.

      As well as it should be. We now have fast multicore CPUs that (should) have the spare capacity to handle such background tasks without degradation of performance.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    18. Re:Congratulations, Microsoft! by higuita · · Score: 1

      do you know that ram double was fake, it just increased the reported size and reverse engineering showed that it didn't even had any compression code! :)

      --
      Higuita
    19. Re:Congratulations, Microsoft! by drinkypoo · · Score: 1

      this is a necessary step on any hardware that doesn't have virtual memory, regardless of operating system

      What's preventing applications from allocating non-contiguous blocks of memory?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    20. Re:Congratulations, Microsoft! by omnichad · · Score: 1

      compressing pages on the way to disk is not quite the same as compressing pages to avoid the disk entirely.

    21. Re:Congratulations, Microsoft! by Ravaldy · · Score: 1

      This isn't a new use for an old concept. It's precisely the same use implemented in essentially the same way

      I agree but it's still news worthy and the banter does nothing to improve the conversation about the feature. The fact that the most popular PC OS now has a major performance improvement for low memory H/W is good news and is worthy of the community.

      At no point does the article claim MS invented something. The article actually specifically makes reference how it's using the existing concept of memory compression.

      As far as I'm concerned this wasn't the biggest priority in their eyes (and it probably wouldn't have been my guess either) but now that they take feedback directly from the community (by letting them vote up what they want most) it makes sense that they moved forward on it.

    22. Re:Congratulations, Microsoft! by rakslice · · Score: 1

      In this era of 100 cycle L1 cache misses (i.e. a TON of otherwise unusable CPU just laying around) it's hard to imagine what it was like to use this technique back in 1990 with e.g. CPU multipliers a single digit. =)

  2. Re:Great by viperidaenz · · Score: 5, Insightful

    Except swapping to disk

  3. Re:Great by MightyMartian · · Score: 1

    Swapping to virtual memory is more IO intensive. I suppose if you had a moderate compression algorithm, if you preferentially compressed pages, at least for a certain amount of time, rather than pushing them to swap, it might be worth whatever extra CPU and memory channel time it took compress and decompress the page.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  4. OSX in 2013. by Henriok · · Score: 5, Informative

    Welcome to 2013! as it was then compressed memory was introduced in Mac OS X.

    --

    - Henrik

    - when the Shadows descend -
    1. Re:OSX in 2013. by maztuhblastah · · Score: 2

      Welcome to 2012! as it was when compressed memory was introduced in Linux.

    2. Re: OSX in 2013. by xaxa · · Score: 1

      I implemented this in 2005 as a coursework exercise at university.

    3. Re:OSX in 2013. by Lothsahn · · Score: 4, Insightful

      Awesome! I didn't even know this was in Linux. This would be really useful on my desktop downstairs!

      ...proceeds to Google "zswap linux ubuntu"
      http://askubuntu.com/questions/361320/how-can-i-enable-zswap

      Oh, so it's not enabled by default in my distro?

      According to the kernel documentation, zswap can be enabled by setting zswap.enabled=1 at boot time. Zswap is is still an experimental technology

      Oh, great, it's experimental.

      It has been enabled and disabled at various times throughout release cycles. – Ken Sharp

      Wonderful! If I turn it on, it may suddenly turn itself off when I get a kernel update for 14.04.

      You know, I often hear "Linux already has that", but it doesn't work right, isn't enabled by default on basically all distros, or isn't configured such that 99% of Linux users aren't using it. Saying you have something when it's experimental, not enabled by default, enables and disables with updates, and not easily available to the vast majority of your users is silly.

      --
      -=Lothsahn=-
    4. Re:OSX in 2013. by Gr8Apes · · Score: 1

      Actually, that clarifies that the zram feature did not make it to the Linux kernel until 2014, meaning that OSX had it prior to Linux. Yes, I understand some had a feature like it earlier, but full-blown reliable enough implementation to make it to the RTM release of an OS was OSX 10.9 (2013), Linux kernel 3.18 (2014) and finally Windows 10 in what appears to be late 2015, or maybe 2016 given their track record. Guess better late than never.

      --
      The cesspool just got a check and balance.
    5. Re:OSX in 2013. by Anonymous Coward · · Score: 1

      You know, I often hear "Linux already has that", but it doesn't work right, isn't enabled by default on basically all distros, or isn't configured such that 99% of Linux users aren't using it. Saying you have something when it's experimental, not enabled by default, enables and disables with updates, and not easily available to the vast majority of your users is silly.

      Well, in their defense, on Windows, we pretty much consider every other version of the whole OS experimental...

    6. Re:OSX in 2013. by Yaztromo · · Score: 2

      ...proceeds to Google "zswap linux ubuntu"

      No. What you want is zram, not zswap.

      zram tries to compress pages in RAM, without swapping them to disk. I've only recently enabled this on one of my Debian Jessie boxes (an Intel Core 4 Duo with a motherboard that has a weird memory configuration that in practical terms limits it to 4GB of RAM), however my experience with the equivalent subsystem on OS X has been fantastic. Pages may still later be swapped to disk, but on OS X at least the system aims for a 2:1 compression ratio, holding successfully compressed pairs of pages in a single page without swapping them to disk. Think of it as an intermediary state for swapped pages between having them sit in RAM as-is and paging out to disk.

      zswap is about compressing the swap file. This can have benefits as well (especially if you have low CPU load. The Jessie box I mentioned in the previous paragraph fits into this category of use, and I'd probably use swap too if the system didn't have a large and quite fast RAID array in it), as the stuff getting paged will hopefully take up less space requiring less IO time. It is, however, different than what the article is talking about, which is the territory of the zram module in Linux.

      Yaz

    7. Re:OSX in 2013. by swillden · · Score: 2

      Some Android devices ship with zram enabled. It may not be easy for you to use, but it is usable.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
    8. Re:OSX in 2013. by Yaztromo · · Score: 1

      Actually, that clarifies that the zram feature did not make it to the Linux kernel until 2014, meaning that OSX had it prior to Linux. Yes, I understand some had a feature like it earlier, but full-blown reliable enough implementation to make it to the RTM release of an OS was OSX 10.9 (2013), Linux kernel 3.18 (2014) and finally Windows 10 in what appears to be late 2015, or maybe 2016 given their track record. Guess better late than never.

      One further note: in OS X 10.9, the memory compression subsystem was on by default (and can only be turned off from the command line). I know of no Linux distort which ships with zram or zswap enabled by default (although if there is one, hopefully someone will jump in and let me know!). I doubt that either is particularly highly used on Linux, even though the facility is extremely useful and can enhance performance by quite a bit

      Yaz

    9. Re:OSX in 2013. by MSG · · Score: 5, Informative

      http://askubuntu.com/questions...

      That document is several years old now.

      Oh, so it's not enabled by default in my distro?

      It appears to be enabled currently in both Ubuntu, Fedora, and RHEL and CentOS.

      Oh, great, it's experimental.

      It was marked experimental in 2013. In the context of a discussion about a feature that hasn't even been introduced in Windows, it's fair to note that Linux developers have been working on such a feature, and made it generally available several years earlier.

      Wonderful! If I turn it on, it may suddenly turn itself off when I get a kernel update for 14.04.

      It was disabled in Ubuntu while they tried to diagnose instability in a PPC kernel. The feature was not related to the instability.

      If you don't like Ubuntu's method of kernel maintenance, by all means, use a different distribution. However, the practices of one company should not be considered a defect in *Linux*.

      Saying you have something when it's experimental, not enabled by default, enables and disables with updates, and not easily available to the vast majority of your users is silly.

      It would be, perhaps, but you have all of your facts wrong.

    10. Re:OSX in 2013. by MSG · · Score: 1

      What you want is zram, not zswap. ... zswap is about compressing the swap file

      Not according to the documentation.

      https://www.kernel.org/doc/Doc...

      [Zswap] takes pages that are in the process of being swapped out and attempts to compress them into a dynamically allocated RAM-based memory pool.

    11. Re: OSX in 2013. by echnaton192 · · Score: 1

      Ram doubler? You bought that? I have a bridge to sell...

    12. Re:OSX in 2013. by MSG · · Score: 1

      Actually, that clarifies that the zram feature did not make it to the Linux kernel until 2014, meaning that OSX had it prior to Linux.

      zswap, which is similar to the OS X feature, was merged into the Linux kernel mainline in kernel version 3.11, released on September 2, 2013. OS X 10.9 "Mavericks" was released on October 22, 2013.

      But compressed memory isn't new. It's old tech, and quibbling about which of the many implementations was released first is silly as it ignores decades of such products.

    13. Re:OSX in 2013. by vakuona · · Score: 1

      Given that Apple shipped this on 22 October, less than 2 months after the feature was first mainlined in the kernel, I think it is safe to say (on that basis alone) that the Mac had it first.

    14. Re:OSX in 2013. by Lothsahn · · Score: 2

      MSG:

      Thanks for the additional information. None of this is readily available in the first links for Ubuntu, zswap, or Linux, and the items I quoted are either current documentation or statements from 6 months ago--so I expected them to be accurate. In addition, the current kernel documentation of zswap STILL lists it as experimental:
      https://www.kernel.org/doc/Doc...

      That said, given this info, many of my earlier points were incorrect. I just enabled it on for my downstairs desktop. It's still not enabled by default on either Ubuntu or Redhat, but at least it's a reasonable effort to turn on--no kernel recompilation, etc.

      --
      -=Lothsahn=-
    15. Re:OSX in 2013. by Lothsahn · · Score: 3, Insightful

      Yes, if ONLY I had been using "One True Scotsman Distro (TM)", I'm sure it'd all work great.

      Fed Troll +1

      --
      -=Lothsahn=-
    16. Re:OSX in 2013. by murdocj · · Score: 1

      Says the clueless guy.

    17. Re: OSX in 2013. by bill_mcgonigle · · Score: 1

      Fedora updates went out in mid-September which is all but guaranteed to be weeks behind gentoo. What's the point though?

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    18. Re:OSX in 2013. by omnichad · · Score: 1

      Sounds like your distro is wasting RAM. It would be a lot better to put that idle RAM to use for disk caching.

    19. Re:OSX in 2013. by MSG · · Score: 1

      Why guess?

      https://lists.fedoraproject.or...
      Fedora, September 14.

      http://www.ubuntuupdates.org/p...
      Ubuntu, September 17

      I honestly believe that arguing about this is silly, but it's especially silly when you're wrong. :-)

    20. Re:OSX in 2013. by Trongy · · Score: 1

      It's not safe to say that. A lot of Linux code for new features lives in separate git trees or patches for months or years before it's pulled into the mainline kernel. Some Linux distributors include non-mainline code with their shipping kernels. For example ksplice has been around since 2008. It's not a mainline kernel feature, but Oracle includes it in their Linux distribution.

  5. Deja Vu all over again... by sillivalley · · Score: 4, Interesting

    Gee, an Apple product did this in the 90's, compressing memory segments assigned to processes not currently executing.
    (see, for example, https://www.usenix.org/legacy/...)

    The same product was Apple's first to use pre-emptive multitasking,

    The product? Newton.

    1. Re:Deja Vu all over again... by Carewolf · · Score: 1

      Gee, an Apple product did this in the 90's, compressing memory segments assigned to processes not currently executing.

      So did a Microsoft product called DoubleMem. This is really old tech, and Microsoft has even done it before. They even got in legal trouble over it, since they stole the code from the original creators (no, not Apple) Stacker.

    2. Re:Deja Vu all over again... by Carewolf · · Score: 1

      Oh please... Apple has stolen plenty of ideas from others over the years... Just ask Xerox/Palo Alto..

      You think preemptive multi-tasking started with Apple? HA!

      https://en.wikipedia.org/wiki/...

      Why would anyone think that?? Even Microsoft Windows had preemptive multitasking half a decade before Apple.

    3. Re:Deja Vu all over again... by ultranova · · Score: 1

      Even Microsoft Windows had preemptive multitasking half a decade before Apple.

      Every system that has interrupts has pre-emptive multitasking. Even DOS had the "terminate and stay resident" system call. It's just that old systems didn't have the resources to multitask complex programs so the methods to do so were undeveloped. We're seeing the same thing now with multithreading, which is still all-manual and thus a constant source of trouble.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

  6. Re:Great by cbhacking · · Score: 1

    Bear in mind that, much like disk compression, there's often a time where the CPU is not the bottleneck and therefore has spare cycles to spend on things like compression. Of course, RAM is so much faster than disk access that the bottlenecks from RAM I/O won't be that significant by themselves (and even if they would be, the data to compress comes from and then goes back to RAM, so that bottleneck persists) but any time you have something that isn't CPU-bound, you can free up some working memory by compressing stale pages. CPUs, especially on modern machines that typically have around four cores, are very rarely at 100% utilization in real-world scenarios.

    --
    There's no place I could be, since I've found Serenity...
  7. Will be useful for sure. by Anonymous Coward · · Score: 1

    This will be incredibly useful on embedded devices that use SSDs or Flash memory.

    Of course, SSDs are growing in size all the time and you have a larger chance of your drive straight failing over running out of useful space from wear-levelling.
    So the biggest advantage here will really be speed related.
    The overhead of the compression is likely low enough that it MIGHT just be faster than SSDs for many small unrelated clumps of memory, but absolutely faster than HDDs. Whether it will be true of larger memory sets is another question.
    Is there any actual benchmarks out there that have tested these sorts of things on Linux? I see drinkypoos link up there that shows it has been in Linux for a small time now.

    I still won't be getting it.
    At least not until all those dedicated hackers have prodded and poked the shit out of it and found out other spying tactics used by WiNSAdows 10 and patch them out.
    I don't want my bandwidth being used without permission, even more so if I disable it and it stays on! Believe it or not, a large number of ISPs place restrictions on upload bandwidth, and even more so overall bandwidth used per period. (monthly usually)
    When I turn things off, I expect them to stay off permanently until I say otherwise.
    I think many offices would also agree. (they say the enterprise version will allow full disabling of services, but I don't trust them at all)

  8. Re:This sounds familiar... be afraid, very afraid. by goarilla · · Score: 1

    That's disk compression not memory compression.

  9. Re:This sounds familiar... be afraid, very afraid. by TheRealMindChild · · Score: 1

    Um, DriveSpace was a disk compression method. It was like treating a partition like a zip file.

    This has nothing to do with compressing data in RAM, which the artcle is about

    --

    "When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
  10. ECC by goarilla · · Score: 1

    Doesn't this make ECC memory even more needed ?
    Since compression is the process of reducing redundant information, any bit flip could kill the entire compressed unit.

    1. Re:ECC by Anonymous Coward · · Score: 1

      A bit flip can kill uncompressed memory too. ECC's necessity is not increased because of this.

      Besides, Linux has been doing compressed memory for years, it works.

    2. Re:ECC by Jeremi · · Score: 2

      A single bit flip can have catastrophic results without compression too, if it's the wrong bit.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    3. Re:ECC by jones_supa · · Score: 1

      Yes, but it can do more damage to compressed memory. Let's say that your compressed memory says "repeat number 126 seven times". Now that value 126 gets corrupted, and it becomes, say 94. Now when the memory is uncompressed, you get 94 seven times. The error is expanded sevenfold.

  11. Re:This sounds familiar... be afraid, very afraid. by __aaclcg7560 · · Score: 1

    That's disk compression not memory compression.

    What is it when a Solid State Drive (SSD) is used?

  12. Re:If your Win10 device starts to melt... by lister+king+of+smeg · · Score: 1

    If your Win10 device starts to melt, don't worry. That's just the CPU compressing/decompressing as fast as it can.

    <joke> PV=RT don't worry the decompression will absorb the heat generated compressing it. </joke>

    --
    ---Saying gnome 3 is better than windows 8 not so much a compliment as it is damning with light praise.
  13. Re:This sounds familiar... be afraid, very afraid. by Farmer+Tim · · Score: 1

    That was a disk compression scheme, while this is virtual memory compression, more like RAMDoubler from Connectix which worked quite well (on Macs, anyway). It's possible Microsoft acquired some of that IP when they bought VirtualPC.

    --
    Blank until /. makes another boneheaded UI decision.
  14. Yay! Color options by 140Mandak262Jamuna · · Score: 4, Funny

    , which introduces some color personalization options, ...

    You no longer have to put up with the blue screen of death. Now you have the option to have speckled, sparkled, opalescent, translucent, scintillating, coruscant, flourescent, effervescent blue screens of death.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
    1. Re:Yay! Color options by blazer1024 · · Score: 1

      I wouldn't be surprised... the Windows 10 BSOD is already silly enough

      http://www.tenforums.com/attac...

    2. Re:Yay! Color options by BoogieChile · · Score: 1

      That's already what the Windows 8 SFOD (Sad Face Of Death) looks like.

  15. Re:This sounds familiar... be afraid, very afraid. by ledow · · Score: 1

    I think you mean things like MemoryDoubler and stuff that was around at that time.

    DriveSpace was purely disk-based. There were products that compressed pages in-RAM, and have been since the DOS days, and still are, and are present on every OS if you look hard enough.

  16. Re:Great by cbhacking · · Score: 1

    Exactly. Besides, it's not as if RAM I/O is the bottleneck in most scenarios. RAM is slower than cache, but many, many times faster than HDD. HDD can achieve about 200MB/sec (according to the speeds I've seen out of ddrescue, with SATA3 7200RPM 3TB 3.5" disks) in bulk transfer, although it's a good bit slower in random access. RAM is much faster than that and not penalized by random access (no seek times). The CPU can spend the billion or so cycles it has any time there's a non-trivial hard disk access to optimize RAM, pushing little-used data into compression and pulling out data for a process you're switching to, without there being a meaningful performance cost.

    Also, random thought: is the pagefile already storing pages compressed? Assuming you aren't using NTFS compression on it, my naïve assumption is that the pagefile stores uncompressed RAM pages. This is obviously inefficient, both in terms of the required pagefile size and in terms of the time it takes to swap the data into and out of the pagefile (remember, HDD I/O is slow; the time used for compressing the data in CPU and RAM is more than paid back for by the time saved in disk I/O). That makes me suspect they were already compressing paged data, but I hadn't ever heard about it.

    --
    There's no place I could be, since I've found Serenity...
  17. Re:This sounds familiar... be afraid, very afraid. by goarilla · · Score: 1

    Still disk compression :D.

  18. SoftRAM *shudders* by Anonymous Coward · · Score: 4, Informative

    This seems eerily similar to what SoftRAM was trying to do in the mid-90s. Anyone remember this? "Double Your Memory!" was it's claim and in fact the tagline on the box cover. This was back when RAM cost a fortune and everyone needed more than they had in order to run Windows 95. The company made a killing... at first.

    https://en.wikipedia.org/wiki/SoftRAM

    I actually worked for them, and I saw the whole thing happen from start to finish. It was quite a wild ride. Mark Russinovich and Andrew Schulman took a particular offense to the software and set about publicly dissecting it and working feverishly to prove that it didn't work. They thought the whole thing was a scam. I personally witnessed tests that indicated it was doing exactly what it said it did - however it was difficult to prove any worthwhile effect under realistic working conditions. It seemed that the primary problem was that the program needed to reserve a chunk of memory to do it's thing, then it had to make intelligent decisions about what to put in there. If it was wrong (i.e., it compressed something that the user was going to close anyway, and the user opened a new program instead of retrieving the compressed one), the memory was wasted and overall performance (of opening the new application) was diminished. The reduction in overall memory at the outset may have been putting a strain on the system which the codec was unable to outperform. To aggravate things, the software also performed a few well-documented registry tricks to optimize the pagefile settings which led critics to claim that is indeed all that it was doing.

    The proof I saw, for example, if you made a spreadsheet with millions of 1s in each cell, then made a cell calculating the total of all the cells, with SoftRAM, the calculation would take a quarter of a second. Without SoftRAM, a ton of the data got swapped to disk and the calculation took like 30 seconds. However, as soon as you put realistic data into the spreadsheet, the improvement basically disappeared because it wasn't compressible enough with the algorithms they were using. They actually hired a very famous compression expert at the time, who liked to talk a lot and bill them at something like $350/hour or something crazy and it didn't seem to help at all.

    Eventually the company lost a class action suit and had to refund millions back to customers. They were never able to recover, despite using their wealth to acquire and improve various products. A few of the products they put out were good, like the Mac RAM management tool (though it pre-existed, and really, the company ruined the design and marketing for it), others (like BigDisk which faked your system into believing multiple disks were one volume) had problems and could be extremely dangerous if used incorrectly.

    Ahh, good times.

    1. Re:SoftRAM *shudders* by GerbilSoft · · Score: 4, Informative

      SoftRAM's problem was that it didn't actually do what it claimed to. It adjusted some parameters that improved swapping performance on Windows 3.1, but on Windows 95 it was effectively a nop, and could actually cause problems due to non-reentrant code.

    2. Re:SoftRAM *shudders* by Anonymous Coward · · Score: 1

      Yeah as I wrote, I always found that strange, because of the Excel test that I described in the above post, which I saw work on Windows 95.

      Though I suppose it's possible that some trick was occurring to reduce the swap size or something to make that particular dataset fit in memory instead of being swapped, I don't think that was the case because the calculated size of the total dataset was larger than the total available RAM. There's a lot of variables however. But that notion that it simply "didn't do anything" on Windows 95 is at odds with what I personally witnessed at the company.

    3. Re:SoftRAM *shudders* by PopeRatzo · · Score: 1

      This seems eerily similar to what SoftRAM was trying to do in the mid-90s.

      My question is, with mid-level machines coming with 16gig of RAM, why would I need compression at all? What the hell is Windows doing that it needs more than 16gig? Can't the NSA write more efficient spyware?

      --
      You are welcome on my lawn.
    4. Re:SoftRAM *shudders* by gl4ss · · Score: 1

      if you actually worked there, how come you don't know that 3rd parties decompiled it to see that the released binary did jack shit nothing of the sort? it just made the swap bigger, something that could be done without it.

      I mean, the program was supposed to compress ram but nobody could prove that it did that, but could prove that it did nothing of the sort.

      it's possible that you were witnessing different software than what they actually shipped. but it might be that the actual software they shipped was faster anyways.

      it could have been a scam that you just weren't in, why do yo think they demonstrated it for you..

      --
      world was created 5 seconds before this post as it is.
  19. Now if only the memory pressure metric worked by TheGavster · · Score: 1

    My concern with any memory management strategy under Windows is that even the current, disk-based virtual memory system is horrible at determining the "memory pressure" statistic. Under Windows 7, when I have a memory-intensive operation running, I'll hear the disk grinding away paging the whole time, while the system monitor shows physical memory usage at 60%. Even if the other 40% is disk cache, I'm pretty sure the foreground process should take precedence.

    The other frustrating scenario is in sleep mode: after an overnight sleep,you can watch the physical memory line go from near zero back to where it was before the sleep as the disk grinds away paging things back in. That's hibernation, not sleep! My suspicion there is a feature which gets the machine hibernated while sleeping, to recover in the case of a power outage. The feature pretty much kills the usefulness of sleep, though, if every wake is a wake from hibernate.

    Long story short, I'm pretty sure that this new compression feature means that Windows will simply keep itself to an even tinier corner of the physical RAM, while wasting CPU cycles in addition to disk accesses.

    --
    "Because Science" is one step from "Because old book". Try "Because of my experiment testing my falsifiable assertion".
    1. Re:Now if only the memory pressure metric worked by Nkwe · · Score: 1

      My suspicion there is a feature which gets the machine hibernated while sleeping, to recover in the case of a power outage. The feature pretty much kills the usefulness of sleep, though, if every wake is a wake from hibernate.

      Assuming your machine is configured properly: When you sleep, as you suspected, memory is written out to disk as insurance against power is lost. When you come out of sleep (assuming you didn't lose power), Windows resumes from sleep without reading everything back in from disk. If you did lose power, Windows resumes from hibernate and reads memory back in from disk.

  20. Re:This sounds familiar... be afraid, very afraid. by __aaclcg7560 · · Score: 1

    A solid state drive (SSD) has no disk, but a collection of memory chips. So whatever compression it use must be memory compression. It can't be disk compression.

  21. Phoning home by 140Mandak262Jamuna · · Score: 1

    As usual, Microsoft will be receiving comments on the new features via the Feedback app.

    After our offices relocated we started having a strange unexplained auto reboot of windows 7 systems. Seemingly random, different machines on different days, whether overnight jobs were running or not it did not matter. But every other day one machine would have rebooted overnight. Took enormous amounts of digging, but the clue was that it was always between 12 midnight and 12:30 AM. Finally localized it to some service called "Windows Experience". Apparently it was introduced when Vista came along to pop up the dialog "this application has crashed. Do you want to relaunch it compatibility mode?". This would collect all the crashed programs of the day and phone home at 12 midnight. For some reason it did not cause any trouble in the old location. But for some reason in the new building the phoning home app would crash the system and trigger an auto reboot. Even our IT could not figure it out. It took some really determined (or pissed off ) developer who kept digging through the logs to locate the offending service.

    So before Microsoft introduces another feedback app, it should first let us all know how to disable it.

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
  22. Re:Great by vux984 · · Score: 1

    CPUs, especially on modern machines that typically have around four cores, are very rarely at 100% utilization in real-world scenarios.

    On a laptop/tablet/phone the battery usage is going to be the larger consideration than straight CPU utilization.

  23. Re:PSA: by hackwrench · · Score: 1

    I can't get to Edge's settings and don't see any settings like that in Windows settings.

  24. Color options like different-coloured windows? by wonkey_monkey · · Score: 1

    The first one will be build 10525, which introduces some color personalization options

    Will I finally be able to have active/inactive windows coloured differently enough that I can tell which is which at a glance? That's been missing since Vista (unless you're willing to disable Aero)

    --
    systemd is Roko's Basilisk.
    1. Re:Color options like different-coloured windows? by omnichad · · Score: 1

      "Hey look at us, we're so cool, we can do transparency!"

      This is more of a side-effect of more GPU acceleration. The transparency is just proof that it was using the GPU, more or less (for the consumers that wanted that sort of proof/showoff). Windows 8 and 10 dumped most of that and went flatter than ever.

  25. Re:This sounds familiar... be afraid, very afraid. by Anonymous Coward · · Score: 1
    From Wikipedia:

    A Solid-state Drive (SSD) (also known as a solid-state disk)...

    I get what you're going for but memory and disk both imply specific functions rather than just physical properties. A solid state disk is a device intended for the use of storing data rather than performing the functions of facilitating working program data. Contrary to your assertion it must not be memory compression as the function of the device is that of storing data at rest rather than in motion as memory does.

  26. Re: This sounds familiar... be afraid, very afraid by __aaclcg7560 · · Score: 1

    You must not like brain teasers.

  27. System process's working set by davidwr · · Score: 1

    The compression store will live in the System process's working set.

    Exploit in 3..2..1..

    All kidding aside, I hope Microsoft (and Apple and other vendors before now) have given this more thought than their adversaries.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  28. Re:This sounds familiar... be afraid, very afraid. by joemck · · Score: 1

    Secondary storage device compression. Now are you happy? It's nonvolatile, write-cycle-limited, rather slow memory chips being used as a secondary storage device, in the same manner a disk is used.

  29. Re:Great by viperidaenz · · Score: 1

    You can also do the compression in another core, potentially having minimal impact in terms of performance in workloads that don't utilise all of the CPU.

    Huge improvements when the workload includes disk IO.

  30. Re:This sounds familiar... be afraid, very afraid. by __aaclcg7560 · · Score: 1

    The article doesn't explain which compression algorithm is being used. It may very well be the zip compression format. .NET has a in-memory compressor that uses the zip compressor.

    http://www.codeproject.com/Articles/14204/Better-Than-Zip-Algorithm-For-Compressing-In-Memor

  31. Re:PSA: by hackwrench · · Score: 1

    Your first line would be useful, except Edge appears to be holding on to a cached copy.

    The url of the site that shows up is install-instantsetup.com I don't know why domain name registers allow the domain to exist.

  32. Windows Memory Manager by PopeRatzo · · Score: 4, Funny

    Does this mean I have to put HIMEM.SYS and EMM386.EXE back into my config.sys file? I think I still remember some of the MS-DOS edit commands.

    --
    You are welcome on my lawn.
    1. Re:Windows Memory Manager by Anonymous Coward · · Score: 1

      Why this is modded "Interesting" is beyond me...
      This should be Score:4, Funny.

  33. Re:Great by MightyMartian · · Score: 2

    Still, writing to hard disk or even to SSD or flash is going to eat just as much, if not more battery than compressing stale pages.

    A lot of this depends on the algorithms used. I don't think they would be using a high compression ratio, because that would eat a lot of cycles, but there's probably a sweet spot so far as compression ratio vs CPU and bus utilization that probably would be more efficient.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  34. Re:Great by dwywit · · Score: 1

    If you were to design your whole system to this, a la AS400/iSeries/System i, you wouldn't need compression. Single level storage - a single address space for everything, and let the dedicated I/O controller sort out what needs to be in memory at any one time.

    Or why not try it with hybrid disk? Use the disc's solid-state portion as a kind of reserved swap space.

    Or, just put 8+GB of RAM in your machine and do away with pagefiles altogether. Seriously, I didn't notice any performance impact with Premiere Pro when I turned off the Windows pagefile.

    --
    They sentenced me to twenty years of boredom
  35. Memo: The O/S wars are over. by TapeCutter · · Score: 1

    When you've been using Linux since 1996 like me

    What makes people like you think that the O/S should be held responsible for buggy applications? When I read that sort of emotional nonsense about operating systems it just makes me think the author hasn't got a clue about anything outside the intellectual cage he has built for himself.

    Inertia is a powerful force. It's not always easy to learn something new

    The problem with most of the warriors in the O/S wars is they divorced windows 20yrs ago but are still bitter about the split. If you had been paying attention you would realise that windows is not the same O/S you split up with in the 90's, it grew up when XP was released, you would be wise to follow its example, nothing says "bitter" as clearly as someone trying to belittle the people who learn to like/love their ex.

    Disclaimer: degree qualified software developer for 25yrs, comfortable with a wide variety of unix and windows flavours.

    --
    And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    1. Re:Memo: The O/S wars are over. by chipschap · · Score: 1

      If you had been paying attention you would realise that windows is not the same O/S you split up with in the 90's, it grew up when XP was released, you would be wise to follow its example, nothing says "bitter" as clearly as someone trying to belittle the people who learn to like/love their ex.

      I started with Linux back in the very early 0.98 kernel days with a Soft Landing distro that installed from many floppies and needed nearly everything configured by hand. Things are much different now.

      Windows too, indeed has evolved. XP wasn't all that bad, and that was the last Windows I used for many years until a month or so ago I finally upgraded hardware, and decided to leave Windows 8.1 on the machine alongside the Linux Mint installation I set up for dual boot. I learned that Windows had evolved into a steaming manure pile that is heavy on eye-popping color schemes and close to zero on usability. Now I'm told Windows 10 is better because it steps back, but on the other hand it's essential an advertising and personal data gathering vehicle.

      Thank you, but I have actual work to do, so I'll stick with Linux, which today mostly works out of the box for me; and I'm willing to spend the time tuning the parts that don't work out of the box because the end result is an environment that allows me to be productive.

  36. Software patents by tepples · · Score: 1

    But you probably couldn't put it into large-scale production until the RAM Doubler patents ran out.

    1. Re: Software patents by echnaton192 · · Score: 1

      haha.

  37. Backlight time by tepples · · Score: 1

    On a laptop or tablet, the backlight probably draws far more juice than the CPU. So if the CPU can complete a task more quickly by not hitting the HDD or eMMC as often, the backlight won't need to be on as long, which saves power. I wonder whether this is a simple enough task to be put on the little cores in ARM's big-little configuration.

    1. Re:Backlight time by Orestesx · · Score: 1

      On a laptop or tablet, the backlight probably draws far more juice than the CPU. So if the CPU can complete a task more quickly by not hitting the HDD or eMMC as often, the backlight won't need to be on as long, which saves power. I wonder whether this is a simple enough task to be put on the little cores in ARM's big-little configuration.

      That's kind of a silly thought. It's not like the backlight gets turned off when the CPU is done. It gets turned off when the workday ends. You don't get to leave early just because your CPU compiled your code faster or that web page loaded a bit faster.

  38. Soldered-in RAM by tepples · · Score: 1

    Single level storage - a single address space for everything, and let the dedicated I/O controller sort out what needs to be in memory at any one time.

    In a single-level storage model, the main RAM acts as a cache for mmap'd disks. The compressed part of RAM would then act as an additional cache level, which reduces the number of capacity misses that need to reach the disk.

    Or, just put 8+GB of RAM in your machine

    That's fine on a recent desktop, not so fine on an older desktop with few slots or on a compact or detachable laptop with soldered-in RAM.

    1. Re:Soldered-in RAM by MightyMartian · · Score: 1

      It also may not be all that practical on mobile devices. Operating systems like Windows are running on a lot more than just desktops these days.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:Soldered-in RAM by gl4ss · · Score: 1

      haha that's funny.

      windows 10 for arm-mobile is not windows 10 for x86 desktop.

      they're just branding it. they're trying the same trick they tried with windows 8 and windows phone 8: lying by the boatloads. fact: wp8 browser is not the same as win8 browser despite them hyping it up. the kernel is different: windows ce derivative.

      and you know how you can run WINDOWS TEN!!!!! on raspberry pi2? yeah, for varying definitions of windows 10.. windows 10 for IoT isn't exactly the windows 10 ms is spamming me to install on my desktop.

      in other words, ms marketing is just as full of shit as last year.

      --
      world was created 5 seconds before this post as it is.
    3. Re:Soldered-in RAM by tepples · · Score: 1

      Windows is the only multi-window operating system I could find installed on detachable laptops. The other operating system on detachable laptops is Android, which per Google CDD has a window management policy of all maximized all the time except on those few apps specifically coded for Samsung's proprietary extensions.

  39. Included apps by tepples · · Score: 1

    What makes people like you think that the O/S should be held responsible for buggy applications?

    If applications are included with the default install of an operating system distribution, such as Edge with Windows 10, then of course the distributor is responsible for them. And if the bug is in the standard library provided with a compiler, it's the fault of the compiler publisher, which is often also the operating system publisher.

    ObZram: Once RAM compression becomes commonplace, a memory allocator that zeroes out recently freed memory will be more space-efficient. A standard library that does not do this when under memory pressure will be considered "buggy", even if it's published by the operating system publisher.

  40. Re:Great by FranTaylor · · Score: 1

    CPUs, especially on modern machines that typically have around four cores, are very rarely at 100% utilization in real-world scenarios.

    On a laptop/tablet/phone the battery usage is going to be the larger consideration than straight CPU utilization.

    using compressed ram instead of spinning up a drive to swap is a huge win

    swapping on a small system is truly miserable because you're swapping on your one and only block device, shared with all other access

  41. DoubleGuard saved my bacon by tepples · · Score: 1

    I'm not afraid. DriveSpace had the DoubleGuard feature, which patched MS-DOS to add canaries around critical file system data structures in RAM. This saved my bacon a few times when I was developing graphics code and accidentally introduced undefined behavior.

  42. Not all machines are mid-level by tepples · · Score: 1

    My question is, with mid-level machines coming with 16gig of RAM, why would I need compression at all?

    Because not all machines are mid-level. With a lot of smaller machines, especially phones, tablets, and detachable laptops, the 1-2 GB that comes soldered on when you buy it is all you get.

  43. Re:Maybe not as bad as it sounds by tepples · · Score: 1

    My normal advice would still be, that RAM today is so cheap, that you should always have enough to avoid paging

    Can you get 8 GB in a 10" laptop, or are you stuck with, say, the 2 GB in an ASUS Transformer Book T100?

  44. Virtual Memory AND Flat memory model by DrYak · · Score: 3, Informative

    this is a necessary step on any hardware that doesn't have virtual memory, regardless of operating system

    That doesn't have virtual memory AND uses a flat memory model (i.e.: where there's a single huge continuous address space)
    If the OS needs to move memory around (paging, etc.) the only solution is to change the pointer which need to point elsewhere in memory, hence the complicated handles and pointer on Mac's Classic System, on 68k PalmOS, etc.

    Meanwhile, the PC's 286 also lacked a virtual memory (that did only came later with the 386), but used (and abused) the protected mode's segmented memory as a "poor's man virtual memory".
    Protected mode memory was accessed through a segment: a "handle" pointing where the chunk actually stays in memory. (A bit more complex than the real mode segment of 8088/8086 which where just spead 16bytes appart).
    The soft doesn't know much, it only uses the handle it was assigned to use. If the OS needs to move memory around, it just maps the segment to a different address space. The soft doesn't know and keeps using the same handle as before.

    I'm not saying that the 286 architecture was better, just explaining a bit why Intel choose to stick with segments in protected mode.
    (in fact the 68k architecture was better, being 32/16 bits hybrid and being able to handle pointer mapping any position in a flat memory representation, whereas the 286 was pure 16bits and required a mumbo-jumbo of segment to handle anything bigger than 64k)

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:Virtual Memory AND Flat memory model by ultranova · · Score: 1

      Meanwhile, the PC's 286 also lacked a virtual memory (that did only came later with the 386), but used (and abused) the protected mode's segmented memory as a "poor's man virtual memory".
      Protected mode memory was accessed through a segment: a "handle" pointing where the chunk actually stays in memory. (A bit more complex than the real mode segment of 8088/8086 which where just spead 16bytes appart).
      The soft doesn't know much, it only uses the handle it was assigned to use. If the OS needs to move memory around, it just maps the segment to a different address space. The soft doesn't know and keeps using the same handle as before.

      But is this really any different from how 386 did things? A pointer to memory address can be thought of as consisting of two parts: a segment identifier and an offset within that segment. 386 and later simply uses lots of small, fixed-size segments called pages sized and arranged so that segment identifiers and offsets can be interpreted as contiguous numeric ranges, streamlining management and programming.

      So 386 is basically a 286 with a better API. Which, as it turns out, is important. And that rises the question of what other, perhaps even more important, features are being held back by being just a little bit too hard to use for the wheel of progress to gain momentum?

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    2. Re:Virtual Memory AND Flat memory model by DrYak · · Score: 1

      But is this really any different from how 386 did things?

      Yes, it is. 386 added a VMU. Means that the memory address you're manipulating and the actual position of the buffer on a memory chip or harddisk swapfile can freely varry.

      Which, together with the larger address space offered by the 32bit architecture, offers the possibility to do "flat" memory model.
      Where you allocate 4GiB worth of address and let the processes access wherever it wants.

      Means that the typical DOS protected mode game saw simply the whole address range, including RAM and including the address range used by the GFX card. All at the same time.

      A pointer to memory address can be thought of as consisting of two parts: a segment identifier and an offset within that segment. 386 and later simply uses lots of small, fixed-size segments called pages sized and arranged so that segment identifiers and offsets can be interpreted as contiguous numeric ranges, streamlining management and programming.

      Well, except that in the 386, the VMU is an entirely different additionnal layer that sits between the segmentation (still present) and the physical RAM / devices.

      You're free to use both segmenting and VMU at the same time, though most environment did decide to go for a Flat memory model and more or less ignore the segmentation.

      (DJGPP's DOS Extender was an example: it still used segmentation in its GFX drivers. Either using segments to point to whichever address range the PCI card is mapping the frame buffer (for modern PCI card with a linear frame buffer). Or pointing to an arbitrary region of the address space, which is then paginated using virtual memory to the video memory bank - for older cards with a banked frame buffer accessed at a fixed physical address, one bank at a time)

      Also pages have several restriction that segments doesn't have (their are fixed size, aligned, non over-lapping, can be accessed across boundaries between two pages in a single 32bit read, etc.)
      And have completely different attributes associated with them.

      etc.

      at that point, the comparison completely breaks. It's like saying that orange are basically the same as apples, except that their skin is different, the seeds are not alike and the fruit flesh is not the same (whereas the only things they have in common is that they are fruits).

      --
      "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
  45. More precisely by DrYak · · Score: 3, Informative

    To be more precise:

    - ZRAM create a block device that's compressed. A bit like a regular ramdisk, except that it is compressed with LZO on the flight.
    It can be used for anything that a block device can be.
    Traditionnaly that has been compress swap in-memory, but could be used for anything else (you could put a temporary file system on it).
    Swap-on-ZRAM effectively doubles the amount of RAM: allocate 256MiB for ZRAM, get probably ~512MiB of swap on it. i.e.: you can hold extra 256MiB in-RAM.

    The draw back is that swap has no concept of ZRAM and can't intelligently fallback to harddisk. You just give some swap partition on ZRAM and on HDD. All the swap are filled according to their priority.
    Thus you can end-up with poorly compressible data on ZRAM, or with older data that's seldom using on ZRAM while the more used data is swapped to HDD.

    - Zswap : puts an extra compression stage in the swap system between RAM and Swap. Instead of swapping out memory straigh to disk-based swap, swaped-out pages are first compressed and put in a compressed store in-RAM, then once this store is full, the least-used compressed pages are sent to disk. as the swapping system is fully aware of this (it's an actual extra layer in it) it will correctly elect to write to disk least recently used part of the compressed stage.

    Another advantage is that Zswap can use any compression algorithm supported by the kernel. That includes LZ4 which is blinding fast and is usually IO-bound.
    That means the CPU load doesn't suffer much, and in fact Swap-performance improves thanks to the saved bandwidth.

    - Zcache : like Zswap. But instead of being an extra layer added only inside the swap-mecanism, Zcache can add similar intermediate store to other projects too (file cache, etc).

    --
    "Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
    1. Re:More precisely by Yaztromo · · Score: 1

      I have been duly corrected!

      Yaz

  46. Re:Distributor by hackwrench · · Score: 1

    He didn't say distributor, he said the OS, as in the files themselves. Microsoft is the distributor. A set of files is the distribution, separate from the files that make up the apps that are distributed with it.

  47. Windows Memory Manager and security .. by nickweller · · Score: 1

    What will this do to mitigate buffer overflows, stack exploits and other memory management bugs.

    1. Re:Windows Memory Manager and security .. by Zeroko · · Score: 1

      Probably nothing, as the pages will not be modified in compressed form (unless there is a bug in the compression code...), & uncompressed pages will have the same addresses & attributes as before.

  48. Orthogonal to the rest of the world by ntropia · · Score: 1

    Nice to read this news in the proper context.

  49. Compressed swap isn't all it's cracked up to be by Theovon · · Score: 5, Informative

    I have a Mac and have therefore had compressed swap for some time now. Theoretically, it's much faster than swap, even if you have an SSD. But there's a tradeoff. When swapping, the disk is busy, but the CPU is free to do other work, although things bog down a lot when thrashing happens. When doing compressed swap, the memory management hogs the CPU, which means it's not free to run other programs, and the system slows down. And thrashing still happens. It's just that your laptop heats up more when it's happening, and things don't get any less sluggish.

    Of course, the biggest problem is Safari. I'll get Safari Web Content processes taking up 10GB or more. There's obviously some kind of run-away memory leak going on. Always when my system bogs down, it's Safari that's taking up too much RAM. Quit Safari, and the system becomes responsive again.

    1. Re:Compressed swap isn't all it's cracked up to be by doconnor · · Score: 1

      With 4 or more cores in every computer it's pretty rare for the CPU to be a bottleneck these days. In fact it's been rare for the CPU to be a bottleneck for the last 20 years.

    2. Re:Compressed swap isn't all it's cracked up to be by Theovon · · Score: 1

      What I can tell you is that I'll be using Safari, for instance, and it'll suddenly go into a fugue where it uses 100% of one CPU core (or sometimes more cores) for on the order of 5 minutes. During that time, other apps are also more sluggish (probably competing for access to disk I/O and the compressed swap, neither of which is multithreaded in MacOS).

    3. Re:Compressed swap isn't all it's cracked up to be by Rich0 · · Score: 1

      With 4 or more cores in every computer it's pretty rare for the CPU to be a bottleneck these days. In fact it's been rare for the CPU to be a bottleneck for the last 20 years.

      Tend to agree. I think the attractiveness of swap, RAM compression, add more RAM, and add more CPU tends to go back and forth as the relative cost/speed/utilization of these various resources changes. When RAM is cheaper than CPU, you want to add RAM. When CPU is cheaper than RAM, you want to use faster compression routines. When you can have your swap across 3 SSDs then maybe you swap.

  50. Re:Maybe not as bad as it sounds by jtownatpunk.net · · Score: 1

    There are a few small devices that can be upgraded or come with a decent amount of memory. Acer's E3-112-C1T9 is a celery-based 11.6" that comes with 4 gigs of RAM and a 500 gig hard drive for $260ish. There's also the ES1-111M-C40S with a 32 gig eMMC drive for $145 on Newegg right now. Specs say both can have their stock memory upgraded to 8 gigs. One stick in single-channel mode, tho.

    I got an Asus T205XA for $130 that's good enough and it's smaller and lighter than either of those Acers. Also has a much longer run time on battery. But the Acers have gigabit ethernet, USB3, and full size SD and HDMI. You can have cheap, small, or perfect specs. Pick any two. :) I've only bumped against the 2 gigs in the X205TA a few times.

  51. Re:PSA: by hackwrench · · Score: 1

    Funny, in trying to find out what I could do about the problem, I terminated Edge more than twice via Task Manager. Maybe that website makes Edge act differently or some other thing could have made it perform differently

  52. Re:This sounds familiar... be afraid, very afraid. by joemck · · Score: 1

    Nah, RAM Doubler was basically swap but not as good. It brought less rubbish memory management to early MacOS.

  53. In mainframe? Hell no! by s.petry · · Score: 1

    There are two big reasons for the "Hell no". First, in the 70s and 80s Computers were all about money. If you could afford it, you did it. If you did not have enough memory, you either re-wrote or paid for more. I'm sure we could have reserved some core to hold the LZ libraries, but that would consume more space than any piece of code we ran. Space conservation would be the second reason.

    I'd say the same for the first *Nix systems as well. If you had to worry about compressing in memory you were doing something wrong.

    --

    -The wise argue that there are few absolutes, the fool argues that there are no probabilities.

  54. Re:In mainframe? Hell no! by Cyberax · · Score: 1

    Oh, please. Simple compression/decompression code fits into 1kb with another kb or so for dictionary and decompression buffers. So with a typical 50% compression rate the breakeven point is around 8kb. In the middle of 80-s computers had around 1Mb of RAM.

  55. Re:Great by Ash-Fox · · Score: 1

    Or why not try it with hybrid disk? Use the disc's solid-state portion as a kind of reserved swap space.

    There is no magic switch that I could see on my Seagate SSHDs to just write to the SSD portion gfor such things. Also, I/O performance compared to a regular SSD was still significantly lower, but significantly better than a HDD.

    Or, just put 8+GB of RAM in your machine and do away with pagefiles altogether.

    I have 24GiB of RAM and I am still finding there are times I need to do a lot of swapping.

    Seriously, I didn't notice any performance impact with Premiere Pro when I turned off the Windows pagefile.

    You probably aren't doing much I consider worthwhile on your PC.

    --
    Change is certain; progress is not obligatory.
  56. Re:In mainframe? Hell no! by murdocj · · Score: 1

    Wasn't the Mac limited to 128Kb because that was all anyone would ever need? For that matter, most people were running DOS on PCs and that had the 640kb limit.

  57. Re:Great by dwywit · · Score: 1

    1. There are these things called firmware and APIs, to allow access to the functions that hardware can provide, even functions not originally envisaged by the manufacturers. An SSHD manufacturer could provide firmware with an API to allow it to be used as reserved memory cache.

    2. 24GB of RAM on a workstation, and it still wants to swap? That's either lazy work practices, sloppy application software, or you need to consider a minicomputer for your work. I used to run a minicomputer with 48 MB of main memory - yes, megabytes - supporting ~200 green screen terminals and a similar number of PCs - and they had sub-second response times with interactive application software. If a 24GB workstation still wants to swap memory pages, you're asking too much of it.

    3. What I do on my PC earns me money, is that not worthwhile? The particular project that I 'braved' with no windows pagefile was an edit of footage of interviews with ageing WWII veterans, to preserve their stories. Would you consider that worthwhile?

    Judgemental much? What part of the spectrum are you on?

    --
    They sentenced me to twenty years of boredom
  58. Re:In mainframe? Hell no! by drinkypoo · · Score: 1

    Wasn't the Mac limited to 128Kb because that was all anyone would ever need?

    Lisa ("Mac XL", prototype mac essentially) 512k-1MB, 2x HDD expansion only.

    Original mac, 128k expandable to 512k by soldering, no expansion bus. Followed by 512k version with no other changes.

    All macs thereafter: 1+MB, expansion bus

    --
    "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
  59. So Win10 ist still in "alpha"... by gweihir · · Score: 1

    For a beta-version, it would need to be at last "feature complete".

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  60. Re: Compressed swap isn't all it's cracked up to b by Theovon · · Score: 1

    It's unlikely to be the extensions. When I report this bug to Apple, they too are satisfied (as far as I can tell) that it's not the extensions. I have the following enabled:

    ClickToFlash (this should actually be GOOD for the memory footprint)
    Sessions (because Safari natively sucks at saving and restoring its state)
    Google Scholar Button (which was only recently installed and has not affected anything)

  61. it's just not that great by sribe · · Score: 1

    Performance of my system went to hell when Apple added this to OS X. Apparently I was already on the cusp of needing more RAM, and this pushed me over the edge. The fundamental problem with this is that the compressed pages take up space in RAM when your system is already low on RAM. Duh. I think it's more about reducing writes to SSD than it is about improving performance.

  62. Re:Great by Ash-Fox · · Score: 1

    1. There are these things called firmware and APIs, to allow access to the functions that hardware can provide, even functions not originally envisaged by the manufacturers. An SSHD manufacturer could provide firmware with an API to allow it to be used as reserved memory cache.

    That's a nice 'what if', but Google tells me that this hasn't happened and your original comment seem to convey this is something that is practical today, it is not.

    2. 24GB of RAM on a workstation, and it still wants to swap? That's either lazy work practices, sloppy application software

    Honestly, I think my application software is fine and I view the ability to deploy software into my test virtual machines that have very specific unusual and common setups running on my system with integration with the host's visual studio is a God send where both reproducing issues and testing is concerned. This is also while running all my productivity software (I usually have three or four apps from adobe creative suite open), chat software (ie: Skype) and a browser with numerous tabs open.

    or you need to consider a minicomputer for your work. I used to run a minicomputer with 48 MB of main memory - yes, megabytes - supporting ~200 green screen terminals and a similar number of PCs - and they had sub-second response times with interactive application software. If a 24GB workstation still wants to swap memory pages, you're asking too much of it.

    If a 24GiB workstation still wants to swap, it's because I am using that memory. My next system will likely feature 128GiB of RAM though.

    As for mini computers, I guess the modern equivalent these days is a Chromebook - It would just be moving my work from a workstation to somewhere else, not really helpful.

    3. What I do on my PC earns me money, is that not worthwhile?

    Sure, it's good to earn money. But my understanding of the term 'worthwhile' is to do with importance or significance. I don't consider working in say, a fish 'n chip shop be 'worthwhile'.

    The particular project that I 'braved' with no windows pagefile was an edit of footage of interviews with ageing WWII veterans, to preserve their stories. Would you consider that worthwhile?

    I will admit I was in the wrong here. There is certainly some significance in such work and I may have assumed too harshly.

    However, I do not agree with how you went about doing it because your work is less relevant than it could have been in today's world to be honest. Why? Because media consumption habits have changed and it is apparent based off your description that you're just doing editing of footage instead of making searchable interactive content (and if you you were not in a position to make those choices and wanted to make them, that sucks).

    Judgemental much?

    Don't be offended, I find being direct and challenging is a much better approach to livening up discussions and getting a understanding of people's positions quickly.

    What part of the spectrum are you on?

    2 meters usually.

    --
    Change is certain; progress is not obligatory.
  63. Re:Great by dave420 · · Score: 1

    Easy on the judgement there yourself! By your logic anyone who would ever need to compress swapped memory is asking too much from their computer, so by injecting that little taunt you've derailed your entire argument, it seems.

  64. Re:PSA: by omnichad · · Score: 1

    Uninstall Edge just because it's resuming a browsing session after closing? That's a configurable behavior in Chrome and Firefox, too.

    How about you clear the browsing session data or turn off automatic crash recovery?

    Sure, it should let you close it. Beyond that, it's doing what you've asked it to do.

  65. Re:PSA: by hackwrench · · Score: 1

    How am I supposed to do that without uninstalling it when I can't do anything with it? And actually going to Edge settings just now the Open with option is set to "start page" not previous pages. Yet another feedback report to make.

  66. Re:PSA: by omnichad · · Score: 1

    Unless they changed more in Edge, "Internet Settings" in the Control Panel is probably the Edge settings. Go there and set it not to resume. I haven't used much with Edge, so I honestly couldn't say.

    Otherwise, finding the registry/filesystem location that saves the browser state and deleting it. Do you uninstall every program you have a launch problem with?

  67. Re:In mainframe? Hell no! by ejasons · · Score: 1

    Wasn't the Mac limited to 128Kb because that was all anyone would ever need?

    Do you have any other ignorant statements to add?

  68. Re:PSA: by hackwrench · · Score: 1

    Only the ones that have gotten their state so corrupted and don't have documented ways to fix.
    I've has problems with Internet Explorer that I was told the only solution was to uninstall and reinstall.
    Windows 10 also tries to hide Control Panel for a Settings app. I used to click on a shortcut to This PC and then select Control Panel, but Settings was there instead. I just did a search Windows-S for Control Panel and it turned up. Navigating to the directory it is in and doing a windows search for it seems to be the only two ways of getting to it now.

  69. Physical vs. Virtual Machines - Different Tradeoff by billstewart · · Score: 1

    If you're running a desktop or server on an even vaguely modern physical machine, you've got more cores than you know what to do with, and if the OS wanted to get fancy it could probably use the GPU for decompression or compression. (Also, at least with LZW, decompression is much faster than compression, and compression is something you do with memory you weren't currently using anyway, so it's ok if it's a bit slower.)

    On virtual machines, it's a different game, because you're sharing the CPU with other VMs and often only have one core.. You may still want to use it, because memory may still be more scarce than CPU, and while you may have a faster disk array, it's often farther away than the disk on a physical machine.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  70. Keanu Reeves had it in 1995 for Wetware by billstewart · · Score: 1

    Of course, Johnny Mnemonic was set in 2021, but still, whoa! Welcome to the Free City of Newark!

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  71. Re:Great by Rich0 · · Score: 1

    Or, just put 8+GB of RAM in your machine and do away with pagefiles altogether. Seriously, I didn't notice any performance impact with Premiere Pro when I turned off the Windows pagefile.

    Which makes more sense? Buying more of your fully-utilized RAM, or installing a device driver that uses a few percent of your 10% utilized CPU to make that unnecessary?

    If you're CPU-bound then adding RAM compression is a bad idea. If you're RAM-bound it makes a lot of sense.

    Sure, you could add more RAM, but maybe you'll get more bang for the buck if you add more CPU instead. Or if you go out to dinner.

  72. Re:Great by dwywit · · Score: 1

    My example was perhaps an outlier. I have 8GB in a Core i7 machine. That machine spends perhaps a quarter of its powered-on time rendering video. When that happens, it tops out on RAM - fortunately it's possible within the Adobe suite to limit the amount of RAM that it has access to, so I only give it access to about 6.5GB RAM, leaving the machine able to still run email and a couple of browser tabs without bogging down in swap.

    Due to the nature of the Adobe product (and I've seen this complaint on user forums), the machine does NOT top out on CPU whilst rendering - maybe 70 or 80 %.

    So, when rendering, there's some processing capacity unused (yes, I also have sloppy software), but I have to place an artificial limit on RAM access to leave me space to do other work at the same time (although I like your idea of going out to dinner).

    Having read about other people turning off the windows pagefile when RAM is 8GB or greater, I decided to try an experiment. I rendered a video file with the pagefile on, then switched off the pagefile and rendered it again. There was no discernable difference in the amount of time taken to complete the job. I didn't control for all variables, but I've since left the pagefile off and haven't noticed any slowdowns.

    --
    They sentenced me to twenty years of boredom
  73. also available in Chrome OS since 2013 by semenzato · · Score: 1

    We started experimenting with the compressed memory module (zram) in Chrome OS in 2012, and deployed it fully in 2013. It's a simple approach: the kernel uses a compressed RAM disk as a swap device. It works pretty well. On average we store about 3 compressed pages into one page.

  74. Not everybody is paid hourly by tepples · · Score: 1

    You don't get to leave early just because your CPU compiled your code faster or that web page loaded a bit faster.

    You do if you're paid on contract, not hourly.