The concept is more popular in HPC & scientific computing than it is in mainstream IT.
I'm not convinced a shared memory abstraction is a good thing for distribution across machines. Some Beowulf clusters actually had much lower latency interconnects than ethernet, e.g. Quadrics, but we still needed to carefully optimise the traffic. With a shared memory abstraction, such optimisation is out of our hands.
They either host it or it was just a tech demo they did with eve online. Wish I could remember it was a super cool job advert, not my skill set though.
It could mean "What the heck is going on?", when accompanied with a different facial expression.
I actually had to try it out in real life... I can’t think of gesticulating in the abstract.
Seems like you can take the Italian out of Italy but not Italy out of the Italian.
> The Popcorn Linux project is exploring how to improve the programmability of emerging heterogeneous hardware, in particular, those with Instruction Set Architecture (ISA)-diverse cores, from node-scale (e.g., Xeon/Xeon-Phi, ARM/x86, CPU/GPU/FPGAs) to rack-scale (e.g., Scale-out processors, Firebox, The Machine), in both native and virtualized settings. Additionally, the project is exploring how to automatically compile/synthesize/execute code on ISA-heterogeneous hardware.
I know some of those words!
> improve the programmability of emerging heterogeneous hardware
reducing the fiddlyness of developing for mixed hardware
> those with Instruction Set Architecture (ISA)-diverse cores
those with multiple CPUs speaking different machine code
> in both native and virtualized settings
both bare-metal and VMs
> automatically compile/synthesize/execute code on ISA-heterogeneous hardware
automatically translate between the different machine codes.
---
Now for what it actually means, is that Popcorn is a single Linux that can simultaneously run on a bunch of different processors (say, your mobile phone, a raspberry, and a desktop) all at once while being used just like a single Linux system to the end-user/programmer. I don't think it's meant to be used by consumers, but for servers or supercomputers, that kind of stuff.
I believe that the Touch Bar Macbooks also pair an x86_64 processor with an ARM coprocessor that runs the touch bar.
Why would servers/supercomputers care about heterogeneous hardware (including multiple ISAs, even!)? If I'm playing around at home, that's great; I'd love to make a cluster out of a couple of old laptops, an old phone, and a Raspberry Pi. But at work, I'd just... buy a dozen identical servers. Even across generations, x86 is mostly uniform enough to just ignore the changes (with some minor gotchas around extensions, but if you only migrate forward that should be fine too).
Know those moments in movies where they put “all the computers in the world” onto the task of cracking some encryption before it’s too late? This could be used for the technical part of that (once you’ve got all the HPC labs’ cooperation.)
That's why your computer has a GPU.
But a system like this is a requisite for non-uniform computers to exist. Thus it must exist without the other, at least for a while.
that may have been the only time in history though
Equally, I guess it looks a bit like a Java application server in terms of function - applications appear to be compiled to whichever hardware target the application needs to run on.
Utility infrastructure like shared memory etc appears to be part of the design, so the underlying hardware systems are as transparent as possible.