Bernd Stramm's Speculations

Recent News
We have a news feature

For today, the news is only that we have this news feature. It allows those with login access to the site (mostly, that's Bernd) to add news articles, which appear in 3 forms on the site:

  • A headline, which appears on most pages of the website in a small column. There is a maximum lengt...

These are some areas where I expect interesting developments in the relatively near future: pervasive computing, the human-machine interface, and the areas of supercomputing and grid computing. I also have some comments on SETI, although I don't have more expectations there than anyone else. Most of this is pretty much in line with what I have heard from people in the industry, although not everyone groups things the way I do here. It would be interesting to be part of some of these efforts, so if you want to work with me, you can let me know , but don't bother asking me for funding :)

Anything I say here about any organizations mentioned here, or linked to, is pure speculation on my part, and I do not mean to either disqualify nor endorse any of these fine organizations. If you want to know what they really think, you should ask them directly. The items below are not in any particular order of importance or seriousness, except for the SETI stuff, which is just fun speculation.

Pervasive Computing  — top

They are everywhere! The computers, that is. That is the common consensus these days. But, there are many efforts to make all these computers work together. Some people want us to get more organized so we can do better shopping, using things like intelligent refrigerators, that will order more milk from the supermarket.

Somewhat more seriously, we can probably make more efficient cities. Traffic management (with autonomous vehicles), water management and the like. Intelligent houses can use resources (heat, electricity, water) more efficiently, and help streamline health care for the disabled and elderly, as well as the rich and lazy. If you pick up the appropriate science fiction story, you will find this stuff, along with security advantages and disadvantages.

All these things need better organization between the pervasive computers than we have today. We need a new model of computation and programming models for pervasive computing. The peer-to-peer networking we have doesn't help us here. Sure, better communications protocols are being developed right now. While those things are necesary, I believe it is not enough, and more importantly its not the right place to start.

As an analogy, consider the early history of the USA: the "founding fathers" of the USA considered how to organize the government of their new country, whether they needed a king or a president, what powers parliament should have, what powers the states should have, and many more questions like these. Defining the lower communications layers first is a little like the founding fathers designing the layout and typefaces of the election ballots before deciding if there should be one president, or three kings.

The long awaited, and recently revealed here, here and talked about here Cell processor is apparently aiming at a new programming model for distributed compuing, although they don't say what it is. They do however reveal some primitives, such as what they call a software cell. This will need more study, and it sure would help if a person could get a hold of some documentation. Supposedly, Linux is working on this (not so surprising, it's a Power ISA), so there must be a few people working on it. Come on, you can tell me.


Human-Machine Interface  — top

There are those who believe that the days of the desktop PC are numbered. Possibly the Intel corporation is one of them, seeing that they pay attention to things other than PC processors. Processors, memories and disk drives are small enough to be portable in very small packages, with reasonable power requirements. The same cannot really be said about output devices, and especially input devices. PDA screens are nice these days, but still too small to convey as much information as a desktop monitor. The situation is even worse for input devices.

There are good ideas, and some interesting early work, such as projected keyboards and electronic paper. There is still hope for speech recognition in the minds of many, CMU and DARPA among them.


Supercomputing and Grid Computing  — top

Today, practically all supercomputers are massively parallel machines. I see two issues worth exploring in this area. First, programming these machines is very difficult and expensive. One contributing factor, in my view, is that communication and synchronization are made necessary by the very fact that these machines are parallel. This cannot be avoided, but the current solution, interspersing communication and/or synchronization code with the computations, is a poor solution.

A second problem is that these machines are typically homogeneous, meaning that all of the many processors are identical. This leaves considerable room for improvement - special purpose computation units for some application-specific computation requirements could speed up execution time. I believe that the work by Karim et. al. could hint at some improvements here. Their architecture, though proposed on a different scale, is not completely unlike grid computing, where a central unit, at the researcher's workstation in this case, deals out computations to computer server units. The difference is that these compute servers are remote, and very loosely coupled with the central unit.

Grid computing is coarse grain parallelism at its finest. It should benefit from good scheduling: the time available to compute the schedule is orders of magnitude larger than for traditional schedulers. This should be exploited. Furthermore, these systems have to be able to deal with preemption of assigned tasks as it is - you can't always rely on computations assigned to remote systems to finish. This suggests including preemption in the scheduling strategy. As a big fan of simulation, I would propose using a simulation of the application to decide on schedules. Perhaps a sort of minuature version of the real computation can be run, with alternative schedules, to decide between a small number of candidate schedules. This would be a natural extention of my thesis work, which used simulation to decide the relative quality of different process/processor assignments for parallel programs.


SETI  — top

You want far-out speculation? You have come to the right place.

As far as I understand the most serious effort to find intelligent life in the universe , the SETI project, is looking for signals sent to us (or broadcast to anybody), intentionally. This kind of signal could be a modulated message, or just a beacon.

I would propose (and of course I'm not the first one) that broadcasting what amounts to "I am here" could be prohibitively expensive for intelligent beings — with no hope of any economic benefit to themselves. This means we are limiting ourselves to finding only very altruistic extraterrestrial intelligences. I don't know what the percentage of extremely altruistic cultures is among the interstellar community, but there is no reason to assume that it is very large.

As an alternative, we could search for signals used by these cultures for their own purposes, and thus sent to us un-intentionally. Let's assume they communicate across some distance in space, say within a solar system, and let's assume they use electromagentic waves to communicate, because that's the only stuff we can listen too with a limited budget. Then, for (their) economic reasons, and for practical reasons (power consumption), they would have to deal with a very low signal-to-noise ratio. We know some techniques for this: spread-spectrum communication used in some cellular phones and with interplanetary research probes (e.g. Galileo, sorry dont have the right link for this). Ultra-wide band signals carry information below the noise level, albeit for short distances. This sort of technique is cheaper because (a) you use less power, and (b) you don't have to buy (rent) the rights to use much electromagnetic spectrum. Of course, all this only works since the decoder knows what to look for. The same is not true when looking for extra-terrestrial signals, as I very much doubt that the extraterrestrials adhere to our latest standards. But, this is an intriguing problem nevertheless - how can we detect that there is a low power, spread-spectrum signal? Keep in mind that detecting the presence of a signal is not the same as decoding it.

If anyone knows how to detect this kind of signal, it might be these people.

top

Copyright © 2004,2005 Bernd Stramm, All Rights Reserved