How is the bootstrap processor (BSP) selected on Intel ring and mesh architecturesHow do you use gcc to generate assembly code in Intel syntax?Where is the L1 memory cache of Intel x86 processors documented?Why does Intel hide internal RISC core in their processors?How can I write self-modifying code that runs efficiently on modern x64 processors?When can the CPU ignore the LOCK prefix and use cache coherency?Are Intel x86_64 processors not only pipelined architecture, but also superscalar?Why is the loop instruction slow? Couldn't Intel have implemented it efficiently?EIP register intel architectureHow exactly do partial registers on Haswell/Skylake perform? Writing AL seems to have a false dependency on RAX, and AH is inconsistentAre write-combining buffers used for normal writes to WB memory regions on Intel?

Germany rejected my entry to Schengen countries

How was the blinking terminal cursor invented?

Generating random, non-repeating points on the plane

Cycling to work - 30mile return

DISTINCT NULL return single NULL in SQL Server

Latin words remembered from high school 50 years ago

Was Tyrion always a poor strategist?

Have the writers and actors of Game Of Thrones responded to its poor reception?

Service 'iisadmin' (iisadmin) failed to start

Is there any official Lore on Keraptis the Wizard, apart from what is in White Plume Mountain?

What were the "pills" that were added to solid waste in Apollo 7?

How do you cope with rejection?

How do you play the middle D and F in this passage?

Identification of a badge with Russian text

What is the backup for a glass cockpit, if a plane loses power to the displays/controls?

Hotel booking: Why is Agoda much cheaper than booking.com?

How to plot a surface from a system of equations?

Can an airline pilot be prosecuted for killing an unruly passenger who could not be physically restrained?

How to fix "webpack Dev Server Invalid Options" in Vuejs

Can a problematic AL DM/organizer prevent me from running a separatate AL-legal game at the same store?

How can sister protect herself from impulse purchases with a credit card?

Managing heat dissipation in a magic wand

Greek theta instead of lower case þ (Icelandic) in TexStudio

How could Dwarves prevent sand from filling up their settlements



How is the bootstrap processor (BSP) selected on Intel ring and mesh architectures


How do you use gcc to generate assembly code in Intel syntax?Where is the L1 memory cache of Intel x86 processors documented?Why does Intel hide internal RISC core in their processors?How can I write self-modifying code that runs efficiently on modern x64 processors?When can the CPU ignore the LOCK prefix and use cache coherency?Are Intel x86_64 processors not only pipelined architecture, but also superscalar?Why is the loop instruction slow? Couldn't Intel have implemented it efficiently?EIP register intel architectureHow exactly do partial registers on Haswell/Skylake perform? Writing AL seems to have a false dependency on RAX, and AH is inconsistentAre write-combining buffers used for normal writes to WB memory regions on Intel?






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








1















Section 2.13.2 mentions that the arbitration ID is used to determine which processor issues the no-op cycle first and I have seen this on multiple sources and the intel manual. The intel manual that references the MP initialisation sequence only addresses Pentium 4 when when there was a 'system bus' and before that there was originally an 'APIC bus'. I am under the impression that arbitration ID was only needed in those architectures where multiple cpus shared the same bus. But now, with the ring bus architecture, arbitration is done by sensing an empty slot on the ring bus and placing the transaction on it and it moves round at one stop per cycle meaning arbitration is no longer required.



What's interesting is Section 2.13.2 is part of a document that speaks about Intel ME and the PCH, so it is obviously speaking about Nehalem and recent but to say that the APIC ArbID is used, perhaps it is indeed only talking about Nehalem or Westmere.



So I ask, how is the BSP selected on ring and indeed mesh architectures? My thought was that it could use cache as RAM and if cache coherency does function in no fill mode then they could race for a mutex










share|improve this question






























    1















    Section 2.13.2 mentions that the arbitration ID is used to determine which processor issues the no-op cycle first and I have seen this on multiple sources and the intel manual. The intel manual that references the MP initialisation sequence only addresses Pentium 4 when when there was a 'system bus' and before that there was originally an 'APIC bus'. I am under the impression that arbitration ID was only needed in those architectures where multiple cpus shared the same bus. But now, with the ring bus architecture, arbitration is done by sensing an empty slot on the ring bus and placing the transaction on it and it moves round at one stop per cycle meaning arbitration is no longer required.



    What's interesting is Section 2.13.2 is part of a document that speaks about Intel ME and the PCH, so it is obviously speaking about Nehalem and recent but to say that the APIC ArbID is used, perhaps it is indeed only talking about Nehalem or Westmere.



    So I ask, how is the BSP selected on ring and indeed mesh architectures? My thought was that it could use cache as RAM and if cache coherency does function in no fill mode then they could race for a mutex










    share|improve this question


























      1












      1








      1








      Section 2.13.2 mentions that the arbitration ID is used to determine which processor issues the no-op cycle first and I have seen this on multiple sources and the intel manual. The intel manual that references the MP initialisation sequence only addresses Pentium 4 when when there was a 'system bus' and before that there was originally an 'APIC bus'. I am under the impression that arbitration ID was only needed in those architectures where multiple cpus shared the same bus. But now, with the ring bus architecture, arbitration is done by sensing an empty slot on the ring bus and placing the transaction on it and it moves round at one stop per cycle meaning arbitration is no longer required.



      What's interesting is Section 2.13.2 is part of a document that speaks about Intel ME and the PCH, so it is obviously speaking about Nehalem and recent but to say that the APIC ArbID is used, perhaps it is indeed only talking about Nehalem or Westmere.



      So I ask, how is the BSP selected on ring and indeed mesh architectures? My thought was that it could use cache as RAM and if cache coherency does function in no fill mode then they could race for a mutex










      share|improve this question
















      Section 2.13.2 mentions that the arbitration ID is used to determine which processor issues the no-op cycle first and I have seen this on multiple sources and the intel manual. The intel manual that references the MP initialisation sequence only addresses Pentium 4 when when there was a 'system bus' and before that there was originally an 'APIC bus'. I am under the impression that arbitration ID was only needed in those architectures where multiple cpus shared the same bus. But now, with the ring bus architecture, arbitration is done by sensing an empty slot on the ring bus and placing the transaction on it and it moves round at one stop per cycle meaning arbitration is no longer required.



      What's interesting is Section 2.13.2 is part of a document that speaks about Intel ME and the PCH, so it is obviously speaking about Nehalem and recent but to say that the APIC ArbID is used, perhaps it is indeed only talking about Nehalem or Westmere.



      So I ask, how is the BSP selected on ring and indeed mesh architectures? My thought was that it could use cache as RAM and if cache coherency does function in no fill mode then they could race for a mutex







      x86 intel cpu-architecture boot multicore






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 23 at 21:36









      Peter Cordes

      140k20214355




      140k20214355










      asked Mar 23 at 17:54









      Lewis KelseyLewis Kelsey

      458414




      458414






















          1 Answer
          1






          active

          oldest

          votes


















          2














          I assume it's just hard-wired that one of the cores is the BSP. I don't think they other cores even power up until you send them an IPI, and they certainly wouldn't be running code that tries to take a mutex in cache to sort this out. The other cores probably come up in a HALT-like state that waits for an interrupt.



          (But probably a deep sleep C-state like C7 or something, unlike the actual HALT instruction, so if the OS never wakes up some of the cores, putting the woken cores to sleep can let the whole package go into a deep sleep state.)



          For multi-socket systems, presumably one socket is special somehow.






          share|improve this answer


















          • 1





            I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

            – Hadi Brais
            Mar 29 at 9:02






          • 1





            Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

            – Hadi Brais
            Mar 29 at 9:31







          • 1





            @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

            – Hadi Brais
            Mar 31 at 17:25











          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55316726%2fhow-is-the-bootstrap-processor-bsp-selected-on-intel-ring-and-mesh-architectur%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          2














          I assume it's just hard-wired that one of the cores is the BSP. I don't think they other cores even power up until you send them an IPI, and they certainly wouldn't be running code that tries to take a mutex in cache to sort this out. The other cores probably come up in a HALT-like state that waits for an interrupt.



          (But probably a deep sleep C-state like C7 or something, unlike the actual HALT instruction, so if the OS never wakes up some of the cores, putting the woken cores to sleep can let the whole package go into a deep sleep state.)



          For multi-socket systems, presumably one socket is special somehow.






          share|improve this answer


















          • 1





            I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

            – Hadi Brais
            Mar 29 at 9:02






          • 1





            Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

            – Hadi Brais
            Mar 29 at 9:31







          • 1





            @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

            – Hadi Brais
            Mar 31 at 17:25















          2














          I assume it's just hard-wired that one of the cores is the BSP. I don't think they other cores even power up until you send them an IPI, and they certainly wouldn't be running code that tries to take a mutex in cache to sort this out. The other cores probably come up in a HALT-like state that waits for an interrupt.



          (But probably a deep sleep C-state like C7 or something, unlike the actual HALT instruction, so if the OS never wakes up some of the cores, putting the woken cores to sleep can let the whole package go into a deep sleep state.)



          For multi-socket systems, presumably one socket is special somehow.






          share|improve this answer


















          • 1





            I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

            – Hadi Brais
            Mar 29 at 9:02






          • 1





            Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

            – Hadi Brais
            Mar 29 at 9:31







          • 1





            @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

            – Hadi Brais
            Mar 31 at 17:25













          2












          2








          2







          I assume it's just hard-wired that one of the cores is the BSP. I don't think they other cores even power up until you send them an IPI, and they certainly wouldn't be running code that tries to take a mutex in cache to sort this out. The other cores probably come up in a HALT-like state that waits for an interrupt.



          (But probably a deep sleep C-state like C7 or something, unlike the actual HALT instruction, so if the OS never wakes up some of the cores, putting the woken cores to sleep can let the whole package go into a deep sleep state.)



          For multi-socket systems, presumably one socket is special somehow.






          share|improve this answer













          I assume it's just hard-wired that one of the cores is the BSP. I don't think they other cores even power up until you send them an IPI, and they certainly wouldn't be running code that tries to take a mutex in cache to sort this out. The other cores probably come up in a HALT-like state that waits for an interrupt.



          (But probably a deep sleep C-state like C7 or something, unlike the actual HALT instruction, so if the OS never wakes up some of the cores, putting the woken cores to sleep can let the whole package go into a deep sleep state.)



          For multi-socket systems, presumably one socket is special somehow.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 23 at 21:42









          Peter CordesPeter Cordes

          140k20214355




          140k20214355







          • 1





            I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

            – Hadi Brais
            Mar 29 at 9:02






          • 1





            Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

            – Hadi Brais
            Mar 29 at 9:31







          • 1





            @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

            – Hadi Brais
            Mar 31 at 17:25












          • 1





            I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

            – Hadi Brais
            Mar 29 at 9:02






          • 1





            Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

            – Hadi Brais
            Mar 29 at 9:31







          • 1





            @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

            – Hadi Brais
            Mar 29 at 19:13






          • 1





            @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

            – Hadi Brais
            Mar 31 at 17:25







          1




          1





          I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

          – Hadi Brais
          Mar 29 at 9:02





          I don't think hard-wiring the BSP works. My understanding is that we don't even know which of the physical cores will be working properly until after fabricating the chip (and marketing it as such). Otherwise, the hard-wired core might be the faulty one. So there is a need for a boot-time mechanism to choose one of the (properly working) logical cores as the BSP. I also don't understand the question. There can be many transactions on the ring or mesh at any point in time. I'm not sure why @LewisKelsey thinks that the arbitration ID is not needed.

          – Hadi Brais
          Mar 29 at 9:02




          1




          1





          Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

          – Hadi Brais
          Mar 29 at 9:31






          Good point. I looked at the manual of Supermicro X8DTN, which is a dual socket motherboard. The tables for optimal memory population shown on page 30 and 31 indicate that any of the two sockets can be populated or both. So yeah I think there needs to be some negotiation between the sockets (if there is more than one).

          – Hadi Brais
          Mar 29 at 9:31





          1




          1





          @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

          – Hadi Brais
          Mar 29 at 19:13





          @LewisKelsey Let's very carefully read how Section 8.4.3 of Volume 3 describes the BSP selection process. First, each processor is assigned a unique APIC ID (each logical core has a local APIC). Second, each logical processor is assigned an arbitration priority based on the APIC ID (which could be equal to the APIC ID). Third, each processor executes the built-in self test. Fourth, on modern Intel processors, each logical processor issues a NOP Special Cycle on the system bus. What does this mean?...

          – Hadi Brais
          Mar 29 at 19:13




          1




          1





          ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

          – Hadi Brais
          Mar 29 at 19:13





          ...The Special Cycle is a type of transaction that is handled by the Ubox unit in the system agent as I'll describe shortly. In modern Intel processors, the system bus is basically the QPI interconnect. So putting it together, this means that each logical core issues a Special Cycle request to the Ubox and each such request is tagged with the arbitration priority of the logical core. The Ubox receives all of these requests (from the internal cores of the respective socket). Each Ubox chooses the request with the highest priority and then itself arbitrates for the QPI bus master lock...

          – Hadi Brais
          Mar 29 at 19:13




          1




          1





          @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

          – Hadi Brais
          Mar 31 at 17:25





          @LewisKelsey The Ubox is discussed in the Intel uncore manuals. The LIKWID documentation on the Ubox is actually from the manuals.

          – Hadi Brais
          Mar 31 at 17:25



















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55316726%2fhow-is-the-bootstrap-processor-bsp-selected-on-intel-ring-and-mesh-architectur%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          SQL error code 1064 with creating Laravel foreign keysForeign key constraints: When to use ON UPDATE and ON DELETEDropping column with foreign key Laravel error: General error: 1025 Error on renameLaravel SQL Can't create tableLaravel Migration foreign key errorLaravel php artisan migrate:refresh giving a syntax errorSQLSTATE[42S01]: Base table or view already exists or Base table or view already exists: 1050 Tableerror in migrating laravel file to xampp serverSyntax error or access violation: 1064:syntax to use near 'unsigned not null, modelName varchar(191) not null, title varchar(191) not nLaravel cannot create new table field in mysqlLaravel 5.7:Last migration creates table but is not registered in the migration table

          용인 삼성생명 블루밍스 목차 통계 역대 감독 선수단 응원단 경기장 같이 보기 외부 링크 둘러보기 메뉴samsungblueminx.comeh선수 명단용인 삼성생명 블루밍스용인 삼성생명 블루밍스ehsamsungblueminx.comeheheheh

          155 수학 과학 기타 둘러보기 메뉴eh추가해eh문서를 완성해