<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://port25.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Port 25: The Open Source Community at Microsoft : HPC</title><link>http://port25.technet.com/archive/tags/HPC/default.aspx</link><description>Tags: HPC</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 40109.1145)</generator><item><title>Virtualizing Free Linux Distributions in Windows Server 2008 R2</title><link>http://port25.technet.com/archive/2009/08/10/virtualizing-free-linux-distributions-in-windows-server-2008-r2.aspx</link><pubDate>Tue, 11 Aug 2009 00:00:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:27125</guid><dc:creator>Peter Galli</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=27125</wfw:commentRss><comments>http://port25.technet.com/archive/2009/08/10/virtualizing-free-linux-distributions-in-windows-server-2008-r2.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;Jason Perlow, a columnist over at ZDNet, has written a comprehensive review on virtualizing free Linux distributions in Windows Server 2008 R2. &lt;/P&gt;
&lt;P&gt;In his &lt;A class="" href="http://blogs.zdnet.com/perlow/" target=_blank mce_href="http://blogs.zdnet.com/perlow/"&gt;Tech Broiler&lt;/A&gt; column, Perlow notes that the updated &lt;A class="" href="http://en.wikipedia.org/wiki/Hyper-V" target=_blank mce_href="http://en.wikipedia.org/wiki/Hyper-V"&gt;Hyper-V bare-metal hypervisor virtualization layer&lt;/A&gt; in Microsoft's upcoming &lt;A class="" href="http://www.microsoft.com/windowsserver2008/en/us/R2-Download.aspx" target=_blank mce_href="http://www.microsoft.com/windowsserver2008/en/us/R2-Download.aspx"&gt;Windows Server 2008 R2&lt;/A&gt;, which is due to be released August 14th to MSDN and Technet customers, now has support for SUSE Linux Enterprise Server 11 and Red Hat Enterprise Linux 5.3. &lt;/P&gt;
&lt;P&gt;"Additionally, Linux support and performance has greatly improved over the initial Hyper-V release. Microsoft also recently released its Hyper-V &lt;A class="" href="http://port25.technet.com/archive/2009/07/20/the-hyper-v-linux-integration-components.aspx" target=_blank mce_href="http://port25.technet.com/archive/2009/07/20/the-hyper-v-linux-integration-components.aspx"&gt;Linux Integration Components&lt;/A&gt; (Linux ICs) under the GPLv2 Open Source License," Perlow says.&lt;/P&gt;
&lt;P&gt;The Linux ICs for Hyper-V, which are in Release Candidate status, provide synthetic device drivers that enhance I/O and networking performance when Linux OSes are virtualized under Hyper-V. &lt;/P&gt;
&lt;P&gt;"The source code for the &lt;A class="" href="http://port25.technet.com/archive/2009/07/20/microsoft-contributes-linux-drivers-to-linux-community.aspx" target=_blank mce_href="http://port25.technet.com/archive/2009/07/20/microsoft-contributes-linux-drivers-to-linux-community.aspx"&gt;Linux IC's&lt;/A&gt; were accepted into the &lt;A class="" href="http://www.linuxdriverproject.org/twiki/bin/view" target=_blank mce_href="http://www.linuxdriverproject.org/twiki/bin/view"&gt;Linux Driver Project&lt;/A&gt; and should become part of the Linux Kernel within two subsequent releases and code merges - 2.6.32 is expected to be when they will be integrated, and all Linux distributions using that kernel code base going forward should be Hyper-V enabled out of the box. Yes, you heard that correctly, Microsoft is now an official Linux Kernel contributor," Perlow says.&lt;/P&gt;
&lt;P&gt;You can read the rest of Perlow's column &lt;A class="" href="http://blogs.zdnet.com/perlow/?p=10830" target=_blank mce_href="http://blogs.zdnet.com/perlow/?p=10830"&gt;here&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=27125" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Virtualization/default.aspx">Virtualization</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Linux/default.aspx">Linux</category><category domain="http://port25.technet.com/archive/tags/Open+Source/default.aspx">Open Source</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category><category domain="http://port25.technet.com/archive/tags/_7E00_FeaturedPost/default.aspx">~FeaturedPost</category><category domain="http://port25.technet.com/archive/tags/Peter+Galli/default.aspx">Peter Galli</category></item><item><title>Real Mission Critical</title><link>http://port25.technet.com/archive/2009/06/01/real-mission-critical.aspx</link><pubDate>Mon, 01 Jun 2009 16:15:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:26025</guid><dc:creator>Mark Stone</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=26025</wfw:commentRss><comments>http://port25.technet.com/archive/2009/06/01/real-mission-critical.aspx#comments</comments><description>&lt;p&gt;The 1.0 release of &lt;a href="http://winbioinftools.codeplex.com" mce_href="http://winbioinftools.codeplex.com"&gt;WinBioinfTools&lt;/a&gt; might seem like a modest event; as of this writing, the project has&lt;br&gt;44 downloads. High Performance Computing (HPC) is a small community, granted, and the number of HPC&lt;br&gt;applications for bioinformatics is a small subset of that. Let's not confuse popularity with importance,&lt;br&gt;however.&lt;br&gt;&lt;br&gt;We use the phrase "mission critical" very frequently and somewhat casually within software development. In&lt;br&gt;talking to a friend about the swine flu outbreak, I was reminded that the phrase has its origin in &lt;br&gt;military history: an aspect of a mission so critical that failure in that aspect would result in the&lt;br&gt;loss of life. In the developing world where medical infrastructure can be a fragile thing, information about&lt;br&gt;the origins or genetic makeup of a virus can be vital. It can be mission critical.&lt;br&gt;&lt;br&gt;Historically, the developing world has been dependent on developed western countries to do their research for them.&lt;br&gt;Open source is beginning to level that playing field, though. Using a cluster environment and software&lt;br&gt;projects like &lt;a href="http://toolcoconut.org" mce_href="http://toolcoconut.org"&gt;CoCoNUT&lt;/a&gt; for gene sequencing and comparison, even university research centers with modest x86 &lt;br&gt;server environments can play in the HPC space. This is important because the research priorities for a&lt;br&gt;university in a developing country may be very different from the research priorities of a major western&lt;br&gt;research university. At its best, this is exactly the kind of lowering of barriers to entry that open &lt;br&gt;source should facilitate.&lt;br&gt;&lt;br&gt;For all its value, CoCoNUT has two significant limitations. Its license is an academic license, not a fully&lt;br&gt;open source license. And it runs only on Linux/Unix systems. The latter is particularly important. Research&lt;br&gt;scientists are not IT professionals, and they should not have to care about the underlying platform on which&lt;br&gt;their software runs. The spirit of open source is to make software as widely available as possible, and there&lt;br&gt;is no way to meet that spirit without including Windows Server among the target platforms. Mission critical&lt;br&gt;demands no less.&lt;br&gt;&lt;br&gt;So WinBioinfTools makes important steps forward on both fronts. The team at Nile University has released a&lt;br&gt;GPL-licensed project that "contains a number of programs for Bioinformatics running over Windows Cluster running &lt;br&gt;Windows HPC server 2008. The current version includes the CoCoNUT system for pairwise genome comparison, &lt;br&gt;parallel global sequence alignment, and parallel BLAST."&lt;br&gt;&lt;br&gt;This is a great example of a local software community using open source to make their needs a priority, &lt;br&gt;and delivering a project that will benefit local software communities in other developing countries with&lt;br&gt;similar needs. WinBioinfTools puts us one step closer to making scientific computing software platform &lt;br&gt;neutral, and closer to making Windows Server a first class citizen in the open source world of HPC.&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=26025" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Codeplex/default.aspx">Codeplex</category><category domain="http://port25.technet.com/archive/tags/Interop/default.aspx">Interop</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Open+Source/default.aspx">Open Source</category><category domain="http://port25.technet.com/archive/tags/_7E00_FeaturedPost/default.aspx">~FeaturedPost</category></item><item><title>Brazilian Students Set Their Own Course</title><link>http://port25.technet.com/archive/2009/03/16/brazilian-students-set-their-own-course.aspx</link><pubDate>Mon, 16 Mar 2009 19:05:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:24460</guid><dc:creator>Mark Stone</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=24460</wfw:commentRss><comments>http://port25.technet.com/archive/2009/03/16/brazilian-students-set-their-own-course.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;I’m going to tell a story that starts in Indiana, but really it’s about Brazil.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Once upon a time “scientific computing” was nearly synonymous with “Fortran”. Today, though, just about any high level language can be used to write High Performance Computing (HPC) applications. These days that language choice also includes C#.&lt;/P&gt;
&lt;P mce_keep="true"&gt;At &lt;A href="http://www.iu.edu/" mce_href="http://www.iu.edu/"&gt;&lt;FONT color=#0000ff&gt;Indiana University&lt;/FONT&gt;&lt;/A&gt;, the &lt;A href="http://www.osl.iu.edu/" mce_href="http://www.osl.iu.edu/"&gt;&lt;FONT color=#0000ff&gt;Open Systems Lab&lt;/FONT&gt;&lt;/A&gt; has pioneered work to implement Message Passing Interface (MPI) support for .Net, so that MPI applications can be written in C#. The project is &lt;A href="http://www.codeplex.com/mpinet" mce_href="http://www.codeplex.com/mpinet"&gt;&lt;FONT color=#0000ff&gt;MPI.Net&lt;/FONT&gt;&lt;/A&gt;, and you can find it on &lt;A href="http://www.codeplex.com/" mce_href="http://www.codeplex.com/"&gt;&lt;FONT color=#0000ff&gt;Codeplex&lt;/FONT&gt;&lt;/A&gt;. It is open source, about three years old, has reached a 1.0 release, and is compatible with two other important open source projects, &lt;A href="http://www.open-mpi.org/" mce_href="http://www.open-mpi.org/"&gt;&lt;FONT color=#0000ff&gt;OpenMPI&lt;/FONT&gt;&lt;/A&gt; and &lt;A href="http://www.mono-project.com/" mce_href="http://www.mono-project.com/"&gt;&lt;FONT color=#0000ff&gt;Mono&lt;/FONT&gt;&lt;/A&gt;. The principle developers behind the project are Andrew Lumsdaine at Indiana University and his former student, Douglas Gregor, who is now on the faculty of Rensselear Polytechnic Institute.&lt;/P&gt;
&lt;P mce_keep="true"&gt;This is the kind of open source work that’s really exciting to see because of the way it expands choices for the developer and the end user. A C# developer should not be closed off from writing HPC applications if that’s what they want to do. And a research scientist should not have to think about whether their lab is running Linux or Windows Server. Both of these individuals are working enough layers above the operating system that somebody else’s operating system choice should not be a constraint.&lt;/P&gt;
&lt;P mce_keep="true"&gt;So I was very excited to learn that students in Brazil at Federal University of Rio Grande do Sul were doing work on MPI, and excited to talk with them about their work. One of their projects is &lt;A class="" href="http://www.codeplex.com/mpihash" mce_href="http://www.codeplex.com/mpihash"&gt;MPI#&lt;/A&gt;, also open source and also hosted on &lt;A class="" href="http://www.codeplex.com/" mce_href="http://www.codeplex.com"&gt;Codeplex&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;MPI# builds on top of the work of MPI.Net, adding some functionality not yet present in MPI.Net. Specifically, quoting from the project description:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;The goals of this project would be to build upon MPI.NET in order to complement it with the features that are missing, mainly regarding collective communication. Either they could benefit from C# native support for such communication, either they could be programmed on top of the provided MPISend/MPIRecv encapsulations. C# and .NET features such as fault tolerance or dynamicity support would be studied, in other to turn the MPI# implementation robust in large, dynamic and heterogeneous platforms.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;Two of the students working on MPI# are Ismael Stangherlini and Fernando Afonso. They are graduate students in computer science, working on projects affiliated with the &lt;A class="" href="http://www.codeplex.com/NDOS" mce_href="http://www.codeplex.com/NDOS"&gt;Brazilian Interoperability and Open Source Software Development Nucleous&lt;/A&gt;. When I talked to them about their work on MPI# I was curious what their communication with Indiana University had been like. Their response: they had never been in contact with Indiana University; they simply downloaded the code for MPI.Net and started working on their own.&lt;/P&gt;
&lt;P mce_keep="true"&gt;That’s the magic of open source: that they can, in fact, just download the code on their own and start coding against it. They may make an important contribution to MPI.Net. Or their code may be entirely disregarded. Or they may move on to other projects and somebody else may or may not pick up where they left off. At this stage it’s too early to tell. But the fact that all of these scenarios are possible demonstrates why, as a methodology, open source is so nimble and adaptive. A top-down product development process, or a top-down standards development process can only execute on the innovations envisioned by the few at the top, and at the speed of the slowest decision-makers in the process. But a bottom-up open source process enables every innovation that anyone at the grass roots level can see.&lt;/P&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=24460" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Codeplex/default.aspx">Codeplex</category><category domain="http://port25.technet.com/archive/tags/Interop/default.aspx">Interop</category><category domain="http://port25.technet.com/archive/tags/Mono/default.aspx">Mono</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Standards/default.aspx">Standards</category><category domain="http://port25.technet.com/archive/tags/.NET+Development/default.aspx">.NET Development</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Open+Source/default.aspx">Open Source</category><category domain="http://port25.technet.com/archive/tags/_7E00_FeaturedPost/default.aspx">~FeaturedPost</category></item><item><title>Is High Performance Computing naturally Open Source (ie. for tinkerers)? </title><link>http://port25.technet.com/archive/2008/06/18/is-high-performance-computing-naturally-open-source-ie-for-tinkerers.aspx</link><pubDate>Wed, 18 Jun 2008 13:17:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:19607</guid><dc:creator>anandeep</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=19607</wfw:commentRss><comments>http://port25.technet.com/archive/2008/06/18/is-high-performance-computing-naturally-open-source-ie-for-tinkerers.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;I have always been fascinated by clusters.&amp;nbsp; Some people envision working with desktops or workstations when they think of “working with computers”.&amp;nbsp; For me working with computers was always with a large collection of computers in a back room somewhere.&amp;nbsp; And how cool if you could make all those computers collaborate with each other working to solve cool things like genome mapping, movie special effects, simulations of car crashes or simulations of molecules being formed! &lt;/P&gt;
&lt;P mce_keep="true"&gt;So you can imagine I jumped at the chance to work with the Windows High Performance Computing team.&amp;nbsp; This is the same team that builds&amp;nbsp; Windows HPC Server 2008.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;I think most of the people working in the team are from the “large collection of computers in back room somewhere” school. Would be really different in the Mac software division I assume! &lt;/P&gt;
&lt;P mce_keep="true"&gt;I work with the Open Source Software Lab and we are all things “Open Source” to the rest of the company.&amp;nbsp; The HPC Server team wanted us to make sure that their product played nice with Linux infrastructure and vice-versa.&amp;nbsp; The usual suspects like AD, Samba, LDAP. CIFS etc were involved.&amp;nbsp; We had to make sure that these recurrent interoperability themes were addressed in the HPC environment.&amp;nbsp;&amp;nbsp; I also got a chance to dig into ROCKS, OSCAR, MPI stacks and job schedulers etc etc.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;This was a very rewarding experience not only for the technology exposure that I got but the pervasiveness of knowledge of Open Source within the team.&amp;nbsp; They were far ahead of the other product groups in this regard and&amp;nbsp; “got” the Open Source ethos. In fact, prior to my interactions with them they had released an open source MPI stack based on Argonne National Lab’s MPI implementation.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;The other reason was that a lot of their customers were relentlessly open source!&amp;nbsp; The conventional wisdom is that HPC applications and infrastructure require a lot of tinkering.&amp;nbsp; Of course, there are some applications like FEM and CFD and that are well understood, but the general feeling was that complete control and access to the underlying infrastructure is a must for getting the most performance out of a cluster.&amp;nbsp; And performance is the main thing in “High Performance Computing”.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;Linux is seen providing that access by HPC customers and there is a large base of Linux for HPC in academia, the national labs and other institutions that use large clusters for doing their thing. &lt;/P&gt;
&lt;P mce_keep="true"&gt;But is this really true?&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;I think that HPC has gone through a typical evolution – it starts with a few people who have a pressing need.&amp;nbsp; There is a cross disciplinary team formed that builds software to do their job and a community grows around it.&amp;nbsp; The community reaches critical mass and people start making building tools to make it more convenient.&amp;nbsp; ROCKS is an example of this.&amp;nbsp; Great skill, knowledge and ability is needed to get the job done.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;However, these skilled people now become overloaded.&amp;nbsp; The tools and the infrastructure that they created become so popular that everyone, including people who do not have background that was assumed before, wants to use it for their ends.&amp;nbsp; So the community responds and builds standardized, easy-to-use infrastructure pieces that start to fit seamlessly together.&amp;nbsp; Some control is lost, but ease-to-use is the primary focus.&lt;/P&gt;
&lt;P mce_keep="true"&gt;The infrastructure for HPC has reached that stage (ROLLS with ROCKS). Windows HPC Server 2008 is built for this ease-of-use too.&lt;BR&gt;&amp;nbsp; &lt;BR&gt;However, the applications have not reached the stage of ease-of-use.&amp;nbsp; They have to be coded with a lot of domain knowledge and have to built from scratch to truly scale while running on clusters.&amp;nbsp; That means that the application writers demand more control of the underlying infrastructure and want more access to it than the users and maintainers want.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;I am going out on a limb and making a prediction here – soon end users will be able to specify instead of coding applications, be it genome comparison or physics simulation.&amp;nbsp; This is similar to accountants finding spreadsheets.&amp;nbsp; There will probably be a few different models for different types of applications but that stage will come pretty quickly.&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;The infrastructure that runs these user-specified applications will be adaptive and will take these specifications and automatically tune them for high performance on the clusters.&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;This is where the perception of needing control to the lowest levels will be moot.&amp;nbsp; The best adaptive infrastructure will be the one adopted. &lt;/P&gt;
&lt;P mce_keep="true"&gt;Bold enough for you?&lt;/P&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=19607" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Anandeep/default.aspx">Anandeep</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Open+Source/default.aspx">Open Source</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category><category domain="http://port25.technet.com/archive/tags/_7E00_FeaturedPost/default.aspx">~FeaturedPost</category></item><item><title>Code Parallel or Die, Part 2</title><link>http://port25.technet.com/archive/2008/04/15/code-parallel-or-die-part-2.aspx</link><pubDate>Tue, 15 Apr 2008 19:40:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:16113</guid><dc:creator>Frank Chism</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=16113</wfw:commentRss><comments>http://port25.technet.com/archive/2008/04/15/code-parallel-or-die-part-2.aspx#comments</comments><description>&lt;P mce_keep="true"&gt;&lt;STRONG&gt;It’s multicore time. Do you know where your parallelism is?&lt;BR&gt;&lt;/STRONG&gt;Do you know where your parallelism is? Well you better find it! This is because you must or your users will not see the doubling of performance that they have seen for the last seven or eight generations of microprocessors. Why? Well the chip makers ran out of physics, clocks just couldn’t go a lot faster every few months the way they used to and more cores, even if they double or triple the performance of the processor do not lead to a faster feeling system if all the applications are serial. So, is your application serial? It better not be.&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;BR&gt;Two examples from my own life demonstrate the user and buyer frustration we are about to hit head on. First my sister, a long time Mac user, bought a new dual socket dual core Mac. On paper this system was easily three to five times “more powerful” then her previous system, a dual processor Mac. Her first complaint was, “It doesn’t feel faster. It certainly doesn’t feel ‘wicked fast’ compared to my five year old system.” I pointed out to her that what she had was more power, not more ‘faster’. I told her to try doing more than one thing at once. It took awhile for her to get the hang of this, but one day recently she called and started raving about how ‘powerful’ her new system was compared to her old one. What she had learned how to do was to get three or four long running tasks to run in the background while continuing to do her interactive day to day tasks &lt;EM&gt;without any noticeable degradation in interactive performance&lt;/EM&gt;!&lt;/P&gt;
&lt;P mce_keep="true"&gt;As a second example, for Christmas I built my wife a new dual core system because she was complaining about her system being too slow and crashing all the time. It was a thing of beauty with twice the CPU, twice the memory, and five times the capacity and twice the bandwidth of her old disks. The processor was two generations newer with a 20% faster clock and over four times the memory bandwidth. I was ready for a big hug and profuse thanks for my intelligence and craftsmanship. Boy was I in for a disappointment. What I got was, “It isn’t any faster.” I am a victim of the core war!&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;The lights are on, but there’s no parallel home.&lt;/STRONG&gt;&lt;BR&gt;Well my personal tragedy was nothing compared to what will happen to any software developer or corporation that depends on their fortune or fame to flow from people using their product and liking the experience. That is, it will be tragic for those who do not start to think parallel for every step of every phase of every program that they write and design in parallel not try to graft it in afterwards. Just as with security, and network awareness, you don’t get good results trying to add in parallel later. You must start in parallel and continue in parallel and only go serial as a last drastic measure and then only for the shortest possible time. Sadly, even in my own backyard of High Performance Computing the number of programs that have tried to graft in parallel rather than design it in is appalling. What they end up with is often what I call the ‘Silence of the Lames’. That is, a lame parallel port that doesn’t scale or doesn’t speed up their program nearly as much as is possible.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Now you might say that this only works for scientific programs with massive amounts of data. Well, sorry Charlie, if your product is something as ‘serial’ as a document processing program like Microsoft Word, you had better be thinking how you can use those extra cores to improve the user experience. Why? Well as I said in the beginning: Code parallel or die! &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;STRONG&gt;For the want of a nail, the shoe was lost; for the want of a shoe the horse was lost; and for the want of a horse the rider was lost, being overtaken and slain by the enemy, all for the want of care about a horseshoe nail.&lt;/STRONG&gt;&amp;nbsp;&lt;EM&gt; - Benjamin Franklin&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;That’s all for now. I enjoyed writing this and hope to hear from some of you about what you think of my ‘Parallel Imperative’ and what you can personally do about it.&lt;BR&gt;So, never stop studying and I’ll blog at you later.&lt;/P&gt;
&lt;P mce_keep="true"&gt;- Frank&lt;/P&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=16113" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Open+Source/default.aspx">Open Source</category><category domain="http://port25.technet.com/archive/tags/Dev+Center/default.aspx">Dev Center</category><category domain="http://port25.technet.com/archive/tags/App/default.aspx">App</category><category domain="http://port25.technet.com/archive/tags/_7E00_FeaturedPost/default.aspx">~FeaturedPost</category><category domain="http://port25.technet.com/archive/tags/Frank+Chism/default.aspx">Frank Chism</category></item><item><title>Code Parallel or Die</title><link>http://port25.technet.com/archive/2008/04/14/code-parallel-or-die.aspx</link><pubDate>Mon, 14 Apr 2008 17:22:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:16036</guid><dc:creator>Frank Chism</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=16036</wfw:commentRss><comments>http://port25.technet.com/archive/2008/04/14/code-parallel-or-die.aspx#comments</comments><description>&lt;P&gt;&lt;EM&gt;“What we have here is a failure to communicate.”&lt;/EM&gt; &lt;BR&gt;- Luke in “Cool Hand Luke”&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;A fist full of cores in a server rich environment.&lt;/STRONG&gt; &lt;BR&gt;If you haven’t noticed that the world has changed, you had better wake up and smell the coffee. The era of killer apps written in serial code is ending. Like the norm in species extinction, the reason many ISVs will not survive this change is that the environment in which we develop code has changed rapidly and not all species can adapt to this new world. The change was preceded by a hint of ‘The Shape of Things to Come’ in the Beowulf and compute cluster revolution. This revolution created the first generation of commodity clusters based on microprocessor nodes connected by commodity networks. An evolutionary message from this generation is that if you are building a cluster you really ought to use server class nodes. You _can_ build a cluster from desktop parts, but the higher you scale your node count the more you want the convenience and reliability of server parts. I remember seeing a look of outrage on the face of an Intel marketing person when I commented that I thought their then brand new Itanium Tiger platform was a really nice part for building a cluster. He thought of the new platform as a High Performance Server, not as a ‘part’. Well get used to it. We don’t build computers out of discreet components like transistors any more (which is good for him because Intel makes really big Integrated Circuits, not transistors) and we have just moved up to the point where the level of integration is the server, not the processor. &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;And Then There Were Cores&lt;/STRONG&gt; &lt;BR&gt;So into this environment where servers are parts and many high performance computing applications were written to a distributed memory communications aware parallel programming model, the microprocessor has changed in the most radical way I can remember. Our equilibrium has been punctuated (see: "Punctuated equilibria: an alternative to phyletic gradualism" (1972) pp 82-115 in "Models in paleobiology", edited by Schopf, TJM Freeman, Cooper &amp;amp; Co, San Francisco. Eldredge, N. &amp;amp; Gould, S.J.) and we can expect rapid change to a whole new kind of parallelism. The change I refer to is the introduction and near ubiquity of multiple core processors. For years software developers have been able to count on dramatic increases in CPU speed and processing power on a Moore’s Law schedule. But, Moore did not say that the processing speed and power of CPUs would double every eighteen months, he said that the number of gates on a single chip would double every eighteen months. So, all was good for a long time because that doubling of gates meant smaller _and_ faster gates and greater architectural complexity and thus ‘faster’ CPUs. So by about 2005, just about every good idea for a better computer processor architecture ever thought of was incorporated into the major microprocessors on the market. So, when 2006 rolled around the obvious thing to do was to use the next doubling of gates to double the number of ‘processors’ on a microprocessor. Dual core was here and the trend will continue for at least a couple of doublings. Who knows what strange beasties will emerge when we get to the point where ‘many core’ processors become ‘too many core’ processors. Until then, though we can be sure: &lt;EM&gt;Multicore killed the serial star....&lt;/EM&gt; &lt;/P&gt;
&lt;P&gt;&lt;EM&gt;More on this tomorrow.&lt;/EM&gt; &lt;/P&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=16036" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Dev+Center/default.aspx">Dev Center</category><category domain="http://port25.technet.com/archive/tags/Frank+Chism/default.aspx">Frank Chism</category></item><item><title>What Lies Beneath: Setting up underlying HPC tools</title><link>http://port25.technet.com/archive/2006/12/21/what-lies-beneath-setting-up-underlying-hpc-tools.aspx</link><pubDate>Thu, 21 Dec 2006 22:34:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3387</guid><dc:creator>kishi</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3387</wfw:commentRss><comments>http://port25.technet.com/archive/2006/12/21/what-lies-beneath-setting-up-underlying-hpc-tools.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;This blog continues what I started writing about w/ &lt;a href="http://port25.technet.com/archive/2006/12/01/thinking-about-hpc-infrastructure.aspx"&gt;Thinking About HPC Infrastructure&lt;/a&gt;&amp;nbsp;and what Frank wrote in about in &lt;a href="http://port25.technet.com/archive/2006/10/20/Overloading-_2700_Clusters_2700_.aspx"&gt;Overloading Clusters&lt;/a&gt;. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;After reading thru the previous blogs on HPC, someone might ask &amp;ldquo;What are some of the core components of HPC ?&amp;rdquo;. After all, once you&amp;rsquo;ve seen the outside of a Maserati or a Pantera DeTomaso, you&amp;rsquo;re not going to be satisfied just by ogling at it. Even after a test drive, the engineer in you will want to pop the hood and see what&amp;rsquo;s inside. Taking a similar approach let&amp;rsquo;s uncover some underlying HPC technologies by looking at any basic HPC setup. Once all the provisioning has been completed, the HPC system will be physically deployed with an OS and relevant drivers, utilities etc. Yet, before the actual HPC application can get installed across, there remains a critical step in the process, i.e. configuration of cluster and file system along with any tools and interfaces such as MPI (Message Passing Interface) etc. After peeling through the HPC application layer, its worthwhile to do a &amp;ldquo;deep-dive&amp;rdquo; into what really runs the HPC clusters. A broad category of these tools are:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Cluster Management tools e.g. CSM&lt;/li&gt;&lt;li&gt;Job Scheduling tools e.g. SCALI, Maui&lt;/li&gt;&lt;li&gt;Resource Management tools e.g. Torque&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you&amp;rsquo;re trying to understand the &amp;ldquo;WHY&amp;rdquo; behind the existence of these tools and their importance, take a look at Cluster Management for example. Cluster configuration, installation and management can be difficult and requires intimate familiarity with the HPC hardware, OS, underlying architecture etc. Without specific tools that attend to and manage specific underlying HPC sub-components, HPC just won&amp;rsquo;t be what it is. So, it is worthwhile to understand the unique installation experience of the tools, such as the ones listed above to understand the complexity of HPC systems. Ready &amp;ndash; let&amp;rsquo;s dive in to the installation and function of these tools:&lt;/p&gt;&lt;p&gt;1. &lt;strong&gt;SCALI&lt;/strong&gt;: The &lt;a href="http://www.scali.com/"&gt;SCALI&lt;/a&gt; management and MPI software packages provide deployment, monitoring and job scheduling services for a cluster.&amp;nbsp; After you deploy this software, you will be able see all the compute nodes that may have been preconfigured or are configured on your system. Scali will enable you to monitor the systems and run jobs using the SCALI graphical interface.&amp;nbsp; In order to license the SCALI software, you must utilize the scainstall command to produce a &lt;em&gt;license request file.&lt;/em&gt;&amp;nbsp; This file can then be sent to SCALI to receive a permanent key. For those that need some hand-holding through this, luckily SCALI provides very comprehensive documentation on their website.&amp;nbsp; A large portion of the SCALI Manage User&amp;rsquo;s Guide is dedicated to pre-setup planning and configuration of the cluster and the network.&amp;nbsp; The documentation provides detailed recommendations about how you can set up their Ethernet-based network environment and out-of-band management network.&amp;nbsp; The documentation also provides a general overview about how to install and configure higher performance interconnects, including bonded Ethernet, Infiniband, Myrinet and SCI. The SCALI Manage interface provides simple tools to assist in configuring and testing DET, Infiniband, and Myrinet devices for use with the SCALI MPI implementation.&amp;nbsp; The SCALI MPI software supports multiple Infiniband stacks including Mellanox, Topspin, Voltaire and Infinicon.&lt;/p&gt;&lt;p&gt;2. &lt;strong&gt;HP-MPI&lt;/strong&gt;: &lt;a href="http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,1238,00.html"&gt;HP-MPI&lt;/a&gt; is Hewlett-Packard&amp;rsquo;s Linux-based implementation of the Message Passing Interface (MPI).&amp;nbsp; Many of the utilities distributed with HP-MPI are similar to other common MPI utilities such as MPICH - e.g. mpicc, mpirun, etc. In order to utilize the HP-MPI software, a license is required for each CPU core in the cluster.&amp;nbsp; To obtain a license file you are required to obtain the MAC address from each node (typically eth0) and input that information into a form at licensing.hp.com.&amp;nbsp; The resulting file can then be copied to the compute node. The HP-MPI software is non-functional until licensing files are generated for the nodes&lt;/p&gt;&lt;p&gt;3. &lt;strong&gt;CSM&lt;/strong&gt; (&lt;strong&gt;Cluster Systems Management&lt;/strong&gt;): The &lt;a href="http://www-03.ibm.com/servers/eserver/clusters/software/csm.html"&gt;CSM&lt;/a&gt; software suite is designed to automate the deployment and management of cluster nodes.&amp;nbsp; Nodes can be remotely installed with an operating system as well as the CSM software for later monitoring.&amp;nbsp; The CSM software supports RedHat and Novell on multiple platforms.&amp;nbsp; In order to obtain and install the CSM software one must register with IBM&amp;rsquo;s website and download the required RPMs. In order to configure CSM, it can remotely install the operating system and/or the CSM software on the compute nodes.&amp;nbsp; Much like Platform ROCKS, CSM makes use of PXE functionality and RedHat&amp;rsquo;s kickstart or the autoyast software to remotely install the operating system. The CSM software provides multiple methods for defining the nodes that should be deployed and managed:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;a. The first method involves creating a hostname mapping (hostmap) file, which is a colon-delimited file that defines a number of attributes of each node&lt;br /&gt;b. The second method also involves manually creating and editing a &amp;ldquo;node definition&amp;rdquo; (nodedef) file.&amp;nbsp; This is the method suggested by the documentation for use with small clusters&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Proper remote power and remote console capabilities greatly ease the administration and deployment of the compute nodes, however according to the &lt;em&gt;&lt;u&gt;CSM FAQ&lt;/u&gt;&lt;/em&gt; remote power management is not absolutely required. All the compute nodes must be rebooted (remotely or manually).&amp;nbsp; They are then PXE booted and installed with RHEL4 using the kickstart installation system.&lt;/p&gt;&lt;p&gt;4. &lt;strong&gt;Maui and Torque&lt;/strong&gt;: Both Torque and Maui are free software which must be compiled from the source distribution on the head node.&amp;nbsp; Maui is an open-source job scheduler for compute clusters.&amp;nbsp; It supports a number of task management features not found in other parallel batch processing software including policy-based scheduling and prioritization of tasks. Torque is an open-source resource manager for managing compute nodes and scheduled jobs.&amp;nbsp; It can integrate with Maui to provide additional features for scheduling and managing scheduled tasks.&amp;nbsp; Installation of Torque can be done using the guidance available in the &lt;a href="http://www.clusterresources.com/torquedocs20/1.1installation.shtml"&gt;&lt;em&gt;Torque 2.0 Admin Manual&lt;/em&gt;&lt;/a&gt;&lt;em&gt; .&lt;/em&gt;&amp;nbsp; &lt;/p&gt;&lt;p&gt;5. &lt;strong&gt;Platform Rocks&lt;/strong&gt;: &lt;a href="http://www.platform.com/Products/Platform.OCS/"&gt;Platform Rocks&lt;/a&gt; is a cluster deployment software that facilitates the deployment of various software stacks (&amp;ldquo;rolls&amp;rdquo;) onto the compute nodes.&amp;nbsp; The software is capable of deploying the base operating system and utilities required for cluster administration, management and scheduling.&amp;nbsp; The software can also manage configuration and updates to ensure consistency throughout the cluster. &lt;em&gt;Platform Rocks&lt;/em&gt; is a suite of utilities that are packaged together as separate installable rolls.&amp;nbsp; One of the main goals of the software is to allow for easy installation and integration of third-party rolls and applications.&amp;nbsp; One unique aspect to the Platform Rocks installation approach is that the software installs an operating system on the head node, and also installs all the required rolls at the same time.&amp;nbsp; The software can also automatically set up the subsystem required to install an operating system and other packages on the compute nodes (such as management agents, etc). &lt;/p&gt;&lt;p&gt;That about does it for a quick &amp;ldquo;deep-dive&amp;rdquo;. Let me insert a gentle reminder that these are not the only cluster or resource management technologies out there in the HPC space but rather the ones most prevalent. If you have additional tools that you have worked with, we&amp;rsquo;d like to hear from you and thank you for tuning in to Port 25. &lt;strong&gt;HAPPY HOLIDAYS!&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3387" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/Technical+Analysis/default.aspx">Technical Analysis</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>Thinking about HPC Infrastructure</title><link>http://port25.technet.com/archive/2006/12/01/thinking-about-hpc-infrastructure.aspx</link><pubDate>Fri, 01 Dec 2006 19:21:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3317</guid><dc:creator>kishi</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3317</wfw:commentRss><comments>http://port25.technet.com/archive/2006/12/01/thinking-about-hpc-infrastructure.aspx#comments</comments><description>&lt;p&gt;&lt;font face="Verdana" size="2"&gt;I started the first HPC blog (See &amp;ldquo;&lt;a href="http://port25.technet.com/archive/2006/11/01/HPC-_2D00_-The-way-all-computing-will-look_2E002E002E00_.aspx" style="color: blue; text-decoration: underline; text-underline: single"&gt;previous blog&lt;/a&gt;&amp;ldquo;) with an understanding that HPC is an area where there has been a surge of activity from a development/investment standpoint. This segment of Information Technology has experienced a heightened level of engagement from OEM&amp;rsquo;s and partners, all trying to meet the growing computing needs of their customers. So after getting a basic understanding behind the importance of why HPC matters, the next logical step that needed uncovering was &amp;ldquo;How to think&amp;rdquo; about HPC Infrastructure and tap into the &amp;ldquo;wisdom&amp;rdquo; behind managing it. You might ask why this is relevant. For starters, setting up HPC Infrastructure is an experience that, just like any other infrastructure, be it Network or Storage, requires intricate planning and intimate familiarity with its individual contributing components. In case of HPC, let&amp;rsquo;s just say you really need to know your nodes J. Let&amp;rsquo;s talk more about what&amp;rsquo;s involved in setting up an HPC Infrastructure and how to think about it as a whole:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;1.&amp;nbsp;&amp;nbsp;&amp;nbsp; Investment Impetus:&lt;/strong&gt; To successfully plan and design an HPC Infrastructure, the first and foremost step should be to &amp;ldquo;look beneath the surface&amp;rdquo; . This simply means to understand, the primary reason for investing in HPC. The demand for HPC equipment, linked to a set of business objectives should have clear purpose around the outcome and expectation. This is specially true today than at any other moment in time because the consumption of HPC cycles, specifically in the research and development areas across all verticals has seen a steady 70% growth over the past four years (Source: &lt;a href="http://www.hoise.com/primeur/06/articles/monthly/AE-PR-05-06-21.html" style="color: blue; text-decoration: underline; text-underline: single"&gt;primeur&lt;/a&gt; ). Despite this tremendous growth in the proliferation of HPC technology, &amp;nbsp;the growth pattern itself is sporadic. One of the reasons for it may be the complexity, not only in terms of design but also in terms of consumption as well. &amp;nbsp;Take the case of &lt;a href="http://www.c3.ca/ce/archives/uploadedFiles/LRP_english.pdf" style="color: blue; text-decoration: underline; text-underline: single"&gt;SHARCNET&lt;/a&gt; in Southern Ontario that developed a long range plan around adoption and implementation of HPC technology. According to the report, some of the elementary challenges around planning for HPC emerge from the fact that &amp;ldquo;it is an enabling technology for an extremely diverse set of researchers&amp;rdquo;. This embodies the essence of the sentiment behind the complexity and diversity predominant in the HPC space. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;2.&amp;nbsp;&amp;nbsp;&amp;nbsp; Planning and Designing Hardware:&lt;/strong&gt; While thinking about planning and designing an HPC infrastructure implementation, I spoke to several folks in this area, drew from a decade and a half of my experience as an Infrastructure Architect and thought of some key areas that I would consider. These include:&lt;/font&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;a.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Facility considerations&lt;/strong&gt;&lt;/em&gt; (Rackspace, Power and Cooling): Talk to any enterprise level Datacenter manager what his/her top 10 pain-points are and you are bound to hear the words &amp;ldquo;rackspace, power and cooling&amp;rdquo; in what follows. Dig deeper and you&amp;rsquo;ll realize that in any datacenter, there&amp;rsquo;s a fixed number of colo&amp;rsquo;s (&lt;a href="http://en.wikipedia.org/wiki/Colocation" style="color: blue; text-decoration: underline; text-underline: single"&gt;Colocation&lt;/a&gt;) you can populate based on the HVAC designs. This means that rackspace is what&amp;rsquo;s at a premium in each of these colo&amp;rsquo;s with every &amp;ldquo;u&amp;rdquo; accounted for. Packing in dense chipsets in small form-factor server add to existing power and cooling challenges &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;Translation&lt;/em&gt; &amp;ndash; you need more outlets and more airflow per rack than what you did a decade ago with a handful of 4 and 5u servers taking up the entire rack&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;b.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Physical Plant planning:&lt;/strong&gt;&lt;/em&gt; Quoting the resident HPC Guru &lt;a href="http://port25.technet.com/archive/2006/10/18/Introducing-Frank-Chism_3A00_--High-Performace-Computing-Blogger-on-Port-25.aspx" style="color: blue; text-decoration: underline; text-underline: single"&gt;Frank Chism&lt;/a&gt; who says &amp;ldquo;I cannot over emphasize the importance to planning for physical plant in HPC deployments. Things like room and raceways for well managed and planned cabling. HPC uses more cable than anything except maybe SAN. Also, pay attention to floor loads, air flow, clean and redundant power. Finally, never never forget out-of-band management. Deep subfloor really helps with all that cabling&amp;rdquo;. &lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;Translation&lt;/em&gt; &amp;ndash; Effective HPC performance calls for an effective HPC design, which includes tweaking hard as well as soft components. These components can be as covert as chip-design or as overt as subfloor depth.&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;c.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Hardware and Processing Power:&lt;/strong&gt;&lt;/em&gt; Pushing the envelope on hardware and processor architectures today translates to increased performance (the heart and soul of HPC). Adding energy efficient hardware on top of the architecture amounts to greater investment in raw computing power, which in turn translates to building a sound HPC infrastructure. The key advantages one needs to look for in this scenario are faster data access and increased instructions. The word &amp;ldquo;performance&amp;rdquo; is repeated throughout the theme of this topic because it IS what HPC is all about, the ability to reduce the number of cycles to process data. Addressing the hardware and processing specs as part of core requirements ensures a smoother build-out.&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;3.&amp;nbsp;&amp;nbsp;&amp;nbsp; Implementing HPC Tools and Software:&lt;/strong&gt; Like any other piece of hardware, a HPC cluster is just that until software and tools exploit the underlying architecture to drive results and performance to do what it does best &amp;ndash; compute. When thinking of some core elements of HPC tools and software, here&amp;rsquo;s how I thought to break them up:&lt;/font&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;a.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Setup and deployment systems:&lt;/strong&gt;&lt;/em&gt; Setting up HPC clusters goes back to what I said earlier in Section 1 &amp;ndash; what do you want to do with it? Although there are various ways and methods that allow you to drive the software and installation experience of an HPC system, the bottom line is that this depends to a great extent of what components make up the genetic composition of the HPC cluster you ordered. Taking a look at some HPC software setup and deployment tools out there, a few mainstream ones are &lt;a href="http://www.scali.com/" style="color: blue; text-decoration: underline; text-underline: single"&gt;SCALI&lt;/a&gt; and HP-MPI (&lt;a href="http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,1238,00.html" style="color: blue; text-decoration: underline; text-underline: single"&gt;HP&amp;rsquo;s message passing interface&lt;/a&gt;). These packages provide deployment, monitoring and job scheduling services for managing and administering an HPC cluster just like IBM&amp;rsquo;s CSM (&lt;a href="http://www-03.ibm.com/servers/eserver/clusters/software/csm.html" style="color: blue; text-decoration: underline; text-underline: single"&gt;Cluster Systems Manager&lt;/a&gt;). In the Open Source space, there&amp;rsquo;s &lt;a href="http://www.clusterresources.com/pages/products/maui-cluster-scheduler.php" style="color: blue; text-decoration: underline; text-underline: single"&gt;Maui&lt;/a&gt; and &lt;a href="http://www.clusterresources.com/pages/products/torque-resource-manager.php" style="color: blue; text-decoration: underline; text-underline: single"&gt;Torque&lt;/a&gt;, that work as job scheduler and resource managers for managing compute nodes and clusters. &lt;a href="http://www.platform.com/products/Rocks" style="color: blue; text-decoration: underline; text-underline: single"&gt;Platform Rocks&lt;/a&gt; is another suite of utilities that allow installation and integration of third party apps&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;b.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Parallel FS:&lt;/strong&gt;&lt;/em&gt; This is truly what I think is going to be the frontier for some intense activity over the next few years. Using &lt;a href="http://wikipedia.com/" style="color: blue; text-decoration: underline; text-underline: single"&gt;Wikipedia&amp;rsquo;s&lt;/a&gt; description, &amp;ldquo;&lt;span lang="EN"&gt;Distributed &lt;a href="http://en.wikipedia.org/wiki/Parallel" style="color: blue; text-decoration: underline; text-underline: single" title="Parallel"&gt;parallel&lt;/a&gt; file systems stripe data over multiple servers for high performance. Some of the distributed parallel file systems use &lt;a href="http://en.wikipedia.org/wiki/Object_storage_device" style="color: blue; text-decoration: underline; text-underline: single" title="Object storage device"&gt;object storage device&lt;/a&gt; (OSD) (In Lustre called OST) for chunks of data together with centralized &lt;a href="http://en.wikipedia.org/wiki/Metadata" style="color: blue; text-decoration: underline; text-underline: single" title="Metadata"&gt;metadata&lt;/a&gt; servers such as &lt;a href="http://en.wikipedia.org/wiki/Ceph_file_system" style="color: blue; text-decoration: underline; text-underline: single" title="Ceph file system"&gt;Ceph Scalable, Distributed File System&lt;/a&gt; from &lt;a href="http://en.wikipedia.org/wiki/University_of_California,_Santa_Cruz" style="color: blue; text-decoration: underline; text-underline: single" title="University of California, Santa Cruz"&gt;University of California, Santa Cruz&lt;/a&gt;. (Fault-tolerance in their roadmap.), &lt;a href="http://en.wikipedia.org/wiki/Lustre_(file_system%2529" style="color: blue; text-decoration: underline; text-underline: single" title="Lustre (file system)"&gt;Lustre&lt;/a&gt; from &lt;a href="http://en.wikipedia.org/wiki/Cluster_File_Systems" style="color: blue; text-decoration: underline; text-underline: single" title="Cluster File Systems"&gt;Cluster File Systems&lt;/a&gt;. (Lustre has failover, but multi-server RAID1 or RAID5 is still in their roadmap for future versions.) and &lt;a href="http://en.wikipedia.org/wiki/Pvfs" style="color: blue; text-decoration: underline; text-underline: single" title="Pvfs"&gt;Parallel Virtual File System&lt;/a&gt; (PVFS, PVFS2)&amp;rdquo;. &lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;Deep-Dive:&lt;/em&gt; At Base, parallel file systems are global namespaces for files that achieve high bandwidth via parallelism. That bandwidth comes in three dimensions, high aggregate bandwidth, high single stream bandwidth, and high metadata operations per second. No one seems to have achieved high performance in all of these dimensions. Don&amp;rsquo;t forget that the volumes of data are so large that backup is a major undertaking and thus, reliability is required as well. Further, nobody seems to be able to make a parallel file system that performance well for high-speed data for short I/Os, like say you do when compiling a major application&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;c.&amp;nbsp; &lt;em&gt;&lt;strong&gt;Multiple Networks:&lt;/strong&gt;&lt;/em&gt; A final comment on implementation of HPC is that HPC often has multiple networks. For example, it does little good to have a parallel file system that delivers gigabytes per second of data to single nodes if the network can&amp;rsquo;t handle that much bandwidth!&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;So in conclusion, here&amp;rsquo;s a recap on the learning behind setting up HPC Infrastructure:&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Comprehensive understanding beneath WHY you&amp;rsquo;re investing in HPC and what you expect as an outcome&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Deep familiarity with the core HPC Hardware and design components&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Facility and Physical plant considerations to ensure adequate cabling and subfloor space&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Visibility into prominent HPC based software and toolsets&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Understanding the three dimensions of bandwidth&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;And finally accommodating the concept of &amp;ldquo;Multiple Networks&amp;rdquo; into node design to accommodate the required bandwidth&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Verdana" size="2"&gt;Look forward to getting back to you with more on HPC over the new few weeks again. Until then &amp;ldquo;Happy Computing&amp;rdquo;!!&lt;/font&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3317" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>HPC - The way all computing will look...</title><link>http://port25.technet.com/archive/2006/11/01/HPC-_2D00_-The-way-all-computing-will-look_2E002E002E00_.aspx</link><pubDate>Wed, 01 Nov 2006 22:37:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3249</guid><dc:creator>MichaelF</dc:creator><slash:comments>7</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3249</wfw:commentRss><comments>http://port25.technet.com/archive/2006/11/01/HPC-_2D00_-The-way-all-computing-will-look_2E002E002E00_.aspx#comments</comments><description>&lt;p&gt;&lt;font face="Verdana" size="2"&gt;I have been itching to write on this subject ever since I first met w/ Doug Lora and &lt;a href="http://port25.technet.com/archive/2006/10/18/Introducing-Frank-Chism_3A00_--High-Performace-Computing-Blogger-on-Port-25.aspx" style="color:blue;text-decoration:underline;text-underline:single;"&gt;Frank Chism&lt;/a&gt;. High-Performance computing &amp;ndash; Wow! The first time someone explained the concept to me, I couldn&amp;rsquo;t help but visualize a scene from the movie &amp;ldquo;&lt;a href="http://imdb.com/title/tt0083658/" style="color:blue;text-decoration:underline;text-underline:single;"&gt;Blade Runner&lt;/a&gt;&amp;rdquo; and the futuristic feel of how Supercomputers actually work. My interest took me deeper into the heart of HPC to try to get my head around what HPC really is all about. High-performance computing systems, also referred to sometimes as &amp;ldquo;Supercomputers&amp;rdquo; are more prevalent today across prominent verticals such as Oil and Gas, Bioinformatics, Finance and Entertainment than ever before. &lt;a href="http://en.wikipedia.org/wiki/High-performance_computing" style="color:blue;text-decoration:underline;text-underline:single;" title="http://en.wikipedia.org/wiki/High-performance_computing" target="_blank"&gt;Wikipedia&lt;/a&gt; described HPC as &amp;ldquo; &lt;span&gt;Supercomputers and Computer Clusters i.e. computing systems comprised of multiple (usually &lt;a href="http://en.wikipedia.org/wiki/Mass_production" style="color:blue;text-decoration:underline;text-underline:single;" title="http://en.wikipedia.org/wiki/Mass_production
Mass production" target="_blank"&gt;mass-produced&lt;/a&gt;) processors linked together in a single system with commercially available &lt;a href="http://en.wikipedia.org/wiki/Connectivity_(computer_science%2529" style="color:blue;text-decoration:underline;text-underline:single;" title="http://en.wikipedia.org/wiki/Connectivity_(computer_science)
Connectivity (computer science)" target="_blank"&gt;interconnects&lt;/a&gt;. Usually, computer systems in or above the &lt;a href="http://en.wikipedia.org/wiki/Teraflop" style="color:blue;text-decoration:underline;text-underline:single;" title="http://en.wikipedia.org/wiki/Teraflop
Teraflop" target="_blank"&gt;teraflop&lt;/a&gt;-region are counted as HPC-computers&amp;rdquo; . An HPC Cluster is usually implemented to provide increased performance by splitting a computational task across many different &lt;a href="http://en.wikipedia.org/wiki/Node_(networking%2529" style="color:blue;text-decoration:underline;text-underline:single;" title="http://en.wikipedia.org/wiki/Node_(networking)
Node (networking)" target="_blank"&gt;nodes&lt;/a&gt; in the cluster. &lt;/span&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Applications that run on HPC systems are prevalent in heavy-duty research and experimentation to engineering scenarios including &lt;a href="http://en.wikipedia.org/wiki/Transaction_processing" style="color:blue;text-decoration:underline;text-underline:single;"&gt;transactional processing&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Data_warehouse" style="color:blue;text-decoration:underline;text-underline:single;"&gt;data warehousing&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Computational_fluid_dynamics" style="color:blue;text-decoration:underline;text-underline:single;"&gt;computational fluid dynamics&lt;/a&gt;, virtual prototype testing etc. The evolution behind clustering technology has a lot to do with the growing adoption of this technology as well. The additional element that has made this technology very attractive is price. An HPC cluster can be implemented at a fraction of&amp;nbsp;the cost today&amp;nbsp;as compared to&amp;nbsp;10-15 years ago. Take a Cray Y-MP c916 supercomputer that cost close to $40 million 15 years ago. Today, you can get computing power very close to that for almost $4,000. The proof of this adoption is in the fact that every industry vertical is deploying HPC. From a &amp;ldquo;mainframe&amp;rdquo; approach that existed decades ago, the implementation trend of this technology is gravitating towards decentralized grids and clusters.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;So why do I say that this is the way all computing will look - HPC is already a $9 billion growing market (source &lt;a href="http://www.hpcwire.com/hpc/612853.html" style="color:blue;text-decoration:underline;text-underline:single;" title="http://www.hpcwire.com/hpc/612853.html" target="_blank"&gt;HPCwire&lt;/a&gt;). Evolution in this sphere is occurring at a blazing speed and the demand for HPC systems across various verticals is expected to multiply. Bottom-line &amp;ndash; HPC will play a very key role in how computing power is used, stacked and scaled. Not only that, the development of HPC propagated file-systems will be an area that we all should watch very closely over the next few years. Let&amp;rsquo;s also fully realize the &amp;ldquo;impact&amp;rdquo; of this technology in the business space. If done right, HPC clusters hold the key to superior systems performance, while maintaining reasonable economies of scale. Delving into the benefits of these clusters, which until recently was a domain of the scientific community, is literally like lighting a fuse to an explosive. I say this with a strong ethos because we have yet to recognize&amp;nbsp;all&amp;nbsp;possible&amp;nbsp;uses of HPC clusters with their underlying potential. According to some researchers at &lt;a href="http://cat.inist.fr/?aModele=afficheN&amp;amp;cpsidt=14477686" style="color:blue;text-decoration:underline;text-underline:single;" title="http://cat.inist.fr/?aModele=afficheN&amp;amp;cpsidt=14477686" target="_blank"&gt;INIST-CNRS&lt;/a&gt;, &lt;em&gt;&amp;ldquo;Analytic methods, statistical modeling, and pattern searching algorithms that are common in scientific computing can now be applied to the vast amounts of operational and historical data generated by business transactions to extract knowledge that can be used for competitive advantage&amp;rdquo;.&lt;/em&gt; &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;A nagging question still remained in my head as to the WHY behind the importance of HPC? I kept looking for the single reason behind the heavy investment in this area and why it&amp;rsquo;s such a critical component of highly-complex computational analysis being done. The biggest advantage or theme that emerged from wherever I looked was that HPC is one of the few tangible technologies out there, whose sheer computing power helps solve highly complex computational workloads and problems. This is not to mention the solitary advantage of using this technology &amp;ndash; time. Time that it takes to resolve highly complex workloads is greatly reduced with a faster outcome. And anyone reading this blog knows the value of time and how it&amp;nbsp;is&amp;nbsp;THE most valuable element of all. And everyone knows, no matter how evolved and fast hardware can get, there will always be bleeding-edge problems that will demand processing power beyond what the best clusters can provide.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;My endeavor here at OSSL, is to understand this topic from the ground up, have an open discussion on the subject matter as well as educate the audience along the way. And how do I plan to do that &amp;ndash; well, we have started venturing into doing more with HPC and understanding the various HPC platforms and technologies out there. Over the course of the next few months I&amp;rsquo;ll be sharing more on this subject with all of you including market trends, evolution of HPC, Grid Computing Scenarios, &amp;ldquo;chip&amp;rdquo; supercomputing etc. &lt;/font&gt;&lt;font face="Verdana"&gt;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-Kishi&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3249" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category></item><item><title>Overloading 'Clusters'</title><link>http://port25.technet.com/archive/2006/10/20/Overloading-_2700_Clusters_2700_.aspx</link><pubDate>Fri, 20 Oct 2006 17:06:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3186</guid><dc:creator>Frank Chism</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3186</wfw:commentRss><comments>http://port25.technet.com/archive/2006/10/20/Overloading-_2700_Clusters_2700_.aspx#comments</comments><description>&lt;p&gt;&lt;em&gt;&amp;quot;`When I use a word,&amp;#39; Humpty Dumpty said, in rather a scornful tone, `it means just what I choose it to mean -- neither more nor less.&amp;#39; &amp;quot;&lt;/em&gt; &lt;/p&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;Through the Looking Glass &lt;br /&gt;Lewis Carroll&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;strong&gt;Where&amp;rsquo;s the glory?&lt;br /&gt;&lt;/strong&gt;I work in the cluster business. I can tell you that all too often I have felt like Alice trying to hold a conversation with Humpty Dumpty in Looking Glass Land. This usually occurs when I&amp;rsquo;m talking to someone new to cluster computing or someone who comes from a different tread of the industry than I do. My roots are in a thread that used number crunching to mean serious floating point arithmetic done by Fortran programs to simulate physical processes. Of course, some of the support routines and tools and even the operating system might be written on C, but Fortran ruled. Imagine my surprise when I found there was a &amp;lsquo;Number Crunchers Users Group&amp;rsquo; in Seattle and they got together to discuss using spreadsheets. &amp;ldquo;Now where&amp;rsquo;s the glory in that?&amp;rdquo;&amp;nbsp; I thought to myself.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Time marches on, but technology runs as fast as it can just to stay in one place.&lt;br /&gt;&lt;/strong&gt;Fortunately for me, the object oriented police have provided me with just the right jargon to describe my predicament. Just consider that in any modern object oriented language it is possible that + can mean any number of things. Humpty would be proud. In OOP + means just exactly what the developer chooses it to mean. This is called overloading an operator. That may be OK for a compiler, but what about me? When I use cluster I am thinking of something that descended from the original Beowulf. No, not the King of the Geats. I mean the seminal work of those oft sung NASA nerds who put together the first Beowulf compute clusters. When I say nerds, I am here to praise cluster creators, not heap dirt on them or their work. After all, they ain&amp;rsquo;t dead yet.&lt;/p&gt;&lt;p&gt;For example, I work for a company that has several cluster offerings. There&amp;rsquo;s failover clusters, and load balancing scale out clusters, and my baby compute clusters. Now that&amp;rsquo;s overloading. You can usually tell what kind of cluster we mean by the type of work we talk about feeding it. If you had one type of cluster in mind and I had another and we kept talking long enough we&amp;rsquo;d either figure out the root cause of the confusion or dismiss our conversational partner as an idiot.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;But wait. It gets worse.&lt;br /&gt;&lt;/strong&gt;Within my own little compute centric world, two new terms have come into common usage. They are farm and grid. So how do I tell a farm from a cluster if both are eating compute intensive programs? And worse yet, how is a cluster or a farm related (or not) to a grid? I was recently told by a co-worker to not tell our customer that he had a cluster, because as far as he was concerned it was a grid. This is proof that technical correctness is not nearly as important as political correctness. As in politics, so in life.&lt;/p&gt;&lt;p&gt;I can&amp;rsquo;t claim to have invented farms, but I can certainly claim to be one of the first of the render farmers. I was working at an early Computer Generated Images (CGI) site that was falling behind schedule for a major (OK, it was a big deal to us) Hollywood movie. If we were to finish in time for the planned release, we needed to get our CGI effects generated at just about twice the rate we were running at on our current machine. Fortunately the little ol&amp;rsquo; mainframe we were using, a Cray-1, had just been superseded by the Cray X/MP, which had two CPUs instead of one and each CPU was about 50% faster than the Cray-1 CPU.&amp;nbsp; In an example of embarrassingly parallel render farming, we ran odd numbered frames on one thread, even numbered frames on another and ran a third thread to collate the frames and send them to the camera.&lt;/p&gt;&lt;p&gt;I can&amp;rsquo;t be blamed for grid at all. Well yes, some of the computers my company sold were &amp;lsquo;on the grid&amp;rsquo;, but I never thought of the grid as anything other than a route for users to do cool things with our machines. In fact I wasn&amp;rsquo;t sure that grid was anything other than a buzz word used to get NSF funding. Now, thanks to the efforts of the hardworking and unpaid volunteers at Wikipedia, I have at least one fixed mark to guide my wondering barking.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;If a cluster on the grid failed over and no one was there to farm it, would it make any sense?&lt;br /&gt;&lt;/strong&gt;So, can we all agree on one set of definitions for clusters (several flavors to be sure), farms and grids? If not, I&amp;rsquo;m sure I&amp;rsquo;ll hear from the more assertive of the Port 25 readers and perhaps we can reach a group consensus and I can start quoting the&amp;nbsp; group mind of an entire community in defense of my own use of these terms without sounding too much like Humpty Dumpty making up meanings as I see fit.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Cluster&lt;/em&gt;: Making more than one computer behave as a single resource.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Failover or High Availability Cluster&lt;/em&gt;: A cluster specifically designed to perform functions in a manner that makes the service it provides continuous, even in the event of individual computer failures.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Load balancing or Scale out Cluster&lt;/em&gt;: Generally a high availability cluster that in addition to offering resiliency against individual computer failures also offers addition ability to deliver more of the intended service.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Compute Cluster&lt;/em&gt;: A cluster that is built as a single unit and treated as a single system and tuned to perform compute intensive tasks either as a capacity engine, that is to run lots of single node jobs or many low scale parallel jobs, or a capability engine, that is to run much bigger parallel jobs than a single node can accommodate.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Compute Farm&lt;/em&gt;: A cluster that uses a collection of computers, generally in a centralized location, to run many similar jobs in parallel for improved time to completion of a particular process. This is very similar to a Compute Cluster in capacity mode but the farm is not necessarily built to look like a single system.&lt;/p&gt;&lt;p&gt;&lt;em&gt;Compute Grid:&lt;/em&gt; A heterogeneous farm that is spread out across a wider network or even the Internet but more importantly that is controlled by and conforms to the standards, concepts, and tools originating in the Global Toolkit. It can be used in both capacity and capability mode but is generally a distributed collection of resources, not a single system.&lt;/p&gt;&lt;p&gt;I tried to turn the handle but&amp;mdash;&lt;/p&gt;&lt;p&gt;That&amp;rsquo;s all for now. I enjoyed writing this and hope to hear from some of you about what you think of my proposed definitions and how they can be improved. Other items on my blog-fodder list are &amp;lsquo;The Parallel Imperative&amp;rsquo; and &amp;lsquo;What the Heck is Parallel I/O Anyway?&amp;rsquo;&lt;/p&gt;&lt;p&gt;So, never stop studying and I&amp;rsquo;ll blog at you later.&lt;br /&gt;- Frank&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3186" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>Introducing Frank Chism:  High Performance Computing Blogger on Port 25</title><link>http://port25.technet.com/archive/2006/10/18/Introducing-Frank-Chism_3A00_--High-Performace-Computing-Blogger-on-Port-25.aspx</link><pubDate>Wed, 18 Oct 2006 22:00:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3178</guid><dc:creator>MichaelF</dc:creator><slash:comments>12</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3178</wfw:commentRss><comments>http://port25.technet.com/archive/2006/10/18/Introducing-Frank-Chism_3A00_--High-Performace-Computing-Blogger-on-Port-25.aspx#comments</comments><description>&lt;p&gt;Today we are pleased to introduce Frank Chism.&amp;nbsp; Frank is a Technology Specialist at Microsoft who has worked in the High Performance Computing space for 41 years.&amp;nbsp; He is joining our team of bloggers and will contribute a monthly blog regarding HPC.&amp;nbsp; In this interview Sam and Frank talk about Frank&amp;#39;s background as well as some of his insights on HPC both past and present.&amp;nbsp; &lt;/p&gt;&lt;p&gt;Look for Frank&amp;#39;s first blog later this week or early next.&lt;/p&gt;&lt;p&gt;&amp;nbsp;
&lt;center&gt;&lt;embed src="http://images.video.msn.com/flash/soapbox1_1.swf" quality="high" width="432" height="364" base="http://images.video.msn.com" type="application/x-shockwave-flash" allowFullScreen="true" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&amp;v=690c44d4-b946-4ae9-8511-955412884a8a&amp;ifs=true&amp;fr=msnvideo&amp;mkt=en-US&amp;brand="&gt;&lt;/embed&gt;&lt;br /&gt;&lt;a href="http://video.msn.com/video.aspx?vid=690c44d4-b946-4ae9-8511-955412884a8a" target="_new" title="Introducing Frank Chism: High Performance Computing Blogger on Port 25"&gt;Video: Introducing Frank Chism: High Performance Computing Blogger on Port 25&lt;/a&gt;&lt;/center&gt;&lt;/p&gt;&lt;p&gt;Alternate Video Format&lt;br /&gt;-&lt;a href="http://port25.technet.com/videos/frankchism.mp4" target="_blank"&gt;Download MPEG4 Video&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3178" width="1" height="1"&gt;</description><enclosure url="http://port25.technet.com/videos/podcasts/frankchism.mp3" length="28698645" type="audio/mpeg" /><category domain="http://port25.technet.com/archive/tags/Media/default.aspx">Media</category><category domain="http://port25.technet.com/archive/tags/Podcast/default.aspx">Podcast</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category><category domain="http://port25.technet.com/archive/tags/Video/default.aspx">Video</category></item><item><title>Compute Cluster Server:  Sam interviews Ryan Waite to discuss Compute Cluster Server</title><link>http://port25.technet.com/archive/2006/08/18/Computer-Cluster-Server_3A00_--Sam-interviews-Ryan-Waite-to-dicuss-Compute-Cluster-Server.aspx</link><pubDate>Fri, 18 Aug 2006 16:47:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:2939</guid><dc:creator>MichaelF</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=2939</wfw:commentRss><comments>http://port25.technet.com/archive/2006/08/18/Computer-Cluster-Server_3A00_--Sam-interviews-Ryan-Waite-to-dicuss-Compute-Cluster-Server.aspx#comments</comments><description>&lt;p&gt;Sam interviews Ryan Waite, Group Program Manager for HPC, who was recently involved in the development and release of &lt;a href="http://www.microsoft.com/windowsserver2003/ccs/overview.mspx" target="_blank"&gt;Compute Cluster Server&lt;/a&gt;.&amp;nbsp; Ryan and Sam discuss how&amp;nbsp;Open Source influenced&amp;nbsp;CCS through the inclusion of&amp;nbsp;Open Source in the product&amp;nbsp;and contributions back to the community.&lt;/p&gt;&lt;p&gt;Alternate Video Format&lt;br /&gt;-&lt;a href="http://port25.technet.com/videos/ryanwaite.mp4" target="_blank"&gt;Download MPEG4 Video&lt;/a&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;center&gt;&lt;embed src="http://images.video.msn.com/flash/soapbox1_1.swf" quality="high" width="432" height="364" base="http://images.video.msn.com" type="application/x-shockwave-flash" allowFullScreen="true" pluginspage="http://macromedia.com/go/getflashplayer" flashvars="c=v&amp;v=0d50ce6d-8767-4279-89c5-b1866fc3ecb8&amp;ifs=true&amp;fr=msnvideo&amp;mkt=en-US&amp;brand="&gt;&lt;/embed&gt;&lt;br /&gt;&lt;a href="http://video.msn.com/video.aspx?vid=0d50ce6d-8767-4279-89c5-b1866fc3ecb8" target="_new" title="Compute Cluster Server: Sam interviews Ryan Waite"&gt;Video: Compute Cluster Server: Sam interviews Ryan Waite&lt;/a&gt;
&lt;/center&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=2939" width="1" height="1"&gt;</description><enclosure url="http://port25.technet.com/videos/podcasts/ryanwaite.mp3" length="33756501" type="audio/mpeg" /><category domain="http://port25.technet.com/archive/tags/Media/default.aspx">Media</category><category domain="http://port25.technet.com/archive/tags/Podcast/default.aspx">Podcast</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category><category domain="http://port25.technet.com/archive/tags/Video/default.aspx">Video</category></item></channel></rss>