"You mean that really works? Sounds too good to be true, man, we could make a computer without low-bandwidth wire or optical connections that could operate at like a terahertz or much faster than that!" This stuff was exciting.
"Now you understand, Steve ol' boy. The problem is that we haven't figured out how to make good use of it just yet. In order for this to be useful, you have to be able to do calculations and instructions on the data right there in the memory location. It would slow the machine way down if you had to pump the bits to be operated on from the memory to the processor and back and forth through wires. Since the CPUs can only use a few kilobits per register it would be like filling up a five-gallon bucket with a cup. It would just take too long." I laughed that he just used the same analogy that I had used for my final exam and told him as much.
"Let me get this straight," I said. "The bottleneck here is actually being able to manipulate a lot of data in parallel. One CPU can't work on a terabyte of data all at once. Is that the problem?" I was beginning to understand why this was too good to be true.
Larry was smiling again. "You catch on quick, Stevie. Yep, that's the problem in a nutshell. If all we had to do was move data around this would be awesome fast. But we might want to add or multiply or something to that data sometimes. We need to be able to work on all the data at once in parallel."
We continued to bat around these ideas for a couple hours, occasionally taking bathroom and soda or coffee breaks. We finally finished up around five-thirty or so and decided to give it a rest. We packed up the classified room and put the disk back in the safe. Larry showed me how to get in and out of the safe. Then I grabbed my stuff from my desk. I had paperwork for my new pay grade and new insurance and benefits packages. I also took home a handful of technical journal papers that Larry gave me on EPR. One paper particularly caught my eye. It was entitled "Experimental Detection of Entanglement with Polarized Photons" and had been written by a bunch of Italian people. I planned to read it later that evening after walking Lazarus.
That day was a lot to absorb. I wasn't quite sure why the effort was Top Secret but it was. When I had asked about that, Larry just shrugged and told me that I didn't have a need to know that yet. But he did tell me that my job was to make the technology useful. Cool job, I thought. I could be instrumental in the development of the fastest, most powerful computer ever built. Wow!
Then my stomach growled and I remembered that the fridge at home was empty. So, I stopped and grabbed some burgers for Laz and me on the way home. Laz, as always, was happy to see me. I set the burgers on the counter and patted him on the head. Then I debated on a beer or a pill. I went with the beer. The next thing I knew it was seven-forty-six and Laz was licking me on the face and my beer was still in my hand.
"Damn, I must've dozed off. I guess I should take those pills a little more regularly, huh buddy." I scratched his white belly and he whined at me and kicked his hind legs like dogs do.
I got up and heated us up a couple hamburgers. We ate dinner and then went for a walk, happier than I had felt in a long while.
CHAPTER 6
A couple of months passed before I made any headway at all on the Quantum Connected CPUs. I spent weeks on the Framework, in chat rooms, newsgroups, and downloading books on quantum mechanics, statistics, EPR experiments, Bell's Inequality, Schroedinger's Cat, and the effects of measurements on quantum phenomena. It turns out that although people had been trying to do quantum teleportation and such in experiments, nobody had really put it together with computing. It seemed kind of obvious to me once I was educated on the subject. Larry told me that that is "typical of classified projects." After all, isn't it pretty damned obvious that if you don't want the surface of your aircraft to reflect radar back at the radar then you should minimize the surface area that the radar aperture sees? Maybe it wasn't, since the stealth technologies were unheard of for years. But, now that the cat is out of the bag, it's useless. Larry also had told me something that Heinlein, this science fiction author that I had never heard of, had written. Heinlein had once said something like "a secret weapon must be just that, a secret." It makes sense when you think about it. Larry then acted appalled and frightened that I had never heard of Heinlein, and then threatened to fire me if I didn't complete a book of his per month until I had read them all.
"Consider this a reading assignment for your job, Steven. Sooner or later it'll become clear why I want you to read any and all science fiction you can get your hands on. Start with Heinlein," Larry told me.
At any rate, we finally made some headway on the Quantum Connected CPUs (or QCCPUs as we had begun to call them). I had remembered something from a class on Computational RAM and Intelligent Parallel Processing that gave me a hint.
There have been a few companies to attempt to create RAM chips that had miniature processors at each RAM block of mem ory. The processors would conduct the computation or data crunching in place at each memory location on the RAM chip itself rather than on a separate large processor chip. The problem is that the data must be massively parallel and so must the problem for such chips to be useful. As a solution to the massive parallel problem these companies had then tried to add some artificial intelligence to each of the processors within the RAM to help break the problem down into more separate and parallel parts. If you just wanted to add a simple sequence of numbers together, this type of computer gained you some speed. The artificial intelligence would teach itself to break up the numbers into sections that would make use of having multiple memory slots and multiple processors like the following example:
RAM1 RAM2 RAM3
1+2= 3 3+4= 7 5+6= 11 1 CPU clock cycle
3+7= 10 2 CPU clock cycles
10 + 11= 21 3 CPU clock cycles.
The sequential calculation without breaking the problem up and with only one RAM slot and one processor would look like:
RAM1
1+2 = 3 1 CPU clock cycle
3+3 = 6 2 CPU clock cycles
6+4 = 10 3 CPU clock cycles
10+5 = 15 4 CPU clock cycles
15+6 = 21 5 CPU clock cycles
which is two clock cycles longer. So you see where the AIs on the chip and the multiple processors might help. The typical AI for problems like this were genetic algorithms and fuzzy logic. Sometimes people used neural networks to do the problem devolving and re-evolving, but I had a different idea. I decided to put a team of Agents on the job.
With the advent of the Framework and even before, Agents had become the industry standard approach for controlling large problems without necessarily placing the user in the loop. Of course, the best Agents could talk to the user through some interface or other. If you are not certain what I am talking about when I say an Agent, then you haven't been paying attention to computer stuff for about thirty years. That favorite search engine you use on the Web utilizes Agents. The Agents crawl around from one website to another making decisions on if this website has your information parameters in it and to what level of confidence. Now these are simple agents. Real Agents are actually persistent pieces of software that are completely dedicated to a specific purpose. One of the early real Agents, that I recall anyway, was called the SodaBot Agent and was invented by a guy at MIT's AI Lab. I believe that guy's name was Michael Coen or something like that. Well, he was developing his SodaBot code to be a program that could engage in negotiations and dialog with a system, and coordinate the transfer and exchange of information between systems.