<?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 Your Core i7 likely has 4 in Intel® Moderncode for Parallel Architectures</title>
    <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929864#M4946</link>
    <description>&lt;P&gt;Your Core i7 likely has 4 cores, and if it has HT, then support for 8 hardware threads.&lt;/P&gt;

&lt;P&gt;You could test your scaling from 1 to 4 cores (4 threads, 1 per core) as well as 8 threads (4 cores, 2 per core). Beyond that you will need a bigger system.&lt;/P&gt;

&lt;P&gt;Look at using OpenMP for threading. It is easy to get started, however, keep in mind that you do have some issues to resolve that you do not have in a single threaded program. Your problem statement was "I have a scheduling code..". These types of problems typically contain a resource that is allocated dependent upon requirements and availability. An example might be seats in a classroom or on an airplane. At the point of allocation (acquisition) of a resource, the single threaded program can simply take it, because the availability of the resource will not change between the time you (your thread code) observes an availability, and the time you actually remove the resource. While this may be as close as two statements in your program, there is an interval between the two statements where a different thread can see the availability of the last resource. i.e. both take the last resource. There is a similar issue when the two thread decrement the count of available resources. What you need to learn is how to safely modify shared resources.&lt;/P&gt;

&lt;P&gt;Good luck on your first venture into parallel programming.&lt;/P&gt;

&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
    <pubDate>Thu, 27 Feb 2014 13:38:45 GMT</pubDate>
    <dc:creator>jimdempseyatthecove</dc:creator>
    <dc:date>2014-02-27T13:38:45Z</dc:date>
    <item>
      <title>multicore simulation software</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929863#M4945</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;

&lt;P&gt;I have a scheduling code and I want to try it on a different number of core (1,2,3,5,10) to see what is the effect of increasing the number of cores on the program.&lt;BR /&gt;
	So, I would like to ask:&lt;/P&gt;

&lt;P&gt;Is there any tool or simulator software&amp;nbsp;helping me to do this?&lt;/P&gt;

&lt;P&gt;note: I have Intel(R) core(TM) i7 , windows 8&lt;/P&gt;

&lt;P&gt;&lt;BR /&gt;
	Thank you&lt;BR /&gt;
	&amp;nbsp;&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 27 Feb 2014 12:47:17 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929863#M4945</guid>
      <dc:creator>shoog_a_</dc:creator>
      <dc:date>2014-02-27T12:47:17Z</dc:date>
    </item>
    <item>
      <title>Your Core i7 likely has 4</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929864#M4946</link>
      <description>&lt;P&gt;Your Core i7 likely has 4 cores, and if it has HT, then support for 8 hardware threads.&lt;/P&gt;

&lt;P&gt;You could test your scaling from 1 to 4 cores (4 threads, 1 per core) as well as 8 threads (4 cores, 2 per core). Beyond that you will need a bigger system.&lt;/P&gt;

&lt;P&gt;Look at using OpenMP for threading. It is easy to get started, however, keep in mind that you do have some issues to resolve that you do not have in a single threaded program. Your problem statement was "I have a scheduling code..". These types of problems typically contain a resource that is allocated dependent upon requirements and availability. An example might be seats in a classroom or on an airplane. At the point of allocation (acquisition) of a resource, the single threaded program can simply take it, because the availability of the resource will not change between the time you (your thread code) observes an availability, and the time you actually remove the resource. While this may be as close as two statements in your program, there is an interval between the two statements where a different thread can see the availability of the last resource. i.e. both take the last resource. There is a similar issue when the two thread decrement the count of available resources. What you need to learn is how to safely modify shared resources.&lt;/P&gt;

&lt;P&gt;Good luck on your first venture into parallel programming.&lt;/P&gt;

&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Thu, 27 Feb 2014 13:38:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929864#M4946</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2014-02-27T13:38:45Z</dc:date>
    </item>
    <item>
      <title>@Jim</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929865#M4947</link>
      <description>&lt;P&gt;@Jim&lt;/P&gt;

&lt;P&gt;Do you know any good resources or code samples for scientific multithreaded programming on Windows OS(Win API created threads)?&lt;/P&gt;

&lt;P&gt;Thanks in advance.&lt;/P&gt;</description>
      <pubDate>Thu, 27 Feb 2014 14:12:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929865#M4947</guid>
      <dc:creator>Bernard</dc:creator>
      <dc:date>2014-02-27T14:12:32Z</dc:date>
    </item>
    <item>
      <title>Grr... this *&amp;%# Windows</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929866#M4948</link>
      <description>&lt;P&gt;Grr... this *&amp;amp;%# Windows keyboard layout on my Ultrabook&amp;nbsp;killed a nice response I&amp;nbsp;had written moments ago. I think an accidental bump of combination of keys, possibly Ctrl, Fn, "Windows", maybe Alt, possibly in combination with the touchpad, causes the IE session close. Like a hot key for Alt-F4.&lt;/P&gt;

&lt;P&gt;&amp;gt;&amp;gt;Do you know any good resources or code samples for scientific multithreaded programming on Windows OS(Win API created threads)?&lt;/P&gt;

&lt;P&gt;Let's see if I can red the post.&lt;/P&gt;

&lt;P&gt;I am not a book learned type of person. More of a hands on type of person. My list of books is quite skimpy, and others here may have a better&amp;nbsp; choice.&lt;/P&gt;

&lt;P&gt;Start with: &lt;A href="http://www.amazon.com/Art-Concurrency-Monkeys-Parallel-Applications/dp/0596521537/ref=sr_1_11?s=books&amp;amp;ie=UTF8&amp;amp;qid=1393523669&amp;amp;sr=1-11&amp;amp;keywords=breshears"&gt;http://www.amazon.com/Art-Concurrency-Monkeys-Parallel-Applications/dp/0596521537/ref=sr_1_11?s=books&amp;amp;ie=UTF8&amp;amp;qid=1393523669&amp;amp;sr=1-11&amp;amp;keywords=breshears&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;You might also look at: Structured Parallel Programming - McCool, Robison, Reinders&lt;BR /&gt;
	Though this book is aligned for using Cilk Plus and TBB&lt;/P&gt;

&lt;P&gt;If you have a good (high speed) internet connection, try downloading: &lt;A href="http://parsec.cs.princeton.edu/"&gt;http://parsec.cs.princeton.edu/&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;This is the PARSEC benchmark suit of programs. Last I downloaded it was over 3GB of stuff. Much of it using pthreads. You can use on of several pthread libraries on Widows.&lt;/P&gt;

&lt;P&gt;Jim Dempsey&lt;/P&gt;</description>
      <pubDate>Thu, 27 Feb 2014 18:01:05 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929866#M4948</guid>
      <dc:creator>jimdempseyatthecove</dc:creator>
      <dc:date>2014-02-27T18:01:05Z</dc:date>
    </item>
    <item>
      <title>@Jim
Thank you.</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929867#M4949</link>
      <description>&lt;P&gt;@Jim&lt;/P&gt;

&lt;P&gt;Thank you.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 07:21:12 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929867#M4949</guid>
      <dc:creator>Bernard</dc:creator>
      <dc:date>2014-02-28T07:21:12Z</dc:date>
    </item>
    <item>
      <title>Quote:jimdempseyatthecove</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929868#M4950</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;jimdempseyatthecove wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;You might also look at: Structured Parallel Programming - McCool, Robison, Reinders&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;Though this book is aligned for using Cilk Plus and TBB&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;I'd suggest to go to their site&amp;nbsp;&lt;/SPAN&gt;&lt;A href="http://parallelbook.com/"&gt;http://parallelbook.com/&lt;/A&gt;&lt;/P&gt;

&lt;P&gt;It contains code samples from the book and their great tutorial from SuperComputing 2013 (http://parallelbook.com/sites/parallelbook.com/files/SC13_20131117_Intel_McCool_Robison_Reinders_Hebenstreit.pdf).&lt;/P&gt;

&lt;P&gt;and book itself is pretty cool.:) in addition to&amp;nbsp;Cilk Plus and TBB there is OpenMP.&lt;/P&gt;

&lt;P&gt;--Vladimir&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 07:39:38 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929868#M4950</guid>
      <dc:creator>Vladimir_P_1234567890</dc:creator>
      <dc:date>2014-02-28T07:39:38Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;&gt;&gt;Much of it using pthreads</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929869#M4951</link>
      <description>&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Much of it using pthreads. You can use on of several pthread libraries on Widows.&amp;gt;&amp;gt;&amp;gt;&lt;/P&gt;

&lt;P&gt;My intention was to port some of the multithreaded programs written with pthreads to&amp;nbsp; use Win API threads functions.&lt;/P&gt;

&lt;P&gt;Btw, Win pthreads libraries probably are built on top of Win API thread and process&amp;nbsp;functions.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 08:58:48 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929869#M4951</guid>
      <dc:creator>Bernard</dc:creator>
      <dc:date>2014-02-28T08:58:48Z</dc:date>
    </item>
    <item>
      <title>thank you for your response</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929870#M4952</link>
      <description>&lt;P&gt;thank you for your response&lt;/P&gt;

&lt;P&gt;&amp;nbsp;what about if I have normal program&amp;nbsp;and want to see the effect of core in it ?&lt;/P&gt;

&lt;P&gt;I should try it in (1,2,3,4,5,10) because I want to re-do specific experiment of paper&lt;/P&gt;

&lt;P&gt;IS there any software&amp;nbsp;simulator&amp;nbsp;or virtual &amp;nbsp;for number of core?&lt;/P&gt;

&lt;P&gt;or I should use thread and change my code for each core? what is the best way to use thread?&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 13:36:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929870#M4952</guid>
      <dc:creator>shoog_a_</dc:creator>
      <dc:date>2014-02-28T13:36:41Z</dc:date>
    </item>
    <item>
      <title>Quote:iliyapolak wrote:</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929871#M4953</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;iliyapolak wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&amp;gt;&amp;gt;&amp;gt;&amp;gt;Much of it using pthreads. You can use on of several pthread libraries on Widows.&amp;gt;&amp;gt;&amp;gt;&lt;/P&gt;

&lt;P&gt;My intention was to port some of the multithreaded programs written with pthreads to&amp;nbsp; use Win API threads functions.&lt;/P&gt;

&lt;P&gt;Btw, Win pthreads libraries probably are built on top of Win API thread and process&amp;nbsp;functions.&lt;/P&gt;

&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;I suggest to look at Tachyon tbb example. there is winthread wrapper for pthreads.&amp;nbsp;&amp;lt;install&amp;gt;\examples\parallel_for\tachyon\src\pthread.[cpp|h] files.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 13:55:02 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929871#M4953</guid>
      <dc:creator>Vladimir_P_1234567890</dc:creator>
      <dc:date>2014-02-28T13:55:02Z</dc:date>
    </item>
    <item>
      <title>Quote:shoog a. wrote:</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929872#M4954</link>
      <description>&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE&gt;shoog a. wrote:&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;IS there any software&amp;nbsp;simulator&amp;nbsp;or virtual &amp;nbsp;for number of core?&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;or I should use thread and change my code for each core? what is the best way to use thread?&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;

&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;you can try to use Intel Advisor&amp;nbsp;&lt;/SPAN&gt;&lt;A href="http://software.intel.com/sites/products/documentation/hpc/ics/icsxe2013/icsxe_tutorial/Windows_advisor_xe.htm"&gt;http://software.intel.com/sites/products/documentation/hpc/ics/icsxe2013/icsxe_tutorial/Windows_advisor_xe.htm&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 13:57:24 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929872#M4954</guid>
      <dc:creator>Vladimir_P_1234567890</dc:creator>
      <dc:date>2014-02-28T13:57:24Z</dc:date>
    </item>
    <item>
      <title>Thanks Vladimir.</title>
      <link>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929873#M4955</link>
      <description>&lt;P&gt;Thanks Vladimir.&lt;/P&gt;</description>
      <pubDate>Fri, 28 Feb 2014 14:00:52 GMT</pubDate>
      <guid>https://community.intel.com/t5/Intel-Moderncode-for-Parallel/multicore-simulation-software/m-p/929873#M4955</guid>
      <dc:creator>Bernard</dc:creator>
      <dc:date>2014-02-28T14:00:52Z</dc:date>
    </item>
  </channel>
</rss>

