You are here

Technology Unlocks Potential

I work on fast computers. Really fast computers. Not supercomputers, those weirdly configured boxes destined for niche applications like nuclear tests and protein folding, but enterprise computers. The ones that help run banks, governments, and corporations. But while working on the next generation platform, I kind of wonder what the point of it all is. We design the next 2, 5, or 10 times faster system, build it, rejoice, feel proud for having worked on such a technological work of art, then we start over again and throw the old computer in the dumpster. It is now garbage. But, I'm not interested in blogging about the dark and disturbing aspects of technology culture, I'm actually interested in bandwidth. Faster computing. Not more efficient working, but just faster computers. Why? Because there is a minimum computing capacity required for 90% of human applications and I am curious to know if, in the year 2007, we have reached it.

Computers can be broken down into two processes: computation and I/O. Computation is the basic number crunching that goes on. An often overlooked and underappreciated aspect of computers is that every task can be broken down into math operations. So displaying grahpics, playing a movie, typing your word document, playing games, chatting online, email, and surfing the web can all be reduced to your basic +,-,*,/. This is because of the underlying processes of the computer. CPU's perform the math, assembly language makes it possible to talk to the CPU, C language (or whatever language) combine chunks of assembly into easy to use functions, those functions are used by more complex functions which are organized into libraries, and finally those libraries are built into the programs you and I use. I/O, the other aspect, is reading and writing of data. When you download a file from the internet, that is I/O. When you open a PDF, that is I/O. But more importantly, any data transfer is considered I/O. So sending audio data to your sound card is I/O. Loading a program into memory is I/O.

So what will the future of technology in popular culture hold? I would argue that almost all developments have already occurred, generally speaking, and that they will fill out in the next 20 years. Specifically I am talking about document management, multimedia, entertainment (games), and collaboration. In my experience supporting PCs in home and business environments, these four categories cover nearly all computer usage. Let's make our best educated guess where these will go.

Document Management
Document management is a loose term for any task involving a document. This includes writing letters to your mother, presentations, and surfing the internet. These tasks are fairly easy to accomodate and any modern computer can do it with ease. Any Core 2 Duo with a flash hard drive should be near instantaneous1. The interesting aspect is collaboration between others. This will require two things: a) sufficient bandwidth for all parties involved, and b) a good user interface. Collaborative document management will involve voice and video communications and real time "work areas". All of this is available, and quite frankly I don't know why it hasn't already happened. If I can have fairly reliable 8-way phone calls on my XBox Live and can work collaboratively in a massively 3D game environment for only $5/mth per member then it's fucking ridiculous that I have to pay hundreds of dollars per month to use a shitty Polycom at work. And it doesn't even include video or collaboration! For that you're going to pay premium. The only complaint I could see from this is the lack of broadband availability in America.

On the other side of the coin are the people who store these documents. The amount of storage that will be required I predict will be utterly astronomical. Imagine a 300 page document, with images, videos, soundclips, extensive markup, revision history from dozens of people multiplied by millions. For the web and for database applications as well as video storage capacities are already in the petabytes2. Over the next 30 years it will be a million or a billion times that. So clearly storage is a problem. We've seen storage density jumping by leaps and bounds, but we won't be in the clear until I can buy a petabyte HDD.

Multimedia
Movie watching. DVD ripping. Media Consoles. These are hot topics right now and will continue to be. I think iteractivity will rise, in the form of trading and online music collaboration. (By that I mean using the web as a forum for either music/video content creation in both live and recorded forms.) We seem to have a good start on this. Software is becoming available3 and web 2.0 is allowing trading and online collaboration to proliferate. However, a modern PC can play one Blu Ray stream without problem. I predict that the video market will "saturate" when we have 7 uncompressed audio streams and video streams on the order of 500Mbit4 (they are currently around 50Mbit5). Yes boys and girls, the audio is there but video will take 10x the processing power. Online collab is crippled by current unreliable and high network delays. Millisecond network delays6 are too high and will have to be at least <1ms. .1ms would be better.

Again, storage is a factor. As a matter of fact, storage has always been the achilles heal of computing. Take your desktop for example (I will assume that you're using a new computer, not a 7yr old junker like I am). It has a fast CPU, memory access times that are 10 times slower7 and a hard drive at least 10,000 times8 slower. Solid state storage is coming down soon which will improve that thousands to hundreds (maybe even tens), but on the surface the figures are still depressing. Fortunately (or unfortunately?) this improves the baseline for cache misses on the CPU, but doesn't improve the average accesss time (by much).

The future of video will be high resolution video on demand. The future of video will also be high quality audio on demand in your car, cell phone, or PMP (personal media player). For a media company to store 100,000 shows/movies and deliver say, a million video streams simultaneously from one machine will require ridiculous amounts of storage and network throughput. Processor power won't be important, because encoding will occur at the source (for live TV) or studio and decoding occurs at the viewers home. Network throughput can be mitigated by delaying starts. VOD does this now (this is the only reason why it takes a minute or two for VOD to start). In a sense VOD isn't really on demand. It's really, "video available every two or three minutes". This allows the media company to simulcast shows. So if three people sign up every three minutes, they can cut bandwidth needed by a third.

Entertainment (Games)
There are more things to games than 3D. Physics and AI are just as important but always overlooked. Realistic physics engines are available today9. They could use refinement, sure, but they are there, they are accurate (or not, depending on your game) and are bound only by CPU power. Physics chips are hopeful in that they promise to increase the number of management objects in games. This is a great development for realism. For example, if you've played the Playstation3 or seen videos10 from the PhysX guys, then you'll know what I'm talking about. The pleasure of the experience is directly related to the number of objects in the game. AI has not, unfortunately come as far. Quite frankly, until we have robots that can think and behave as well as a regular human (frightening), we won't have AI that can impress me. Until then, we can expect static, predictable AI. Fortunately we have online gaming to save us (humans playing humans).

3D
3D breaks down into objects (already mentioned), their polygon count, how they are painted/shaded, and light. Color is doing well, but needs improvement. The latest DirectX supports 10 bits per color plus 2 for alpha which is more sufficient for photorealistic imagery, but 12 bits per color would render truly dynamic graphics. (And gamers, don't even begin to tell me games are photorealistic now. I want you to look at your game, then look out your window, something you haven't done for years, then look back at your screen, call me and say with a straight face they are indistinguishable. Because they're not even close to the same.) The number of objects is about to increase ten fold. This is a welcome change. But to be truly realistic it'll have to go through another 10 or 100 times increase to achieve things like round shoulder, lips that don't look like licorish and explosions that don't look like animated comic books. Shading has looked great for years though. It's been used to mask the short comings of polygon and light limitations to great effect. Lastly, light. Most people don't talk about light because nobody else talks about it. Why not? Because there aren't many provisions for light filtering in current APIs, that's why. Light noise is what makes images realistic. It's what provides that dynamic range that games don't have.11 Lighting has always been approximated in games. I couldn't tell you how much processor power light noise/filtering, high object/polygon count, shading, AI, and physics will require. I can tell you it isn't a drop in the bucket compared to what's available. King Kong is the best rendered movie available. It is near perfect. It takes hours to render just one frame. It'll be some time before we can do that in 1/60s.

Collaboration
I won't say much here because the subject has been wrapped up in the others. I will say that collab and interactivity is on the rise. Mobility is starting to really take off and I'm quite excited about the prospects of so much social interaction available through technology. Soon our PMP's will be wireless and be able to communicate with those around us. Our cell phones will tell us when our buddies are nearby (with a link to real time map services that tell us how to get there). Our VOD services will have forums to discuss our favorite shows. Wikipedia will eventually be put on an electronic book and be conspicuously renamed, "The Hitchhiker's Guide To The Universe". Hobby shows will eventually be replaced by grass roots user created content. Actually those shows will still exist but only to highlight "weekly web site best of".

Conclusion
Web 2.0 and technological advancements will cause another shift in society. This will be the second technology revolution. One truly democratic and for the people. It will collapse the social walls of nation states and propel our society into a "new world order" that isn't as scary. And to think, all because of solid state hard drives and its like!

References
1http://www23.tomshardware.com/cpu.html?modelx=33&model1=430&model2=694&c...
2http://home.znet.com/schester/facts/database_sizes.html
3http://www.google.com/search?q=online+music+collaboration&ie=UTF-8&oe=UTF-8
4http://www.clarkvision.com/imagedetail/eye-resolution.html
5http://web.forret.com/tools/bandwidth.asp?speed=54&unit=Mbps&title=1X+Pl...
6http://www.internethealthreport.com/
7http://www.dewassoc.com/performance/memory/memory_speeds.htm
8http://www23.tomshardware.com/storage.html?modelx=33&model1=678&model2=6...
9http://half-life2.com/
10http://youtube.com/watch?v=H9O0ahYjls4
11 i.e. They always look washed out and bland. Compare your digital camera photos to anything in National Geographic to get an idea.