On Wed, 2025-01-15 at 13:34 +0000, Tamar Christina wrote: > > > > -----Original Message----- > > From: Xi Ruoyao <[email protected]> > > Sent: Wednesday, January 15, 2025 1:29 PM > > To: Tamar Christina <[email protected]>; [email protected] > > Cc: nd <[email protected]>; Richard Earnshaw <[email protected]>; > > [email protected]; Richard Sandiford <[email protected]> > > Subject: Re: [PATCH]AArch64: have -mcpu=native detect architecture > > extensions > > for unknown non-homogenous systems [PR113257] > > > > On Sat, 2025-01-11 at 15:18 +0000, Tamar Christina wrote: > > > However the same thing works for big.LITTLE as in such system the cores > > > must > > > have the same extensions otherwise it doesn't fundamentally work. > > > > > > i.e. task migration from one core to the other wouldn't work. > > > > See https://gcc.gnu.org/PR111768 for a potential issue. > > > > There's no issue there. > As Alexander says in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111768#c7 > > It is not practical for you to have two CPUs in the same system with > different capabilities. > Your kernel will not work, or you have to disable task migration. > > The same extends to cache sizes and other properties of the CPU.
On Intel CPUs it's common that the L1 cache size is different on P and E cores. The generated code still works but it may be suboptimal if it's compiled on an E core but the executed on a P core or vice versa. Is it different on AArch64? I'd be really surprised if big and LITTLE must have the same L1 cache size... > As an aside, today the big.LITTLE selection already enforces a uniform > feature set. -- Xi Ruoyao <[email protected]> School of Aerospace Science and Technology, Xidian University
