Just realized that the poor performance I was seeing when downloading a file from Rackspace Cloudfiles to a local drive was due to shutil.copyfileobj without specifying a buffer size. As I found out, the default buffer is 16k (just in case you’re running on a 640k server), increasing it to 1MB sped up the process from 17.8 seconds to 0.8 seconds, with 5MB down to 0.3 seconds (for files averaging about 3-4MB).
So remember: always supply a buffer size, and the 60x speed increase can be yours too!
I just received an email from the Google Inactive Account Manager, reminding me of what will happen if I don’t log into my Google account for two months. Because I’ll be dead. Or something else. But I can’t think of anything else.
Just found out the hard way that putting a running MacBook on top of a closed, sleeping one will put the running MacBook to sleep as well…
This article appeared in VRA Bulletin Summer 2012, Volume 37, Number 2.
Madison Digital Image Database 3
Andreas Knab, Lead Software Developer, Center for Instructional Technology and
Kevin Hegg, Assistant Director, Center for Instructional Technology, James Madison University Read more…
Over the past couple of days I attended several OSCON sessions on new (to me) programming languages:
- Erlang was not completely new to me, but I had not understood the overall architecture of the Erlang environment and its similarities to an operating systen.
- Clojure, a Lisp dialect, seems the least practical for day-to-day use, but is also the most different and interesting to me.
Since a new “hardest” Sudoku puzzle was just announced, I finally wrote my own Sudoku solver in Python. I based it on some ideas from Peter Norvig’s Sudoku solver, but ended up writing everything from scratch. The code is available on github.