<div dir="ltr"><div>Hello everyone,</div><div>Here is my report for week 13.</div><div><br></div><div>During this week there wasn't many changes in code, because, as I said in my previous report, I was focused on bug-hunting and code refinement.</div>
<div>During this week a bug was discovered that caused corruption of data under certain circumstances and it was corrected. The interesting thing about that bug is that it actually was introduced on a very early stage of development, before I actually implemented the compression itself.</div>
<div><br></div><div>Also a minor feature was added: now the user can tune the compression level of ZLIB, but it is limited only to levels 6 to 9 (default to slowest), because for fast compression we have LZ4 and I wanted to keep the code compact for now. It's possible to tune with the “hammer2” utility and the command to set compression looks like “hammer2 setcomp 3:9 /specific/folder”. In this case it sets /specific/folder to compression with ZLIB (3) level 9.</div>
<div><br></div><div>The reason I implemented this feature is that it turns out that on a real hardware there is a significant difference in performance between ZLIB levels in case of huge amounts of data (more than a gigabyte). Levels 6 and 7 seem to be reasonably slow, but 9 can be extremely slow, so it is better to leave this choice to user according to his/her needs.</div>
<div><br></div><div>I also managed to test the file system with bonnie++ benchmark. It successfully passed all the tests I performed on it with all modes. For now I'm not presenting the results of the tests, because they are difficult to read and interpret, and I'm not sure how much sense they make in our case, but the important news for me is that the file system passes this test and thus we seem to have achieved a certain grade of stability.</div>
<div><br></div><div>The GSOC is not over yet, but we passed the suggested “pencils down” date. This means that during this week I don't expect to touch the code unless there is something really important to fix. Instead I'm going to focus on documentation and making sure that the code is ready to be submitted after the firm “pencils down” date. I will also be running more tests to ensure that everything is fine and if something is not quite fine, then I'll write down all found bugs to fix them later.</div>
<div><br></div><div>Thank you. You can check my current code in my repository, branch “hammer2_compression” [1].</div><div><br></div><div>Daniel</div><div><br></div><div>[1] git://<a href="http://leaf.dragonflybsd.org/~iostream/dragonfly.git">leaf.dragonflybsd.org/~iostream/dragonfly.git</a></div>
</div>