The Raw Processing Power of a Single PC
One of the most interesting aspects of the psychology of system design is the number of very real limitations Architects impose on themselves based on past experiences that are simply no longer true. The fact is, we hire/evaluate System/Software Architects in large part because of the experiences they have had. Frankly, performance is one of those areas which employers place high value in. At least, up until now.
Over the next few weeks & months, I would like to perform some interesting (I’d like to think) tests on ordinary desktop applications. My hypothesis is that they are now of the caliber we used to associate with mainframe/supermini computer performance and that PC’s are greatly under-utilized. This may give even more fodder to the idea of virtualization.
Now, I am not looking to perform a scientifically based study – I will release the sourcecode and methodology for critique but this is essentially an emperical effort. I’m looking for answers within an order of magnitude so give me a break. The data sets will probably come from something like the USGS (US Geological Survey) because it is big, you can get your own copy, and I don’t have to type it.
Some of the things I’m looking for are numbers on:
1) Database Performance.
- Time to query a million row table with 20 columns (with and without indexes)
- Time to query 7 tables joined together for a number of matching rows.
- Time to query a million row table using a LIKE query (both pre ‘%’ and post ‘%’)
I’d like to run this with the following databases:
- MySQL Innodb
- Postgres
- MS Access
- JavaDB
- Oracle 10g
- IBM DB2
My hypothesis is that these systems will perform substantially the same and with very high performance.