My desktop computer is no longer manufactured and no longer supported since more than 18 years ago. It was a very expensive top of the line business computer back in the day. I like it and wish to preserve it, but also continue to use it. It takes a single processor on the main board (with up to 4 GB of memory). However, what I wanted to know is if anyone has any idea of how I can add additional slave processors (and possibly RAM) to this system through the mainboard's PCI card slots, and thereby up the processing power of this machine? Also, is there a way to overclock the processor or otherwise to further up it's performance? I am also factoring in the tons of old computers going into land fills in this question so that if this problem can be solved economically, then many old computers might be able to be retrofitted, preserved, and to be usable again with modern operating systems and softwares.
CompuPro did this in the olden days, with 8-bit and 16-bit CPU slave cards with a 16-bit or 32-bit main CPU. But there were a few differences from what you are suggesting:
- Each CPU had its own RAM. That was an absolute must. If two CPUs have to share RAM (except to a limited degree - e.g., DMA for disk access), they will slow each other down. RAM is already the slow point in many systems, and keep in mind that if other CPUs are using the main CPU's RAM then you also mess up the caching that is key to modern CPUs being able to run at multi-GHz speeds.
- Multi-user systems. Actually, we do this today, in a sense, by using multi-core CPUs with multiple users over a network. But in the olden days this was typically multiple serial terminals. A typical system might have one master CPU, multiple slave CPUs, a disk controller card, a general I/O card and a multiple serial-port card. Each terminal connected to one serial port and the operating system would provide a console interface and run programs on either the main CPU or a slave CPU as appropriate. Today's systems have most connections dedicated, in which case one user = one CPU, and if that one user needs a faster CPU then they upgrade to a newer machine. The exceptions (sometimes in offices, but especially in data centers) are networked machines where if you need more power you don't upgrade the tiny little box, you throw more boxes and/or bigger boxes at the problem.
The other big difference is motherboard vs. passive backplane. The S-100 was the classic passive backplane system. It was essentially a spur-of-the-moment design for the Altair, but it lasted quite a while. 8080 2 MHz not fast enough, replace with a Z80 4 MHz. But possibly upgrade your RAM at the same time. Need more ports, swap the I/O card. Need more RAM on an 8086, add another card or trade in the 256K card for 1M card. But that had limits. Looking to CompuPro again, when they came out with an 80386 CPU, they couldn't get the CPU-RAM interface fast enough while remaining anywhere close to S-100 specs. So instead of making the existing cards useless, they came up with a second bus connecting only the 80386 CPU and RAM cards but continued using the existing bus for slave CPUs and I/O.
One more factor is that the latest and greatest (and fastest) CPU chips are a large part of the cost of a new system. That was not always the case, but it is today. So unless you have a high-end laptop (in which case your options are limited anyway), almost always the most cost-effective thing to do is to get an entirely new computer with a super-fast CPU & RAM and reuse your monitor(s) and other external peripherals and, if you already have large/fast SSDs, your storage.
how I can add additional slave processors (and possibly RAM) to this system through the mainboard's PCI card slots
While DMA works through PCI, this is not practical to sustain to have additional CPUs on the card access main memory.
So basically you'd need a complete second PC with RAM and one or more CPUs on the card. The best you can hope for is to use the PCI memory window either for shared memory with a small part of the on-card RAM, or as a sort of I/O control of the card.
That means it's not much different from having two completely separate PCs connected via LAN, say.
On top of that, you'd have to develop some PCI slave controller for that purpose, you'd have to develop and manufacture the whole card. But the card's electronics will be dense enough that you can not easily do this as a hobbyist, and the numbers produced are too low to make this less than horribly expensive.
So no, it's not a practical way to "improve processing power" of your legacy system.
Though designs like this existed in the past for older platforms (both with and without shared main memory), it just doesn't make sense for PCI-equipped PC.