Kedar Soparkar applied for Google Summer of Code with DragonFly, but didn’t make the cut with the very few slots we have. So, he’s going to work on his i386 ABI implementation anyway. More student work is always wonderful news.
Chatoor Kalki posted about his desire to learn about this whole UNIX/BSD/DragonFly thing, and there were several followups that may be useful to anyone interested in some reading.
There hasn’t been much to nab for Lazy Reading, lately. Oh well. The last few weeks were good so it has to even out sometime.
- Did you know GBC stands for Great Ball Contraption, a Lego device designed to move little plastic balls? Here’s 20 of them chained together. (via b3ta)
- The original University POSTGRES. (thanks, Jan) This is a source for PostgreSQL, as far as I can tell, which makes it in some ways contemporary to BSD’s origins. I am not surprised. PostgreSQL seems to be the thinking person’s alternative to MySQL like BSD is the thinking person’s alternative to Linux.
- Do you have a pf.conf? The people behind fwbuilder can use it for examples, so they can support pf in their config builder. (via)
Rui-Xiang Guo is looking for testers for wip/chromium. That’s the zippy Google browser. He especially wants DragonFly users – this would be useful, especially since I think Firefox 4 does not build on DragonFly right now.
Two more of the DragonFly and Google Summer of Code projects: Irina Presa’s checkpointing vkernels, where you can save a running virtual kernel and start it again later, and Nick Prokharau’s port of PUFFS.
(Anyone know the HTML character code for ‘s’ with an inverted grave mark so I can spell Irina’s name correctly?)
Yay acronyms! Brills Peng was accepted for the Summer of Code project “Improve dsched interfaces and implement BFQ disk scheduling policy” – and now there’s a nice writeup describing what’s planned. Also, Stéphanie Ouillon did the same thing for the virtio drivers project. Adam Hoka also joined in with a summary for his LVM mirror project. Please keep this up, students.
If you are a European resident, Federico Biancuzzi has the DRAGONFLYBSD.IT domain name available to donate. He doesn’t want to let it go and have it taken by a domain squatter. Talk to him at sale@securitydaemon.com if you want to hold on to it for some unspecified time.
I did some comparative benchmarking between the 2.6, 2.8, and upcoming 2.10 release for DragonFly. As several people have guessed, performance has improved significantly, and the difference would probably be even more pronounced if I was using more modern hardware, e.g. swapcache or a system with AHCI. I have a mailing list post with details, and here’s the graph that sums it up:
(Sorry, no Lazy Reading this week. Life didn’t co-operate. At least there’s a pretty graph!)
Not shirts with zombies on them, but DragonFly shirts that don’t have a seller. I had a random Google search turn up a store selling DragonFly T-shirts, among other things. It was essentially a spam store. The seller wasn’t producing anything but instead reselling other people’s material for a commission, similar to the splogs out there that recopy material from other blogs or Wikipedia and slap ads on it. (I’ve seen Digest material pop up that way.)
Following the link back shows that the shirt is sold through a Cafepress store called ossgear. It looks like the original store owner asked permission to use the logo back in 2006. ossgear.org is no longer a functioning domain, and I can’t find any other reference to this seller; they appear to have stopped doing business 5 years ago.
The moral of this story: Sites like Cafepress will try to profit from your work long after you’ve stopped using them. The frustrating part is that the logo isn’t even right!
Tomas Bodzar asked about RAM usage with Hammer and deduplication, pointing at this example that shows ZFS requiring… I’m not sure. Lots? Anyway, Matthew Dillon noted that offline deduplication in Hammer would use available RAM/swap for CRCs on all files, but only a limited subset for ‘live’ dedup. For a real-world example, Venkatesh Srinivas described deduplicating about 600G down to 400G, with a machine having only 256M of RAM. Yes, only 256M.
This upcoming Monday should be exciting! It’s the planned date for the release of DragonFly 2.10. Also, the accepted projects for Google Summer of Code (including for DragonFly) will be announced.
The DragonFly 2.10 branch was a bit later than predicted, but that was mostly to avoid merging work. Release should still be in a few days.
If you’re running DragonFly 2.9, now is a good time to update and try various ACPI-related things, like power button shutdowns and battery monitoring. Sepherosa Ziehau has been updating vigorously.
There’s a new Supported Hardware page on dragonflybsd.org. I think the idea is not to be comprehensive, since that’s a nigh-impossible task. Instead, it’s to note the combinations of hardware that work really well.
I love graphs. Jan Lentfer made some! Both of these show recent speed improvements in DragonFly – especially some spectacular results from swapcache(8) and the recent NCQ tagging improvements. (Note that only the third graph represents the NCQ improvements; the first two graphs were done before.)
The first one is a comparison of pgbench running on the same hardware twice – once with the 2.8 release of DragonFly, and once with a recent 2.9 version. 2.9 is definitely looking to be faster than 2.8.
Next up is a 2.9 system run with and without swapcache, showing an astounding difference between the two. It’s pretty clear just how much performance improvement you can get from swapcache… (see Jan’s notes on the setup after the graphic.)
Jan’s notes, from EFNet #dragonflybsd on IRC:
15:08 < lentferj> these are SELECT-Only tests
15:09 < lentferj> JustinS: it’S important to note, that the database is 2,5x
bigger than RAM on the swapchache test
15:11 < lentferj> JustinS: I did a Select-Only ramp-up of 30 minutes to get
caches and swapcache filled
15:12 < lentferj> JustinS: and then I ran
15:13 < lentferj> for i in 1 2 3 4 6 8 12 16 24 32; do
/usr/lib/postgresql/8.4/bin/pgbench -U pgsql -h atom -s 400
-S -c “$i” -T 600 pgbench; done
15:13 < lentferj> so, select only pgbench for 10 minutes each
15:13 < lentferj> with increasing numbers of client
15:14 < lentferj> pgbench on another box, 100MBit switched network
15:15 < lentferj> JustinS: the first graph (2.8.2 vs current) is the same w/ a
database that fits in RAM entirely
15:15 < lentferj> so measuring concurrency performance (w/o I/O)
15:17 < lentferj> the swapcache comparison was on a 2GB box with a 5GB database
and 16GB swapcache (INTEL) attached to a sili card
15:17 < lentferj> on a atom 330 :)
Now, here’s testing with the recent NCQ tagging update for AHCI:
These results are astonishing. Please, someone compare with other operating systems!
Here’s the stats for this last test:
- 5.6GB database, system w/ 2GB RAM –> io benchmark
- pgbench with increasing no of client 1->32, SELECT-Only Mode
- sili controller Dawicontrol DC-3410 SATA PCI controller which is using a Silicon Image 3124-2 chip
- 2 Seagate Barracuda ES.2 250GB SATA II disks
- lvm stripe over those disks
- postgresql.conf is default, except shared_buffers set to 512MB and effective_cache_size to 1024MB
- atom330 on a Foxconn mobo
- SSD is SATA INTEL SSDSA2M040 2CV1
I mentioned this before, but there’s now an official announcement that pkgsrc is (now, after the 2011Q1 release) going to DESTDIR support and what that means.
This alphabet soup of acronyms is what Matthew Dillon updated, leading to some significant performance improvements for drives that use NCQ tagging. Try it out cause it’s fast, and try it out because it needs testers; this is a change that affects some basic parts of how data is written to disk, and you don’t want to get that wrong…
There’s been plenty of discussion about Summer of Code projects on the mailing lists. One conversation about “Implementing a mirror target for the device mapper” led to a longer description from Venkatesh Srinivas about mirroring and how he’s looked at implementation.
Branch tomorrow, release in 2 weeks. There’s a ton of new features for 2.10, so this will be a fun release. I’m trying to get pkgsrc-2011Q1 packages built for 2.10 ahead of time, too.