TechRepublic : A ZDNet Tech Community

Programming and Development

Host: Justin James
Contact

Want to know what programmers may be doing 20 years from now? Justin James says you should take a look at what supercomputers are doing today.  

—————————————————————————————————————

Earlier this year, I did a lot of research into the history of computing. I learned about mainframes, microcomputers (what we now call a PC), clusters, grids, and minicomputers. I also learned about the fabled class of computers known as supercomputers.

During the Labor Day weekend, my family and I went to the National Air and Space Museum in Washington DC. We saw one of the Cray computers (the Cray-1) that NASA used. While the Cray computers have changed, and supercomputers as a class have lost a bit of their mythological cachet, the supercomputing’s legacy is playing a greater role in the way we write software today. (On a fun side note, check out a CNET TV video that shows how Star Trek influenced development of the Cray supercomputers.)

Cray-1What separates the supercomputer class from other multiprocessor “Big iron” machines is the focus on execution speed. Mainframes are largely devoted to batch processing, such as filing insurance claims or handling financial transactions. Supercomputers, on the other hand, are charged with things such as weather prediction and chess playing. While both may have dozens, hundreds, or thousands of CPUs, mainframes are more oriented towards reliability and fail safety, while supercomputers care more about speed. A good example of this can be seen in my picture of the Cray-1. All of that blue in the middle are wires; there are miles upon miles of wires (none are more than a few feet long), and the system has the cylinder shape to reduce the distance that any signal needs to travel. These systems are the computer equivalent of jet fuel funny cars — insanely fast but useless on a normal road.

Supercomputers have changed a lot over the years. The class often used specialized processors not used for other purposes; today, the x86/x64 family of CPUs is the overwhelming choice. Their OSs have varied from obscure “one off” systems to various Linux distros, and Windows even has a “High Performance Computing” variant that is now offered on Crays and other supercomputers.

The design of these systems is often decades ahead of what 99.99% of us are using today, but at the same time, our systems tomorrow will often use the same technology or ideas. Some of the revolutions occurring in servers rooms, such as clustering and grid computing, were first used in these systems. Programmers of supercomputers pioneered techniques that mainstream developers are just now starting to use, thanks to the adoption of multi-core CPUs in the server room and on the desktop. Ideas such as the N-tiered architecture that is so common today has roots in various message passing systems used in supercomputing. Systems like the NVIDIA CUDA are designed to turn a graphics card into a massive array of processors for intense number crunching, which can cheaply and easily turn a $1,000 PC into a supercomputer.

I recently went on the record as stating that parallel processing techniques do not have many applications for the typical developer today. At some point in the future, I think we will get past the types of applications that we are doing today and enter an era in which computer analysis becomes more common in relation to computer accounting than it is today; when that happens, these types of use cases will become “typical business applications.” In other words, if you want to know what you may be doing 20 years from now, take a look at what supercomputers are doing today.

J.Ja

Disclosure of Justin’s industry affiliations: Justin James has a working arrangement with Microsoft to write an article for MSDN Magazine. He also has a contract with Spiceworks to write product buying guides.

—————————————————————————————————————

Get weekly development tips in your inbox
Keep your developer skills sharp by signing up for TechRepublic’s free Web Developer newsletter, delivered each Tuesday. Automatically subscribe today!

Justin JamesJustin James is an employee of Levit & James, Inc. in a multidisciplinary role that combines programming, network management, and systems administration. He has been blogging at TechRepublic since 2005. Read his full bio and profile.

Print/View all Posts Comments on this blog

Supercomputers and programming Justin James | 10/29/08
Supercomputers vs today's computers IAMheretohelp | 11/04/08
Comparison rogerbalakrishnan@... | 11/04/08
Site Name Mark A. Lewis | 11/05/08
Right site's name bdanilovski@... | 12/02/08
Good question! Justin James | 11/05/08
RE: How supercomputers still influence programming dennis.jones@... | 10/30/08
Code efficiency Justin James | 10/30/08
Computing in the dark ages dennis.jones@... | 10/30/08
Core dumps and sorting algorithms Justin James | 10/31/08
Magic is in different places now mattohare@... | 11/04/08
Oh at last!!! microP | 11/04/08
Everything's worth studying to an extent. mattohare@... | 11/05/08
We can't all worry about low-level subtleties PJfromOttawa | 11/07/08
Data integrity vs processing speed chris.j.ireland@... | 11/04/08
Even earlier. tuomo@... | 11/04/08
but back to today.... chris.j.ireland@... | 11/04/08
How things tick pgit | 10/30/08
Deep knowledge Justin James | 10/31/08
true... pgit | 10/31/08
Windows even has a "High Performance Computing" ... oz penguin | 11/04/08
Parallelism jk2001 | 11/04/08
Parallelism and functional languages Justin James | 11/05/08

What do you think?

White Papers, Webcasts, and Downloads

Recent Entries

TR on Twitter

Archives

TechRepublic Blogs



Quick Reference: Linux Commands
Reduce stress and speed up resolutions with the easiest command references right at your fingertips. You'll receive a PDF file covering Linux, packed with the most common commands you'll need and use daily.
Buy Now
500 Things Every Technology Professional Needs to Know
Did you know Microsoft's RegClean does not work with XP but you can use shareware to clean your registry? Did you know most wireless access points don't have encryption enabled by default? Did you know there are 500 tidbits of information contained in TechRepublic's 500 Things Every Technology Professional Needs to Know that will help you become a successful IT professional.
Buy Now

SmartPlanet

Click Here