Got Data?

In anticipation of the algorithms presented in a course I’m having this semester I toyed around yesterday and created the diskvector. It is a simple piece of code that only took two hours to write. It is used when you need a vector of, say, a gibibyte of data. If you only have 128Mib of memory this will clearly nut suffice. Your operating system will then page the data onto disk, but you might find it hard to control this behaviour, and random access will nevertheless cripple your computer. The diskvector is initialized with the total size of the vector and the number of elements (B) you want to keep in memory. The disk vector overloads the [ ] operator and will always keep B consecutive elements in memory and only reload the memory if you try to get an element not in memory. This can be used to, for instance, the construction of a fast searching algorithm for large vectors. You could for instance modify the standard merge sort to work in blocks of size B.

A Not so Boring Weekend

Friday night I went with Brian and our respective girlfriends new shoesto Fatter Eskil to hear the danish band, tidsmaskinen. They played danish and international hits from the past three decades and were really cool. When we woke up Saturday, we went down to the city centre to shop for much needed shoes for me, the result of which can be seen on my very feet on the picture on the right. I think I am now eligible for “Best Dresser 2005″, but I am not sure many would agree with me on that :)I have been reading The Foundation Series by Isaac Asimov the last couple of weeks and have been passing the books on to my eager neighbour Mette who is also reading the series. They can highly be recommended and I am enjoying them as much as I did Peter F. Hamilton’s excellent Night’s Dawn Trilogy. So if you are looking for something to read, pick up one of those series, or another space opera, it is a great genre.

Today also marks the end of the exam period and the new courses are starting. I will be following I/O Algorithms by Lars Arge, Randomized Algorithms by Gudmund Frandsen and Foundations of Evolutionary Computing by Thiemo Krink. Aren’t you just thrilled I told you all that? At least I now have the links gathered somewhere :).