The WIZ and the ZOZ

====================

Designed from First Principles, the WIZ is a small general-purpose microprocessor of unique and radical design.

It is extremely simple and small, and optimized to sit in a "sea" of thousands or millions of similar WIZ processors, on a single chip, or on many chips.

The processor can add, subtract, multiply, divide, handle do, if, then, else, access RAM memory, etc, and can run any program--all the basic things you would expect a modern microprocessor to do.

But it has no clocks, no instruction set, no context switching, no multi-threading, no memory management, no caching, no call stacks, and less! By eliminating all but the basic operations, it can be very small, use very little power, and run in excess of 100 GHz.

It is so simple, I can draw the entire WIZ circuit on a whiteboard in 10 minutes, and any bright first year engineering student could, without having taken notes, go home and duplicate it.

Context switching, multi-threading, memory management, etc, were a historical attempt to share a single core amongst many programs. In the beginning, there were only single cores and they were expensive. This is no longer the case. Now, instead of multi-threading, we can have "multi-WIZing". Instead of call stacks, we can put every subroutine, indeed every code fragment, into a separate WIZ.

A basic WIZ with 32-bit general purpose arithmetic can be made from 100,000 transistors. In the early 1980's, the Intel 80286 was made from about 100,000 transistors, and ran the IBM PC, its operating system, compilers, and user programs. A 100,000 transistor WIZ is at least as powerful.

In 2024 we can put well over 100 billion transistors on a chip. 100 billion divided by 100 thousand equals one million. Imagine one million PC's on a single chip! Or one million WIZes.

And zillions of these WIZ chips can be distributed on a network spanning a planet.

====================

The ZOZ is a distributed operating system which runs identically in all WIZes, and weaves all WIZes together into a single computing system: a planetary-scale super-computer.

The ZOZ implements a new kind of programming paradigm and new kinds of programming languages. ZOZ programs consist of many short sequences--small blocks of instructions--which can be run independently on any available WIZ located anywhere on the planet.

From the point of view of the ZOZ, there is no difference between one WIZ chip, a board full of WIZ chips, or a planet full of WIZ chips. They are just large pools of WIZ processors onto which program sequences can be distributed.

Once started on any particular WIZ, a sequence continues to run there independently, without further attention from the ZOZ. Zillions of sequences can be started on zillions of WIZes, all running simultaneously and independently.

A ZOZ program--a set of sequences--can be presented to the ZOZ from any location. The ZOZ then doles out the sequences, attempting to optimize sequence placement by loading related sequences into WIZes that are close to one another, optimally in adjacent WIZes on the same chip. A sequence which includes I/O to a specific physical device must be located at that device. Purely computational sequences can run anywhere.

The ZOZ can move sequences around between various WIZes and WIZ chips as they execute. A sequence which is often called from multiple places can have multiple copies created in multiple WIZes, each near its own set of callers. The ZOZ can also purposefully distribute multiple copies of a sequence at a large distance from each other and compare outputs, thus creating enhanced reliability for critical systems and/or high-radiation environments. If a chip is overheating, the ZOZ can move some sequences to other WIZ chips to spread out the thermal impact. In short: sequence placement is fluid.

Before it uses a WIZ, the ZOZ can load a hardware test program into it. Any that fail can simply be removed from the pool of available WIZes. Dust particles that kill thousands of the WIZes on a chip of a million WIZes hardly impair it. This makes "yield" an almost irrelevant concept: WIZ chips can be manufactured extremely inexpensively.

Every WIZ on a WIZ chip can be differently configured. For example, one can have four multipliers and two adders, and another zero multipliers and ten adders. This is determined by the manufacturer. The ZOZ looks to place sequences into WIZes which have exactly the set of functions each particular sequence needs. Without clocks, inactive functions or unused WIZes draw no power.

A WIZ chip can also be manufactured with many or all WIZes configured identically. Loaded with identical sequences it can run massively parallel algorithms. Duplicating this on many WIZ chips on a single board, or rack of boards, or racks of boards distributed across the planet, we get a super-massive parallel super-computer.

All of this is transparent to programmers (or compilers) who just write code and let the ZOZ handle all the rest.

A WIZ chip can also vary in number of WIZes, from a million WIZes in a centimeter square package, to a few thousand WIZes in a "dust mote" sized chip. Such a tiny chip, with an added low-power radio and some sort of power generation or harvesting inside it, embedded into a small electro-mechanical device, creates a very intelligent, self-powered and network-connected device.

All of the above is merely the tip of an iceberg. Click here for more details.