<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Compression on Nitin Gupta</title>
    <link>https://nitingupta.dev/tags/compression/</link>
    <description>Recent content in Compression on Nitin Gupta</description>
    <generator>Hugo</generator>
    <language>en</language>
    <managingEditor>ngupta@nitingupta.dev (Nitin Gupta)</managingEditor>
    <webMaster>ngupta@nitingupta.dev (Nitin Gupta)</webMaster>
    <lastBuildDate>Sun, 30 May 2010 06:53:00 -0700</lastBuildDate>
    <atom:link href="https://nitingupta.dev/tags/compression/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Compressed RAM disk for Windows, The Virtual Way!</title>
      <link>https://nitingupta.dev/post/compressed-ram-disk-for-windows-the-virtual-way/</link>
      <pubDate>Sun, 30 May 2010 06:53:00 -0700</pubDate><author>ngupta@nitingupta.dev (Nitin Gupta)</author>
      <guid>https://nitingupta.dev/post/compressed-ram-disk-for-windows-the-virtual-way/</guid>
      <description>&lt;p&gt;Recently, I developed Linux kernel driver which creates generic RAM&#xA;based compressed block devices (called &lt;strong&gt;zram&lt;/strong&gt;). Being RAM disks, they&#xA;do not provide persistent storage but there are many use cases where&#xA;persistence is not required: /tmp, various caches under /var, swap disks&#xA;etc. These cases can benefit greatly from high speed RAM disks along&#xA;with savings which compression brings!&lt;/p&gt;&#xA;&lt;p&gt;However, all this seems to be completely Linux centric. But with&#xA;virtualization, zram can be used for Windows too! The trick is a expose&#xA;zram as a ‘raw disk’ to Windows running inside a Virtual Machine (VM). I&#xA;will be using VirtualBox as example but exposing raw disks should be&#xA;supported by other Virtualization solutions like VMware, KVM too.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Difference Engine - Harnessing Memory Redundancy in Virtual Machines</title>
      <link>https://nitingupta.dev/post/difference-engine-harnessing-memory-redundancy-in-virtual-machines/</link>
      <pubDate>Fri, 13 Mar 2009 05:30:00 -0700</pubDate><author>ngupta@nitingupta.dev (Nitin Gupta)</author>
      <guid>https://nitingupta.dev/post/difference-engine-harnessing-memory-redundancy-in-virtual-machines/</guid>
      <description>&lt;p&gt;Here is link to paper&#xA;(&lt;a href=&#34;http://www.usenix.org/events/osdi08/tech/full_papers/gupta/gupta.pdf&#34;&gt;pdf&lt;/a&gt;)&#xA;(&lt;a href=&#34;http://www.usenix.org/media/events/osdi08/tech/mp3s/gupta.mp3&#34;&gt;MP3&lt;/a&gt;)&lt;/p&gt;&#xA;&lt;p&gt;Recently I came across this paper published in &lt;a href=&#34;http://www.usenix.org/events/osdi08/&#34;&gt;OSDI&#xA;&amp;lsquo;08&lt;/a&gt;. Its an extension to VMware&amp;rsquo;s&#xA;page-sharing and shows some amazing and &lt;span&#xA;style=&#34;font-weight: bold;&#34;&gt;hard to believe&lt;/span&gt; results. VMware&#xA;page-sharing mechanism scans memory for all VMs and maps pages with&#xA;&lt;span style=&#34;font-weight: bold;&#34;&gt;same&lt;/span&gt; contents to a single page.&#xA;This achieves memory savings if multiple VMs are hosted running same OS.&#xA;However, with technique discussed in this paper, we find pages that are&#xA;&lt;span style=&#34;font-weight: bold;&#34;&gt;nearly same&lt;/span&gt;. For such pages,&#xA;they save a &lt;span style=&#34;font-style: italic;&#34;&gt;base page&lt;span&#xA;style=&#34;font-style: italic;&#34;&gt; &lt;/span&gt;&lt;/span&gt;and other similar pages as&#xA;&lt;span style=&#34;font-style: italic;&#34;&gt;delta&lt;/span&gt; of original page. For&#xA;pages which are not similar to any other page are simply compressed.&#xA;Their benchmarks shows upto 45% more memory saving over ESX page-sharing&#xA;under some (specially crafted) workload.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
