Page 1 of 1

Intresting idea of booting cores on multicore cpus

Posted: Thu Oct 13, 2011 10:40 am
by M2004
Booting cores is not a trivial task according to the Intel / Amd manuals.

BAiC's idea looks simple and interesting. I thought posting this link
might intrest some people on this board as well.

http://board.flatassembler.net/topic.php?t=13498

regards
Mac2004

Re: Intresting idea of booting cores on multicore cpu's

Posted: Thu Oct 13, 2011 11:12 am
by Brendan
Hi,
mac2004 wrote:BAiC's idea looks simple and interesting. I thought posting this link
might intrest some people on this board as well.

http://board.flatassembler.net/topic.php?t=13498
cod3b453 is right - the CPUs won't respond to NMI at all (until after they've been started with the INIT-SIPI-SIPI sequence); and BAiC's code should essentially do nothing (if all AP CPUs are waiting to start).
mac2004 wrote:Booting cores is not a trivial task according to the Intel / Amd manuals.
Booting cores is easy. What is harder is correctly detecting when they've failed to start; only starting CPUs that should be started (and not CPUs that failed their BIST, or logical CPUs that are disabled because hyper-threading is disabled); and detecting topology so that the scheduler can make good decisions (e.g. which logical CPUs belong to which cores, which physical CPUs and which NUMA domains). If the NMI idea actually did work, then it would only replace the easy part (and make the harder problems worse).


Cheers,

Brendan

Re: Intresting idea of booting cores on multicore cpu's

Posted: Fri Oct 14, 2011 7:55 am
by rdos
NMI is basically good for only one thing: To create crash-logs. As soon as a fatal error happens on one core, it could send an NMI IPI to all other cores to make them dump their state.