No comments yet.
No trackbacks yet.
10 reasons my O(n²) algorithm is better than your O(n) algorithm
about 1 year ago - No comments
OK, so it’s a controversial title, but the point I want to make is that programmers often get confused about the time complexity, i.e. order O() of an algorithm and performance. They will happily declare that their O(n) algorithm is so much better than someone else’s O(n²) algorithm as they rip out some simple, stable, More >
Measuring website browser performance
about 2 years ago - No comments
www.webpagetest.org is a great resource for anyone looking into web site performance.
Shaving seconds off page load times
about 2 years ago - No comments
IIS6 comes with some antiquated settings for Gzip compression. Even after enabling it in the IIS management console nothing happens until you edit the metabase file to enable the files you really want to compress. With the correct settings the main page for my site now loads in 5.3s instead of 6.0s and subsequent loads More >
Amazon High-CPU Medium Instance is about 30% slower than a dedicated core 2 duo server
about 2 years ago - No comments
Recently we benchmarked a dedicated GoDaddy server against an Amazon EC2 instance and $ for $ the GoDaddy server was about 30% faster. Here are some stats: Godaddy Dedicated Server 2 GB memory Processor: Intel Core 2 Duo – 2.13 GHz 32-bit platform Raid: None $146 per month UPDATETEXT … – Took 116ms SLIDEHANDLER3 … More >
Optimization Advice
about 2 years ago - No comments
Optimization is the root cause of much unmaintainable code. It is also the root cause of many bugs. My advice to the vast majority of programmers is to stay away from it: if you have a good architecture you should not need to optimize it at this level. Personally I divide optimization into three buckets: More >
Cache optimized scanning of pairwise combinations of values
about 4 years ago - No comments
Suppose you wanted to calculate all of the pairwise combinations of the values in a vector of n elements. The result would be a 2D matrix of dimensions n squared. A naive approach to this would be two nested for loops evaluating each of the n squared values. But now suppose that the values in More >
It’s all about disk speed
Recently I upgraded to a 10,000 rpm drive in my desktop and a 7,200 rpm drive in my laptop. Quite frankly this is the most cost effective way to improve performance on any machine. CPU speeds have grown dramatically over the last few years, so has memory capacity and CPU to memory bandwidth, but disk seek speeds and disk transfer rates have grown much more slowly. Chances are your CPU spends most of its time either idle or waiting for the disk drive now.
Windows Vista was designed with assumptions about us all having faster computers, more memory and bigger disk drives but without faster seek speeds and higher disk to memory performance, any move towards ‘bloat’ is going to result in a more sluggish computer with worse battery life.
Personally I run Windows 2003 Server on all my computers including the laptop – it’s the most stable OS Microsoft has ever shipped and, to me, stability beats features and flashy UI.