" Will EFI_MP_SERVICES_PROTOCOL.StartupAllAPs() make all 8 logical cores do some tasks simultaneously?"

All APs logical processors excute AP task, not including BSP. Acutally the answer is 7.

Jeff
 
From: Laszlo Ersek
Date: 2021-02-22 18:39
To: devel; tigerliu
Subject: Re: [edk2-devel] MP Services Protocol : Support Hyper threading or not
On 02/22/21 08:08, Tiger Liu(BJ-RD) wrote:
> Dear All:
> I have a question about MP Services Protocol.
> Does it support Hyper-threading technology?
>
> For example:
> A Quad-cores CPU(with HT feature support), actually it is equal to 8 logical cores.
> Take assumption 8 logical cores are all healthy and being enabled.
>
> So:
>
> 1.      Will EFI_MP_SERVICES_PROTOCOL.GetNumberOfProcessors()return total 8 logical processor cores?
>
> 2.      Will EFI_MP_SERVICES_PROTOCOL.StartupAllAPs() make all 8 logical cores do some tasks simultaneously?
 
My understanding is "yes", to both questions. Most of the MP stuff deals
with "logical processors".
 
 
BTW, if you check the EFI_MP_SERVICES_GET_PROCESSOR_INFO prototype, it
outputs EFI_PROCESSOR_INFORMATION. The latter has the following fields:
 
  EFI_CPU_PHYSICAL_LOCATION      Location;
  EXTENDED_PROCESSOR_INFORMATION ExtendedInformation;
 
The former gives you a package/core/thread identification for a
particular processor number. The latter (optionally) provides a 6-level
description (package / module / tile / die / core / thread). In each
information structure, "logical thread" is the finest granularity
information.
 
hth
Laszlo