nowadays, APs are busy running when installing MP protocol in
multiple processors environment. so it whould consume much power
resource unnecessary. this patchs put APs to sleep when not procedure
to run, then via sending NMI IPI by BSP to wake up AP with hlt state.

there is a proposal several months ago. pls see:
http://feishare.com/efimail/message/20141126-1910-_edk2_UefiCpuPkg
_CpuMp_improvement_idea_-_Put_APs_to_sleep_whennot_busy-Jordan_Justen_.html

Chen Fan (4):
  Apic: introduce SendNmiIpi() for trigger NMI IPI interrupt
  UefiCpuPkg/MpService: register NMI handler for wake up AP with hlt
    state
  UefiCpuPkg/MpService: update idt table entrance for APs
  UefiCpuPkg/MpService: Put APs to sleep when not busy

 UefiCpuPkg/CpuDxe/CpuMp.c                          | 49 ++++++++++++++++++++++
 UefiCpuPkg/Include/Library/LocalApicLib.h          | 16 ++++++-
 UefiCpuPkg/Library/BaseXApicLib/BaseXApicLib.c     | 21 ++++++++++
 .../BaseXApicX2ApicLib/BaseXApicX2ApicLib.c        | 21 ++++++++++
 4 files changed, 106 insertions(+), 1 deletion(-)

-- 
1.9.3


------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to