A Crash Course on Modern Hardware

Posted January 18th @ 3:36 pm by Chris

Cliff Click from Azul Systems gives a talk on one of my favourite subjects, Computer Architecture. He looks at the difficulty of predicting performance on modern x86 CPUs.

Ride to Portside

Posted January 12th @ 11:08 am by Chris

I rode to Portside this morning to try out MotionX GPS on the iPhone. I found a couple of weird signs along the way.

Date:12/01/2010 8:49 am
Distance:22.0 kilometers
Elapsed Time:1:12:46
Avg. Speed:18.1 km/h
Max. Speed:44.5 km/h


View Ride to Portside in a larger map

Turing’s Cathedral

Posted January 10th @ 9:37 pm by Chris

Turing’s Cathedral is an interesting look at computing at the 60th anniversary of John von Neumann’s proposal for the digital computer. It cover aspects of computational models, biology, AI and the growing wealth of knowledge on the internet.

The quotes below show how we have far exceeded the original expectations of computation. Even though we are still programming the von Nuemann architecture / Turing machines, I have always wondered how much the languages we use would change given an entirely different computational model.

“When the machine finally became operational in 1951, it had 5 kilobytes of random-access memory: a 32 x 32 x 40 matrix of binary digits, stored as a flickering pattern of electrical charge, shifting from millisecond to millisecond on the surface of 40 cathode-ray tubes.”

“By breaking the distinction between numbers that mean things and numbers that do things, von Neumann unleashed the power of the stored-program computer, and our universe would never be the same.”

“In the early 1950s, when mean time between memory failure was measured in minutes, no one imagined that a system depending on every bit being in exactly the right place at exactly the right time could be scaled up by a factor of 10^13 in size, and down by a factor of 10^6 in time. Von Neumann, who died prematurely in 1957, became increasingly interested in understanding how biology has managed (and how technology might manage) to construct reliable organisms out of unreliable parts. He believed the von Neumann architecture would soon be replaced by something else. Even if codes could be completely debugged, million-cell memories could never be counted upon, digitally, to behave consistently from one kilocycle to the next.”

“As organisms, we possess two outstanding repositories of information: the information conveyed by our genes, and the information stored in our brains. Both of these are based upon non-von-Neumann architectures, and it is no surprise that Von Neumann became fascinated with these examples as he left his chairmanship of the AEC (where he had succeeded Lewis Strauss) and began to lay out the research agenda that cancer prevented him from following up.”

“We can divide the computational universe into three sectors: computable problems; non-computable problems (that can be given a finite, exact description but have no effective procedure to deliver a definite result); and, finally, questions whose answers are, in principle, computable, but that, in practice, we are unable to ask in unambiguous language that computers can understand.”

USA

Posted December 16th @ 11:29 am by Chris

Earlier this year I travelled to the USA for SIGIR 2009. I visited New York City, Boston, Santa Fe, Los Alamos and Taos. I have made another travel map!


View Trip to the USA for SIGIR 2009 in a larger map

Long Distance

Posted October 26th @ 10:40 pm by Chris

Q: Why did the programmer call his mother long distance?
A: Because that was her name.

Computing Then

Posted June 21st @ 8:56 am by Chris

Computing Then is an interesting look into the past of computing. With much focus on the “now” of computing and electronics, this is a nice break. I always enjoy the 16 & 32 years ago column in the IEEE Computer publication. I remember 16 years ago quite vividly but alas I am not 32 yet. The older I get, the less powers of 2 I get to experience. I doubt I will make 2^7.

Adaptive Compression of the Dynamic Range

Posted May 26th @ 11:02 am by Chris

Dynamic range compression is a technique used by audio engineers to optimise the distribution of frequencies in a mix. In popular music it is often abused, resulting in a flat and overly loud sound. An audio engineer applies some static parameters of threshold, knee, compression ratio, attack, delay and gain based on the typical listening environment of their anticipated user. This is why you can hear your favourite top 40 track in a noisy environment but you can barely hear classical music at the same volume level on your audio device. Therefore, I propose that these parameters should adapt to the environment of the user. If it is noisy, the compression ratio is pushed up and if it is quiet it can be relaxed. By intuition, I assume that this would be a relatively easy solution to solve with machine learning. My simple explanation with one of the parameters is trivial. I am sure more complex relationships exist between the parameters and user satisfaction. If someone could embed this in a popular music player with the correct audio source, it could be a winning combination. However, this requires an unmastered, or a minimally mastered audio source.

Dusty

Posted February 14th @ 5:31 pm by Chris

This dust storm in Broken Hill just blew my mind. Looks so awesome!

Europe

Posted January 24th @ 5:18 pm by Chris

I recently traveled to Europe to attend INEX. There are photos of Frankfurt, Dagstuhl, Trier and Amsterdam.


View Trip to Europe for INEX in a larger map

500 days

Posted January 24th @ 7:06 am by Chris

# uptime
06:01:30 up 509 days,  6:12,  1 user,  load average: 0.00, 0.00, 0.00

Now that I have passed the 500 day mark I can bring myself to install a new distro. Time to say good bye to Slackware after 14 years and replace it with noobuntu server. Package management just seems easier. This is my last box with Slackware still on it.

Options:

Size

Colors