All of lore.kernel.org
 help / color / mirror / Atom feed
* Is that possible to implement a single machine with heterogeneous architecture.
@ 2016-10-21  3:10 Douglas Su
  2016-10-21  4:48 ` Felix Bytow
  2016-10-21 13:49 ` Valdis.Kletnieks at vt.edu
  0 siblings, 2 replies; 3+ messages in thread
From: Douglas Su @ 2016-10-21  3:10 UTC (permalink / raw)
  To: kernelnewbies

Hello everyone,


Is that possible to install multiple CPUs which have different architecture on a single machine? For example, on a single machine with two different cpu sockets for X86 and MIPS cpu respectively, and these two cpus are inter-connected with some sorts of bus (PCI or other advanced buses).


If it is possible, Is this machine still SMP? What will lscpu (or cat /proc/cpuinfo) dump?


Thx!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20161021/42ebef5d/attachment.html 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Is that possible to implement a single machine with heterogeneous architecture.
  2016-10-21  3:10 Is that possible to implement a single machine with heterogeneous architecture Douglas Su
@ 2016-10-21  4:48 ` Felix Bytow
  2016-10-21 13:49 ` Valdis.Kletnieks at vt.edu
  1 sibling, 0 replies; 3+ messages in thread
From: Felix Bytow @ 2016-10-21  4:48 UTC (permalink / raw)
  To: kernelnewbies

That question reminds me of this:
https://www.kickstarter.com/projects/udoo/udoo-x86-the-most-powerful-maker-board-ever/description

It is basically a hybrid of an x86 cpu and a microcontroller. Don't know
if that counts for you^^


Am 21.10.2016 um 05:10 schrieb Douglas Su:
>
> Hello everyone,
>
>
> Is that possible to install multiple CPUs which have different
> architecture on a single machine? For example, on a single machine
> with two different cpu sockets for X86 and MIPS cpu respectively, and
> these two cpus are inter-connected with some sorts of bus (PCI or
> other advanced buses).
>
>
> If it is possible, Is this machine still SMP? What will lscpu (or cat
> /proc/cpuinfo) dump?
>
>
> Thx!
>
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20161021/c4e31dfc/attachment.html 

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Is that possible to implement a single machine with heterogeneous architecture.
  2016-10-21  3:10 Is that possible to implement a single machine with heterogeneous architecture Douglas Su
  2016-10-21  4:48 ` Felix Bytow
@ 2016-10-21 13:49 ` Valdis.Kletnieks at vt.edu
  1 sibling, 0 replies; 3+ messages in thread
From: Valdis.Kletnieks at vt.edu @ 2016-10-21 13:49 UTC (permalink / raw)
  To: kernelnewbies

On Fri, 21 Oct 2016 03:10:28 -0000, Douglas Su said:

> Is that possible to install multiple CPUs which have different architecture
> on a single machine? For example, on a single machine with two different cpu
> sockets for X86 and MIPS cpu respectively, and these two cpus are
> inter-connected with some sorts of bus (PCI or other advanced buses).

Is it possible?  Probably.

Is it worth the effort?  Probably not - I suspect that things like the
IBM Power-based Cell architecture (used in the Playstation 3 and the
Blue Gene supercomputers), or GPU accelerators from NVidia, are as far
as you can reasonably stretch the idea.

For starters, you'd probably *not* be able to do a full SMP (symmetric multi
processing) - at best you'll probably get an asymmetric system where only
one processor architecture can handle things like interrupts and scheduling,
and one architecture basically only run userspace compute code.

Going any further will end up requiring *two* copies of kernel code (one for
each architecture), and figuring out how to merge the interrupt vectors
for the two architectures.   Then you get into other ugly stuff like handling
differing virtual memory layouts, keeping two sets of page tables in sync,
and so on.

And $DEITY help you if the two architectures are different endian-ness.

In the dim dark past (1989-ish) I actually had to sysadmin a system that was a
heterogeneous cluster - an IBM 3090 running AIX/370 and a network of i386-based
IBM PS2's) running a variant of AIX 1.2, and clustering software from Locus,
branded as TCF (Transparent Computing Facility).  Total nightmare for the
sysadmin - users were *always* forgetting which node they did a compile on, so
they'd end up with a bunch of .o files compile for the 3090, and some for i386,
and wonder why their program wouldn't link. And that was just the *start* of
the headaches - when IBM shipped AIX 3.1 for the RS/6000 Power line, we were
early adopters and migrated away from TCF.

I'll note that although IBM went on to support Unix-based systems on the
System/370 architecture (AIX/ESA, and now Linux), TCF was quietly swept
into the dustbin of history.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 484 bytes
Desc: not available
Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20161021/870334aa/attachment.bin 

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-10-21 13:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-21  3:10 Is that possible to implement a single machine with heterogeneous architecture Douglas Su
2016-10-21  4:48 ` Felix Bytow
2016-10-21 13:49 ` Valdis.Kletnieks at vt.edu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.