{"id":397,"date":"2009-09-29T02:27:30","date_gmt":"2009-09-29T09:27:30","guid":{"rendered":"http:\/\/gurulog.selfip.net\/?p=397"},"modified":"2009-09-29T02:27:30","modified_gmt":"2009-09-29T09:27:30","slug":"high-performance-computing-part-2-of-2-multiple-core-advantages-and-disadvantages","status":"publish","type":"post","link":"https:\/\/www.evanscomputers.com\/index.php\/2009\/09\/29\/high-performance-computing-part-2-of-2-multiple-core-advantages-and-disadvantages\/","title":{"rendered":"High Performance Computing.  Part 2 of 2.  Multiple Core advantages and disadvantages."},"content":{"rendered":"<p>There are numerous myths even in the technical community related to the advantage of multiple cores and multi-threading.<\/p>\n<p>In <a href=\"http:\/\/gurulog.selfip.net\/?p=383\">part 1<\/a> of this article I used my car\/highway analogies for simplification.<\/p>\n<p>I will use some of that same analogy in this article.<\/p>\n<p>Most current applications are written for 32 bit application and only use one core. This limits them to a single threaded runtime.\u00a0 The application is not symmetric multi-processing (SMP) compliant.<br \/>\nSo for an average 32 bit Computer running Windows XP Pro envision the following:<\/p>\n<p>I want to get 500 cars to the school at 8:20AM. \u00a0 I have a 32 lane highway(System bus of the computer) with 32 lane on and off ramps(Memory) and ONLY one RAMP(Processor core) that allows cars to enter the parking lot of the school.\u00a0 That one RAMP becomes the choke point.\u00a0 It&#8217;s where the traffic jam begins.\u00a0 Things get really congested about 8:10AM.\u00a0 They will stay that way until 8:30AM.\u00a0 This is the SINGLE CORE computer.<\/p>\n<p>Next week I pay more money to get another RAMP(Processor Core #2)\u00a0 with 32 lanes that can enter the school parking lot.\u00a0 If I am using software that has SMP compliance, it will use both of the schools ramps ( Core 1 and Core 2)\u00a0 and the traffic jam may be avoided.\u00a0 Especially if I am only using one application at a time.\u00a0 Most of the software available today is not SMP compliant.\u00a0 That&#8217;s ok.\u00a0 The Second RAMP to the school parking lot can still help some.\u00a0 This is a DUAL CORE computer.<\/p>\n<p>Now I am hooked on the concept that more is  better and I go spend huge amounts to get TWO more ramps or Four more ramps built for the school parking lot.\u00a0\u00a0 The problem is that there is not enough traffic for all of those extra ramps to be\u00a0 faster than 2 ramps are.\u00a0 This is a QUAD CORE computer. <\/p>\n<p>A major factor at this point is true SMP compliance.<\/p>\n<p>Some software was tested for SMP compliance when there were only two core processors available for the PC or IBM Compatible computer architecture.\u00a0 So if the software was tested and it managed to use two cores simultaneously it was considered  SMP compliant. <\/p>\n<p>When four cores or more became available it required changes in the method of coding the software to effectively use four or more cores simultaneously.\u00a0 This is the reason that some software that claims to be SMP compliant does not perform any faster on a Quad core than on a Dual Core.\u00a0 If the software is not SMP compliant at all, it will never perform faster on two or more cores, than it performs on a single core system.\u00a0 If the software is truly SMP compliant, you will see a significant performance increase when you increase the quantity of cores.\u00a0 You can verify if a program is running on multiple cores in Windows XP, Vista and Windows 7 by right clicking on the task bar and then selecting task manager.\u00a0 Select the performance tab.\u00a0 This should show your cores independently with a graphic representation of the amount of work each core is performing in close to real time.\u00a0 If this only shows one graph, change the setting under VIEW, to one graph per CPU.<\/p>\n<p>Programmers creating new code today are more aware of the advantages of SMP and 64 bit operation.\u00a0 Some programmers are even optimizing their code to take full advantage of both SMP and 64 bit operation at the same time.\u00a0\u00a0 Adobe Flash 64bit Beta is a good example of 64 bit SMP software available now.\u00a0 It is only available for Linux 64 bit platforms as of this writing.\u00a0 Without SMP compliant software, your multiple core system is allowing many of it&#8217;s processor cores to sit idle most of the time.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>There are numerous myths even in the technical community related to the advantage of multiple cores and multi-threading. In part 1 of this article I used my car\/highway analogies for simplification. I will use some of that same analogy in this article. Most current applications are written for 32 bit application and only use one&hellip; <a class=\"more-link\" href=\"https:\/\/www.evanscomputers.com\/index.php\/2009\/09\/29\/high-performance-computing-part-2-of-2-multiple-core-advantages-and-disadvantages\/\">Continue reading <span class=\"screen-reader-text\">High Performance Computing.  Part 2 of 2.  Multiple Core advantages and disadvantages.<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[130,131,174],"class_list":["post-397","post","type-post","status-publish","format-standard","hentry","category-hardware","tag-multi-core","tag-multi-threaded","tag-smp","entry"],"_links":{"self":[{"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/posts\/397","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/comments?post=397"}],"version-history":[{"count":0,"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/posts\/397\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/media?parent=397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/categories?post=397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.evanscomputers.com\/index.php\/wp-json\/wp\/v2\/tags?post=397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}