Linux-ARM-Kernel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Li Chen <me@linux.beauty>
To: "Arnd Bergmann" <arnd@arndb.de>
Cc: "linux-arm-kernel" <linux-arm-kernel@lists.infradead.org>
Subject: Re: Is it possible to run a linux on multiple clusters if CCI is missing
Date: Wed, 13 Jul 2022 12:07:32 +0800	[thread overview]
Message-ID: <181f5bd983e.122f756bd814300.5928916659582225801@linux.beauty> (raw)
In-Reply-To: <CAK8P3a1NA4EkeuKAbTU6r+9X8gSzW5YH54T5+t6-vpBxshYk_A@mail.gmail.com>

Hi Arnd,
 ---- On Tue, 12 Jul 2022 23:43:06 +0800  Arnd Bergmann <arnd@arndb.de> wrote --- 
 > On Tue, Jul 12, 2022 at 5:02 PM Li Chen <me@linux.beauty> wrote:
 > >
 > > Hi all,
 > >
 > > Say that if one SoC has 4 clusters, and each cluster has an A78. Every A78 has its own SCU to maintain cache coherence,
 > > but this SoC doesn't have CCI, so there is no hardware to maintain cache coherence between the 4 clusters.
 > >
 > > My question: is it possible to run a single Linux kernel on 4 clusters?
 > > If so, how to do it and how can the cluster cache coherence be maintained?
 > 
 > Hi Li,
 > 
 > Please note that sending an open question like this to the linux-arm-kernel list
 > probably doesn't get you a reply, since almost nobody reads all the emails sent
 > to the list, it's more common to just Cc the list to have an archive of the
 > discussion but have other recipients.  A better place for this might be the
 > #armlinux IRC channel on irc.libera.chat.
 > 
 > I did get your email in my inbox since I recently replied to another thread
 > of yours.

Got it. I will come to #armlinux after fixing the IRC connection issue with my company network.
But I prefer mailing list over IRC in that most IRC channels don't have archives available, so they
are searchable on google.

 
 > Regarding your question, I'm pretty sure that you cannot run Linux across
 > multiple clusters without a CCI, as the kernel among other things on behavior
 > documented in Documentation/memory-barriers.txt that is not guaranteed
 > otherwise.
 
Good point, but I don't know how CCI deals with the memory barrier, can you share more about it?

Apart from memory barriers and coherence, can TLB invalidation not also work properly among four clusters without CCI?

 > The only way I can think of for using that kind of system would be to run
 > a separate kernel on each cluster, and assigning each device to one of the
 > instances, and use explicit cache management for a communication
 > channel between them.

Sorry for my three noob questions:
1. How to assign each devices to one of the instances? Can NIC do it?
2. When you say "explicit cache management", do you mean flush/invalidate cache in kernel manually with flush_cache*
    and fush_tlb*?
3. What kind of communication channel? share a region of memory as communication and monitor it with PMU?

Regards,
Li

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-07-13  4:08 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-12 15:02 Is it possible to run a linux on multiple clusters if CCI is missing Li Chen
2022-07-12 15:43 ` Arnd Bergmann
2022-07-13  4:07   ` Li Chen [this message]
2022-07-13  7:19     ` Arnd Bergmann
2022-07-13 10:34       ` Li Chen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=181f5bd983e.122f756bd814300.5928916659582225801@linux.beauty \
    --to=me@linux.beauty \
    --cc=arnd@arndb.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox