I built a 100-node mini-supercomputer at ASU back in 2002/2003, to process image data from the Mars rovers (MER), Mars Odyssey, and other NASA missions. We ended up using regular dual-CPU AMD systems racked up, running the same PBS/Maui batch-processing software mentioned in this article. I remember there was some discussion of and interest in this cluster at the time, but we didn't have the in-house expertise to redesign our software (mostly old USGS systems written in Fortran, some dating back to the Apollo era) to take advantage of the vector processors. As the article mentions, this was more of a proof-of-concept than a serious workhorse, but the ideas lived on.
Back from the era when MIPS was exciting. The PlayStation 2 has a 64-bit MIPS III processor (with some MIPS IV stuff), which was really cool before x86 ate the world. You can still see support for the PlayStation 2 in GCC + Binutils (unlike the PlayStation or Nintendo 64… even though those systems both both have MIPS II or MIPS III processors, they aren’t really big enough to run a more modern OS comfortably, and don’t have Ethernet).
Not sure where new MIPS CPUs are used nowadays, but i do have a handheld[0] that uses a MIPS-based CPU (Ingenic JZ4770) at 1GHz with 512MB of RAM and a 3D accelerator using an open source Linux-based OS. This is from 2013-2014 but there have been some more recent clones, like the RG350 series by Anbernic[2] (which runs the same OS and software).
Though it is basically just a Linux system, nothing special about it aside from the instruction set. When i ported a DOS game i made some time ago to it[3] all i did was install Debian and Free Pascal on a MIPS QEMU system, make sure it compiles with SDL and package the binary in the package format its launcher uses (OPK, which IIRC is essentially a squashfs image).
> they aren’t really big enough to run a more modern OS comfortably
I'm sure there are a few asterisks to this, but the WRT54G (the iconic Linksys blue and black wifi router) has a MIPS 32-bit CPU that's ~4x as fast as the PSX and ~1/2x as fast as the PS2.
The 4x that’s important is that the smallest iteration of the WRT54G still has 4x as much RAM as a PlayStation. The CPU speed is enough, to be sure. Newer versions of OpenWrt or Linux are going to have problems with such a small amount of RAM. Note that it’s definitely possible, it’s just not comfortable.
Yep, was confused for a minute -- all the Beowulf cluster hype I remember was around the PS3. Sony even got sued for later removing the ability to put Linux on it: https://en.wikipedia.org/wiki/OtherOS
It's interesting how this trend died off so hard. I'm guessing what drove it was people buying into Sony's marketing hype (so powerful you can't export to Iraq!) and trying to get some halo hype, yourself. What killed it was the clusters being a hassle to manage and use, limited longevity, consoles moving to commodity hardware (hah! Xbox was already there), and OpenCL/CUDA and the rise of the GPU.
I don't think the trend really died. This helped show the power of dedicated vector processors, and happened to coincide with commodity video cards with the same sort of processors being more widely-available. There was a brief window where buying a whole PS2 just to get the vector processors was the most cost-effective solution, but the market quickly adjusted to fill that niche in a better way. This was a spike, and then they implemented the real thing.
This was one of those things I saw as a kid just learning about tech that got me interested in parallel processing, high-performance computing, beowulf clusters. It struck me as odd that seemingly nobody but a few academics were probing how we could take collections of random hardware and turn them into giant generic computing factories to run arbitrary applications on at any scale.
It turns out that in order to do that, you sort of had to reinvent how software works. While that was possible, it was hard enough that only very few developers tried to tackle it (SSI clusters, mostly). So somebody else figured out that rather than do all that really hard work that would take years to get right, you could just start your program 100 times on 100 different computers and send each a random request, with all of them using one database and a lot of caching. Poof: "web-scale" is born, and around the same time, a bookseller started providing APIs and renting hardware.
It is 20 years later and we are still using the same architecture.