Tuesday, August 15, 2006

Test Blog Post using Windows Live Writer

I have decided to try the new (free) Windows Live Writer program, which bills itself as a free blog editor that will work with any blog (of course, they want you to use the Windows Live Blog, but that's a whole other Oprah!).

We'll see how it works....if this works, it could be cool.

I guess that BlogSpot doesn't support FTP publishing. Bummer.

Tuesday, August 01, 2006


Beauty and mystery in rare Antarctic clouds

These are really awesome pictures of rare nacreous clouds taken in Antarctica on July 25. The air temperature in the region of these clouds was -87C (-125 degrees F!), and the wind was blowing at 230 KPH (142 MPH). The clouds were located about 20 KM above the ground (12 miles).



Apparently, these types of clouds are only seen when climatic conditions are at their most extreme--such as they are now in the dead winter in Antarctica. Pretty amazing, IMHO.

Monday, May 15, 2006

Thoughts on Sun's Grid

Since my company's product (Centauri) is a part of Sun's N1 Grid Reference Architecture, I decided to sign up for a Sun Grid account to try out the service. After a few fits and starts (primarily having to do with requiring a PayPal account for some random reason), I finally received a note from Sun last week that my Grid account was set up and ready to go (if you 'd like to try it yourself, go to www.network.com).

Basically, the idea behind a grid is that a large number of computing machines are linked together into a "grid," ready to serve processing needs. There are two main initiatives in this area (well, actually three, but HP's offering isn't even close to baked): Sun's Grid and IBM's Grid. Sun's offering provides CPU facilities on an as-needed basis for $1/CPU hour, with no requirements as to maximum and minimum usage--just like an electric utility, you just use the compute power when you need it. The idea is really germane for large enterprises, which have cyclical/seasonal spikes in compute need (a classic example is retail, which typically needs a lot of resources in the November and December months).

It's a great idea, and since we're a part of Sun's initiative, I thought I'd give their compute utility a spin. Sun makes it sound really easy to use: 1) upload your application, 2) run your job, and 3) get your results. Unfortunately, step #1 is where it gets hairy--it's not easy or intuitive in the least to upload an application to the grid.

First, you have to upload a standalone (no console input), 32- or 64-bit pre-compiled application that will run on the Solaris 10 x86 operating system, or a generic Java binary. This automatically excludes pretty much most of the market, as I for one don't have an application of that type just lying around waiting to be run. There are clearly markets that do--such as life sciences--but this is far from an intuitive way to demonstrate the grid to a casual or business user. Once the application is uploaded, then steps 2 and 3 are pretty straight forward.

Unfortunately, this offering is going to go nowhere with your typical user of technology unless it gets much easier to use. I have an idea that probably involves a lot of coding and would definitely require some guru-level Windows operating system knowledge, but if this is possible, it would open up the Sun Grid to virtually anyone.

I got this idea the other day when I was playing with my sparkling new Dell Latitude laptop, which has an Intel Centrino Duo dual-core processor (basically it's two processors in one chip). One of the neat features of having two processors is the concept of "processor affinity" -- you can easily specify which processor you would like a given Windows task to run on (both or only one, and you can even specify exactly which processor). This is useful if you have an application that uses a lot of CPU (like a video rendering application)--you can tell Windows to allow it to run on only one processor, thereby keeping your system responsive and available for other tasks.

My idea is this--what if Sun provided a "hook" into the Windows OS that allowed the grid to appear in the Windows task list as an additional processor? I could then tell the grid to handle the processing needs of my video rendering application, which would conceivably be a lot faster than my dual core processor, even if I allow it to run on both processors at full tilt. There are of course many loose ends to this idea, such as how to get the data that needs to be processed up to the grid (you probably don't want to try to move gigabytes of data across the Internet), but it's just this sort of simplicity that would open up the grid to a market larger market--there are thousands of "power users" such as myself that would love to offload large processing tasks to the grid, especially if the costs were reasonable, known in advance, and capped somehow.

That actually leads me to utility computing problem #2--how do you estimate costs for a job before you actually incur them, and make sure that costs don't go through the roof? For example, using my video rendering example above, I'd really like to know if offloading the process to the grid is going to cost $1, $10 or $100 *before* I submit it (it would probably be OK if you could at least get an estimate once the job has been sent up to the grid and before processing has begun). I would also want to be able to place a spending cap on the job so that I don't wind up with a $10,000 processing bill.

One last thought on making the grid easier to use and opening it up to a larger market--I've thought for a number of years that if Sun and IBM could open up their grids to so-called "commodity hardware" (vis a vis desktop PCs, etc), they could tap an incredibly large pool of largely unused processor power. For example, I run an application on my laptop called 'Boinc', which allows me to dedicate my unused processor cycles to various causes such as the Search for Extra-Terrestrial Intelligence (SETI) and Rosetta (the former searches radio signals from space for signs of life, and the latter searches for cures to diseases such as cancer).

If you take this concept and apply it to large enterprises, which have tens of thousands of desktop PCs, and consider that most of them are unused 90%+ of the time, and then plug this unused capacity into a grid, they could tap an incredible source of compute power--one that is also basically free (since CapEx costs for the equipment are already incurred--the only additional cost is additional electricity used and possibly some wear-and-tear by running the CPU at high levels).

I can think of one main reason why Sun and IBM haven't tapped this pool of resources--how do you monetize it? If you're in the business of selling computing capacity, why would you want to provide technology that makes it easier *not* to use the commercial grid services? This would make more sense for a startup that would be in the business of selling the grid technology itself, rather than the utility of a grid.

In summary, I think that for utility computing to truly achieve the status of a utility that is available to the common person, it's got a long way to go. In the meantime I'm sure it will begin to be adopted by specialized vertical markets that have heavy compute requirements, like life sciences and entertainment, but I for one am at a loss as to how to make use of my ten free Grid CPU hours that Sun so gracefully provided me...

Wednesday, May 10, 2006

MINIX 3 - Tiny Linux

MINIX will run in a very small amount of memory, and can even be configured to boot from a USB thumb drive. This could be very useful for creating boot images for troubleshooting or even putting up an "on demand" website.

From the MINIX website:

What Is MINIX 3?

MINIX 3 is a new open-source operating system designed to be highly reliable, flexible, and secure. It is based somewhat on previous versions of MINIX, but is fundamentally different in many key ways. MINIX 1 and 2 were intended as teaching tools; MINIX 3 adds the new goal of being usable as a serious system on resource-limited and embedded computers and for applications requiring high reliability

This new OS is extremely small, with the part that runs in kernel mode under 4000 lines of executable code. The parts that run in user mode are divided into small modules, well insulated from one another. For example, each device driver runs as a separate user-mode process so a bug in a driver (by far the biggest source of bugs in any operating system), cannot bring down the entire OS. In fact, most of the time when a driver crashes it is automatically replaced without requiring any user intervention, without requiring rebooting, and without affecting running programs. These features, the tiny amount of kernel code, and other aspects greatly enhance system reliability.
MINIX 3 is initially targeted at the following areas:
  • Applications where very high reliability is required
  • Single-chip, small-RAM, low-power, $100 laptops for Third-World children
  • Embedded systems (e.g., cameras, DVD recorders, cell phones)
  • Applications where the GPL is too restrictive (MINIX 3 uses a BSD-type license)
  • Education (e.g., operating systems courses at universities)

Thursday, April 20, 2006

How to increase download speeds of uTorrent at JohnTP’s Home

A good article that describes how to increase uTorrent download speeds, although many of his recommendations apply to other BitTorrent clients as well.

Wednesday, April 19, 2006

Microwaved Water - See What It Does To Plants

This is spooky--a student took filtered water, divided it into two parts, microwaved one and boiled the other on the stove. She then watered two identical plants with the two types of water, and the results are astounding--the plant watered with the microwaved water was unable to survive after nine days, while the plant watered with stove-boiled water thrived.

The site stops at explaining why this happened, but it does make me think twice about drinking microwaved water!

Tuesday, February 28, 2006

Skype Technical Frequently Asked Questions: "Why does Skype seem to use all of my CPU?

Skype might start using 100% of CPU if you have TotalRecorder software installed and it is set as default Input/Output device for Skype. To avoid this change the I/O devices to your soundcard or USB Phone in the Skype options menu or change the default Windows I/O device from the Windows Control Panel to your soundcard or USB Phone. In most of the similar cases it has turned out that the reason is incompatibility with some other software components installed on the computer (for example: antivirus Nod32, network monitoring software like Netlimiter).
Also, be sure to turn off Windows XP speech recognition feature. The speech recognition engine kicks in when you begin a call and can cause your CPU to run at 100%. Turn off the speech recognition by opening the Control Panel and selecting Regional and Language Options. On the Languages tab, under Text services and input languages, click Details. Under Installed services, click Voice Recognition under the language you are using, and then click Remove.

If you don’t have these programs and your PC has enough resources, please let us know about it by using the problem report form."

Friday, February 10, 2006

99 Performance Tips for WindowsXP

A really good, in-depth article on increasing the performance of Windows XP.
Gmail for your domain

Google is starting a beta test of Gmail that includes hosting your domain, and they're presently looking for some beta testers. If you like Gmail and would like to park your domain with Google, you might want to sign up (I did). They aren't taking everyone, though--I'll be sure to post a follow-up if I get selected to be a beta tester.