<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Q&amp;A: Implementing Scalable Atomic Locks for Multi-Core Intel EM64T and IA32 Architectures in Intel® Moderncode for Parallel Architectures</title>
    <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Q-A-Implementing-Scalable-Atomic-Locks-for-Multi-Core-Intel/m-p/912582#M4699</link>
    <description>&lt;P&gt;&lt;FONT color="#000080"&gt;&lt;FONT face="Arial" size="2"&gt;This is a question received by Intel Software Network Support related to the article &lt;/FONT&gt;&lt;A href="http://www3.intel.com/cd/ids/developer/asmo-na/eng/dc/threading/333935.htm"&gt;&lt;FONT face="Arial" size="2"&gt;Implementing Scalable Atomic Locks for Multi-Core IntelEM64T and IA32 Architectures&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Arial" size="2"&gt;, by Michael Chynoweth and Mary R. Lee, along with an answer supplied by the authors:&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;STRONG&gt;Q.&lt;/STRONG&gt; In the article you said "The OS timing has been changed for Windows XPfrom 10 ms to 1 ms for these experiments." But you did not explain how. I need to change the time slice to 1mS. Please advise. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;STRONG&gt;A.&lt;/STRONG&gt; The OS timer on client Windows* XP is 10ms by default. It can be changed to another time utilizing the timeBeginPeriod API. This is a naughty little trick done by many multimedia applications. Here is the link for the API lookup:&lt;BR /&gt;&lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms713413.aspx"&gt;&lt;FONT face="Arial" size="2"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms713413.aspx" target="_blank"&gt;http://msdn2.microsoft.com/en-us/library/ms713413.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;WARNING: This API is not for the faint of heart since it has some serious repercussions:&lt;BR /&gt;1)It will increase your interrupt rate, which drains your power faster&lt;BR /&gt;2)It will increase your CPU utilization slightly&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;Windows Vista* has a new thread scheduler, so many of the reasons where timeBeginPeriod is necessary will not hold true. If this is for locking andyou are having issues with the OS lock reacting quickly enough, look at some user-land non-blocking locks such as TryEnterCriticalSection.We like to try and time the lock hold-times with theRDTSC and use this to decide what type of lock is needed.&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;==&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face="Arial" size="2"&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Lexi S.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;IntelSoftware NetworkSupport&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;A href="http://www.intel.com/software"&gt;http://www.intel.com/software&lt;/A&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/58987.htm"&gt;Contact us&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;</description>
    <pubDate>Fri, 17 Aug 2007 23:29:20 GMT</pubDate>
    <dc:creator>Intel_Software_Netw1</dc:creator>
    <dc:date>2007-08-17T23:29:20Z</dc:date>
    <item>
      <title>Q&amp;A: Implementing Scalable Atomic Locks for Multi-Core Intel EM64T and IA32 Architectures</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Q-A-Implementing-Scalable-Atomic-Locks-for-Multi-Core-Intel/m-p/912582#M4699</link>
      <description>&lt;P&gt;&lt;FONT color="#000080"&gt;&lt;FONT face="Arial" size="2"&gt;This is a question received by Intel Software Network Support related to the article &lt;/FONT&gt;&lt;A href="http://www3.intel.com/cd/ids/developer/asmo-na/eng/dc/threading/333935.htm"&gt;&lt;FONT face="Arial" size="2"&gt;Implementing Scalable Atomic Locks for Multi-Core IntelEM64T and IA32 Architectures&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Arial" size="2"&gt;, by Michael Chynoweth and Mary R. Lee, along with an answer supplied by the authors:&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;STRONG&gt;Q.&lt;/STRONG&gt; In the article you said "The OS timing has been changed for Windows XPfrom 10 ms to 1 ms for these experiments." But you did not explain how. I need to change the time slice to 1mS. Please advise. &lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;&lt;STRONG&gt;A.&lt;/STRONG&gt; The OS timer on client Windows* XP is 10ms by default. It can be changed to another time utilizing the timeBeginPeriod API. This is a naughty little trick done by many multimedia applications. Here is the link for the API lookup:&lt;BR /&gt;&lt;/FONT&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms713413.aspx"&gt;&lt;FONT face="Arial" size="2"&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;A href="http://msdn2.microsoft.com/en-us/library/ms713413.aspx" target="_blank"&gt;http://msdn2.microsoft.com/en-us/library/ms713413.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;WARNING: This API is not for the faint of heart since it has some serious repercussions:&lt;BR /&gt;1)It will increase your interrupt rate, which drains your power faster&lt;BR /&gt;2)It will increase your CPU utilization slightly&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;Windows Vista* has a new thread scheduler, so many of the reasons where timeBeginPeriod is necessary will not hold true. If this is for locking andyou are having issues with the OS lock reacting quickly enough, look at some user-land non-blocking locks such as TryEnterCriticalSection.We like to try and time the lock hold-times with theRDTSC and use this to decide what type of lock is needed.&lt;BR /&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Arial" size="2"&gt;==&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face="Arial" size="2"&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;Lexi S.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;IntelSoftware NetworkSupport&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;A href="http://www.intel.com/software"&gt;http://www.intel.com/software&lt;/A&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;A href="http://www.intel.com/cd/ids/developer/asmo-na/eng/58987.htm"&gt;Contact us&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 11pt; COLOR: black; FONT-FAMILY: Arial"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;&lt;/FONT&gt;</description>
      <pubDate>Fri, 17 Aug 2007 23:29:20 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/Q-A-Implementing-Scalable-Atomic-Locks-for-Multi-Core-Intel/m-p/912582#M4699</guid>
      <dc:creator>Intel_Software_Netw1</dc:creator>
      <dc:date>2007-08-17T23:29:20Z</dc:date>
    </item>
  </channel>
</rss>

