6464--bitbit andand HighHigh PerformancePerformance ComputingComputing

TerryTerry LeeperLeeper DirectorDirector PlatformPlatform StrategyStrategy EMEAEMEA AgendaAgenda

„ 6464--bitbit ArchitecturesArchitectures andand ReviewReview „ OSOS ReleaseRelease InformationInformation „ DeveloperDeveloper RoadmapRoadmap „ ScientificScientific ComputingComputing FeaturesFeatures „ ServerServer 20032003 HPCHPC Introduction:Introduction: WhyWhy 6464--bit?bit?

„ Eliminates the 4GB „ Speeds Time to Market memory barrier inherent „ Leverages existing in 32-bit systems Windows development „ Same familiar Windows skills environment „ Improves Reliability and „ Reduces the number of Availability systems you need to „ Improves Performance manage and Scalability „ Reduces Total Cost of „ Same familiar Windows Ownership (TCO) environment „ Leverages existing Windows administration skills 6464--bitbit FunctionalityFunctionality Benefits…Benefits…

„ RDBMS „ Scientific „ Data modelling „ Physical system simulation „ CAD/CAE „ Imaging „ Data mining „ ERP / Manufacturing / Process modelling „ Shared application hosting „ consolidation HWHW PlatformPlatform OverviewOverview

„ 6464--bitbit computingcomputing isis notnot newnew toto PCPC platformsplatforms f 1993: 64-bit DEC Alpha started shipping f 1996: Sun Ultra™ w/64-bit UltraSPARC ™ „ MayMay 2001:2001: IntelIntel shipsships ItaniumItanium™™ „ JulyJuly 2002:2002: IntelIntel shipsships ItaniumItanium2™™ „ AprilApril 2003:2003: AMDAMD shipsships OpteronOpteron™™ „ 6464--bitbit machinesmachines enableenable highhigh--performanceperformance computingcomputing f Larger word size f Larger address space f Excellent for large data sets of precise numbers f Seismic data, High-energy physics, Turbulent flow calculations/prediction (e.g. weather) SupportedSupported ArchitecturesArchitectures

x64x64 IPFIPF (64-bit Extensions) (® ® Processor Family)

„ Based on 64-bit „ Based on Explicitly extensions to the Parallel Instruction instruction set Computing (EPIC) „ Lets customers take architecture. advantage of their „ Gives customers the investment in 32-bit highest levels of Windows applications, scalability on the while also powering the Windows platform latest 64-bit technology delivering a cost- effective alternative to RISC architectures ItaniumItanium

„ R&DR&D startedstarted inin ’94’94 withwith HPHP andand IntelIntel f Instruction set took shape ~1997 „ EPICEPIC f Explicitly Parallel Instruction Computing f Lessons from RISC and used multiple optimizations f Predication f Speculation f Instruction-level parallelism f Register Stack Architecture ArchitectureArchitecture Overview:Overview: x64x64

„„ StretchStretch x86x86 architecturearchitecture „„ RunsRuns legacylegacy x86x86 atat machinemachine speedsspeeds „„ IncreasedIncreased registerregister widthwidth ofof x86x86 registersregisters toto 646464-bit--bitbit „„ 88 additionaladditional generalgeneral purposepurpose registersregisters ff REXREX instructioninstruction prefixprefix addressesaddresses thethe newnew registersregisters „„ 88 additionaladditional 128128 bitbit XMMXMM registersregisters ff VC++VC++ doesdoes notnot generategenerate x87x87 nornor MMXMMX codecode PlatformPlatform PositioningPositioning

Versatile

Mainstream 32-bit x86 pplications 64-bit x64 Breadth of A

64-bit IPF

Most Scalable

Scalability CoreCore 6464--bitbit DeveloperDeveloper ValueValue developer strategy for 64-bit: „ Provide a well defined migration for developers porting their Win32 code to Windows 64-bit versions „ Provide high performance, demanding code developers solutions today for native C++ as well at .NET code „ Provide mainstream developers 64 bit power in .NET Framework 2.0 and Visual Studio 2005 f “It just works” goal f Simple guidelines for code portability between hardware architectures f .NET Framework 1.1 will run in 32-bit mode (WoW64) using 2003 SP1 f Visual Studio 2005 runs on WoW64 – remote debug supported ProductProduct RoadmapRoadmap

32-bit 64-bit Microsoft Product x86 IPF x64

Windows XP Professional x64 Edition

Windows Server 2003 Web Edition

Windows Server 2003 Standard Edition

Windows Server 2003 Enterprise Edition

Windows Server 2003 Datacenter Edition

.NET Framework * *

MS SQL Server

* Support for 32-bit .Net Framework Available now version 1.1 with OS builds 1172 and higher for IPF and x64. Scheduled for release in 1H05 Scheduled for release in 1H05 3232--bitbit ApplicationApplication SupportSupport

„ 6464--bitbit WindowsWindows supportssupports 3232--bitbit codecode viavia aa 3232--bitbit emulationemulation componentcomponent calledcalled WindowsWindows onon WindowsWindows 6464 (WOW64)(WOW64) „ MostMost 3232--bitbit applicationsapplications operateoperate seamlesslyseamlessly „ ApplicationsApplications usingusing 1616--bitbit applicationapplication installersinstallers f 64-bit Windows does not run 16-bit code „ ApplicationsApplications thatthat requirerequire 3232--bitbit filefile systemsystem filterfilter driversdrivers oror otherother kernelkernel--modemode driversdrivers f 64-bit Windows requires all such drivers to be 64- bit native f Applications that explicitly install and require a 32-bit kernel-mode system WoWWoW…WoW…… ItIt Works!Works!

„„ WindowsWindows onon WindowsWindows 6464 (WOW64)(WOW64) „„ IsolatesIsolates 323232-bit--bitbit ApplicationsApplications ff NotablyNotably filefile andand registryregistry isolationisolation ff ConsoleConsole ff GUIGUI ff ServicesServices „„ SeparateSeparate DLLsDLLs „„ PerformancePerformance hit?hit? ff SubstantialSubstantial onon ItaniumItanium ff LittleLittle toto nonenone onon x64x64 SupportSupport forfor .NET.NET FrameworkFramework-- basedbased ApplicationsApplications

„ SupportSupport forfor thethe 3232--bitbit .NET.NET FrameworkFramework versionversion 1.11.1 f Support for both x64 and Itanium versions of Windows server and client „ SupportsSupports 3232--bitbit managedmanaged applicationsapplications onon 6464--bitbit WindowsWindows „ TheThe 6464--bitbit andand 3232--bitbit .NET.NET FrameworkFramework isis duedue inin H1H1 20052005 asas partpart ofof thethe WhidbeyWhidbey releaserelease ofof VisualVisual StudioStudio „ WhenWhen thethe 6464--bitbit .NET.NET FrameworkFramework isis released,released, 3232--bitbit managedmanaged applicationsapplications willwill bebe ableable toto runrun onon thethe 6464--bitbit CLRCLR seamlesslyseamlessly „ SupportSupport forfor J#J# willwill bebe forfor 3232--bitbit versionversion ofof .NET.NET frameworkframework .NET.NET FrameworkFramework forfor 6464--bitbit „ CurrentCurrent .NET.NET FrameworkFramework (v1.0(v1.0 andand v1.1)v1.1) areare notnot supportedsupported nativelynatively onon 6464-- bitbit f .NET.NET FrameworkFramework v1.1v1.1 willwill runrun onon WoW64WoW64 onon WindowsWindows ServerServer SP1SP1 „ NativeNative supportsupport delivereddelivered inin .NET.NET FrameworkFramework v2.0v2.0 „ TypicalTypical purepure .NET.NET applicationsapplications workwork withwith nono recompilationrecompilation „ CodeCode cancan bebe portableportable acrossacross processorprocessor architecturesarchitectures f x86x86 ↔↔ IA64IA64 ↔↔ AMD6AMD644 f OptionalOptional compiler/projectcompiler/project switchesswitches toto specifyspecify targettarget ifif requiredrequired WritingWriting ManagedManaged CodeCode withwith anan eyeeye onon 6464--bitbit

„ VerifiableVerifiable f NoNo nativenative codecode (IL(IL only)only) f NoNo pointerpointer arithmeticarithmetic „ FollowFollow InteropInterop RulesRules „ KnowKnow ArchitectureArchitecture DifferencesDifferences „ BeBe carefulcareful whenwhen usingusing FloatingFloating PointPoint f UseUse newnew FloatingFloating PointPoint modelsmodels inin WhidbeyWhidbey compilercompiler DeveloperDeveloper RoadmapRoadmap

VisualVisual StudioStudio VisualVisual StudioStudio “Longhorn”“Longhorn” 20052005 VisualVisual StudioStudio • “Orcas” release • “Whidbey” release •Windows “Longhorn” .NET.NET 20032003 • SQL Server integration integration • 64-bit Framework •New UI tools and • “Everett Release” • Improved IDE productivity designers •Windows Server 2003 and community support •Extensive managed integration • Extended support for interfaces •Support for .NET Compact XML Web services Framework and device • Office programmability development •Improved performance UsingUsing COMCOM ComponentsComponents

„ COMCOM isis nativenative „ NeutralNeutral appsapps maymay useuse platformplatform specificspecific COMCOM componentscomponents „ NoNo COMCOM interopinterop betweenbetween architecturesarchitectures „ ComponentComponent maymay notnot existexist onon 6464--bitbit „ MayMay electelect toto runrun inin WoWWoW onlyonly PortingPorting youryour nativenative applicationapplication toto 6464--bitbit

„ Pretty Straightforward „ Compiler switch (-Wp64) „ 64-bit brings differences – LLP64 f T*, size_t: 64 bit f int, long: built-in integers are ALL 32 bit f long long: 64bit always „ Alignment changes f Misalignment can be fatal on Itanium

Data API int long pointer Model Win32 ILP32 32 32 32 Win64 LLP64 32 32 64 UNIXes LP64 32 64 64 Win32Win32 forfor 6464--bitbit

„ PointersPointers andand typestypes derivedderived fromfrom pointer,pointer, e.g.e.g. handles,handles, areare 6464--bitbit longlong f AA fewfew othersothers gogo 64,64, e.g.e.g. WPARAM,WPARAM, LPARAM,LPARAM, LRESULT,LRESULT, SIZE_TSIZE_T f RestRest areare thethe same,same, e.g.,e.g., 3232--bitbit INT,INT, DWORD,DWORD, LONGLONG „ OnlyOnly fivefive replacementreplacement !APIs! f FourFour forfor Window/ClassWindow/Class DataData f ReplacedReplaced byby PolymorphicPolymorphic (_(_ptrptr)) versionsversions f UpdatedUpdated constantsconstants usedused byby thesethese APIsAPIs f OneOne (_(_ptrptr)) versionversion forfor flatflat scrollscroll barsbars propertiesproperties Win32Win32 forfor 6464--bitbit

„ ThisThis isis goodgood newsnews forfor developersdevelopers f InvestmentInvestment inin win32win32 codecode isis protectedprotected f LeastLeast changechange toto datadata structuresstructures „ TypeType--cleanclean WindowsWindows (“Win32”)(“Win32”) SourceSource f ShouldShould buildbuild forfor 6464--bit,bit, i.e.i.e. Itanium.Itanium. f ShouldShould alsoalso buildbuild forfor 3232--bit,bit, i.e.i.e. PentiumPentium „ It’sIt’s notnot inin factfact “another”“another” API.API. f TheThe samesame sourcesource ISIS bothboth 6464--bitbit sourcesource ANDAND 3232--bitbit source.source. „ CleanClean “W4”“W4” codecode oftenoften “just“just works”works” AvoidingAvoiding AlignmentAlignment ProblemsProblems „„AllocateAllocate onon alignedaligned boundariesboundaries fUseUse ____declspecdeclspec(align)(align) toto alignalign datadata toto specificspecific boundryboundry fExample:Example: ____declspecdeclspec(align)(align) intint abcabc;; fCaCann useuse dynamicallydynamically withwith _aligned__aligned_mallocmalloc()() familyfamily ofof runtimeruntime routinesroutines „„__unaligned__unaligned keywordkeyword tellstells compilercompiler toto generategenerate codecode toto handlehandle misalignmentmisalignment fGenerallyGenerally notnot recommendedrecommended „„x64x64 handleshandles alignmentalignment faultsfaults inin hardwarehardware __unaligned__unaligned ExampleExample charchar *a;*a; longlong *b;*b; //// CodeCode doingdoing stuffstuff forfor aa andand bb bb == (long(long *)a;*)a; longlong cc == *b;*b; //// uhuh--ohoh EXCEPTIONEXCEPTION __unaligned__unaligned ExampleExample charchar *a;*a; _unaligned_unaligned longlong *b;*b; //// CodeCode doingdoing stuffstuff forfor aa andand bb bb == (long(long *)a;*)a; longlong cc == *b;*b; //// justjust aa performanceperformance //// hithit AlignmentAlignment violationviolation fixfix--upsups

It’sIt’s slightlyslightly differentdifferent forfor eacheach platformplatform „ x86x86 f ExceptionException ThrownThrown f EXCEPTION_DATATYPE_MISALIGNMENTEXCEPTION_DATATYPE_MISALIGNMENT f OSOS fixesfixes itit upup „ ItaniumItanium f SameSame asas x86,x86, exceptexcept thethe OSOS doesdoes notnot fixfix itit upup f ExceptionsExceptions areare visiblevisible toto thethe applicationapplication „ AMD64AMD64 f HardwareHardware doesdoes notnot generategenerate exceptionexception f FixFix upup donedone atat thethe hardwarehardware levellevel HowHow ExpensiveExpensive isis it?it?

ClearlyClearly notnot veryvery cheap!cheap! From whitepaper on data alignment CommonCommon IssuesIssues MovingMoving toto 64Bit64Bit

„ AssignmentAssignment ofof ptrptr toto intint andand vicevice versaversa „ InadvertentInadvertent castingcasting (DWORD(DWORD vs.vs. LPARAM)LPARAM) „ Don’tDon’t assumeassume bitnessbitness f 0xffffffff0xffffffff !=!= --11 f TestingTesting thethe mostmost significantsignificant bit?bit? f BitBit operationsoperations onon integralintegral valuesvalues f 11 <<<< 3333 == ?? „ AlgorithmsAlgorithms dependantdependant onon thethe bitbit sizesize f HashingHashing pointerspointers FloatingFloating PointPoint ArchitectureArchitecture IssuesIssues

„ FloatingFloating PointPoint ExpressionsExpressions f Don’tDon’t comparecompare forfor equalityequality f ExpressionExpression evaluationevaluation willwill differdiffer onon eacheach platformplatform „ UnderstandUnderstand IEEEIEEE--754754 standardstandard f Sin(x)Sin(x) maymay givegive answeranswer outsideoutside [[--1,1, 1]1] f CRTCRT routinesroutines maymay returnreturn differentdifferent resultsresults SoftwareSoftware MigrationMigration TipsTips

„ UseUse portableportable datadata typestypes insteadinstead ofof nonnon-- portableportable onesones „ UseUse sizeofsizeof()() toto determinedetermine datadata typetype sizessizes atat compilecompile timetime „ UseUse FIELD_OFFSETFIELD_OFFSET macromacro toto determinedetermine thethe offsetoffset ofof aa fieldfield inin aa structurestructure atat compilecompile timetime „ AvoidAvoid platformplatform dependentdependent assemblerassembler codecode „ Develop/useDevelop/use wellwell--isolated,isolated, abstractabstract interfacesinterfaces intointo platformplatform dependentdependent codecode „ AvoidAvoid explicitexplicit structurestructure packingpacking unlessunless absolutelyabsolutely necessarynecessary WillWill CodeCode RunRun FasterFaster onon 64bit?64bit?

„ Maybe…Maybe… DependsDepends onon aa lotlot ofof factorsfactors „ IsIs memorymemory aa bottleneck?bottleneck? „ AreAre therethere pointerspointers inin thethe workingworking setset data?data? „ IsIs itit instructioninstruction cachecache bound?bound? „ IsIs itit floatingfloating pointpoint intensive?intensive? „ DoesDoes thethe useuse exceptionsexceptions forfor controlcontrol flow?flow? ReorderingReordering TypesTypes onon 64bit64bit CanCan SaveSave SpaceSpace Original padding padding

4 8 12 16 20 24 28 32 36

struct node { struct node { char *l; char *l; char s; struct tnode *prev; struct tnode *prev; struct node *next; int i; int i; struct node *next; char s; } // original } // tuned

Tuned

4 8 12 16 20 24 28 ExceptionException HandlingHandling

„ ThrowThrow exceptionsexceptions forfor exceptionalexceptional casescases f WhatWhat exactlyexactly doesdoes thatthat mean?mean? „ Throwing/catchingThrowing/catching exceptionsexceptions isis expensiveexpensive f AddingAdding trytry--blocksblocks toto thethe codecode isis cheapcheap atat executionexecution timetime f AddsAdds toto thethe imageimage sizesize (increases(increases ..pdatapdata sectionsection size)size) VisualVisual StudioStudio SupportSupport VisualVisual StudioStudio 20052005 „ VisualVisual StudioStudio 20052005 runsruns onon x86,x86, IA64IA64 andand AMD64AMD64 processorsprocessors „ VisualVisual StudioStudio 20052005 runsruns inin thethe WoW64WoW64 onon 6464-- bitbit hardwarehardware „ SupportsSupports remoteremote debuggingdebugging acrossacross architecturesarchitectures e.g.e.g. x86x86 ÖÖ IA64IA64 „ LanguageLanguage support:support: f Support for the .NET Framework and associated languages f C++,C++, VisualVisual CC#,, VisualVisual BasicBasic fromfrom MicrosoftMicrosoft f Support for “native” Visual C++ FurtherFurther ResourcesResources

DeveloperDeveloper ToolsTools RoadmapRoadmap 20042004--66 http://msdn.microsoft.com/vstudio/productinfo/roadmap.aspx MicrosoftMicrosoft PlatformPlatform SDKSDK http://msdn.microsoft.com/library/default.asp?url=/library/en- us/win64/win64/introducing_64_bit_windows.asp .NET.NET ShowShow “Getting“Getting ReadyReady forfor Win64”Win64” http://msdn.microsoft.com/theshow/Episode005/default.asp VisualVisual StudioStudio 20052005 ScientificScientific ProgrammingProgramming FeaturesFeatures

„ OpenMPOpenMP 2.02.0 SupportSupport „ NewNew FloatingFloating PointPoint ModelModel f //fp:fastfp:fast f /fp:precise/fp:precise f /fp:strict/fp:strict „„ ParallelParallel DebuggingDebugging „„ ProfileProfile--GuidedGuided FeedbackFeedback ProfileProfile GuidedGuided Optimization?Optimization?

„„ StaticStatic compilercompiler can’tcan’t answeranswer everything…everything…

if(aif(a << b)b) foo();foo(); for(ifor(i == 0;0; ii << count;count; ++i)++i) elseelse bar();bar(); baz();baz();

How often is a < b? What is the typical value of count? ProfileProfile GuidedGuided OptimizationOptimization

Source Compile with /GL Object files

Object files Link with /LTCG:PGI Instrumented Image

Scenarios Instrumented Output Profile data Image

Profile data Link with /LTCG:PGO Optimized Object files Image HowHow MuchMuch PerformancePerformance DoesDoes PGOPGO BuyBuy You?You?

„„ PerformancePerformance increaseincrease isis architecturearchitecture andand applicationapplication specificspecific ff ItaniumItanium tendstends toto benefitbenefit thethe mostmost ff LargeLarge applicationsapplications tendtend toto benefitbenefit moremore thanthan smallsmall „„ IfIf youyou understandunderstand youryour realrealreal-world--worldworld scenariosscenarios thenthen PGOPGO isis almostalmost alwaysalways aa winwin PGOPGO ImprovementImprovement OverOver LTCGLTCG

15 G C T L

er 10 v t O en

em 5 v o r p m I

% 0 Intel Itanium2 AMD AMD64 Intel x86 SPECInt SPECfp SomeSome BenefitsBenefits ofof PGOPGO

„ SwitchSwitch expansionexpansion „ BetterBetter inlininginlining decisionsdecisions „ BasicBasic blockblock layoutlayout „ DeadDead blockblock separationseparation Wins:Wins: SwitchSwitch ExpansionExpansion

MostMost frequentfrequent valuesvalues areare pulledpulled out.out. //// 90%90% ofof thethe if (i == 10) //// timetime ii == 10;10; goto default; switchswitch (i)(i) {{ switch (i) { casecase 1:1: …… case 1: … casecase 2:2: …… casecase 3:3: …… case 2: … default:…default:… case 3: … }} default:… } InliningInlining

ProfileProfile GuidedGuided usesuses callcall graphgraph pathpath profiling.profiling. a

foo bar baz

bat InliningInlining

ProfileProfile GuidedGuided usesuses callcall graphgraph pathpath profiling.profiling. 10 75 a bar baz

20 50 foo bar baz

100 15 bat bar baz15 InliningInlining (cont)(cont)

InliningInlining decisionsdecisions areare mademade atat eacheach callcall site.site. 10 a

20 125 foo bar baz

100 15 bat bar baz15 RunRun buildingbuilding

Basic blocks are ordered so that most frequent path falls through.

Default layout Optimized layout

A A A 100 10 B B B C

100 10 C D D D C SeparationSeparation

Dead basic blocks are placed in a special section.

Default layout Optimized layout

A A A 100 0 B B B C

100 0 C D D D C MicrosoftMicrosoft && HPCHPC TodayToday MicrosoftMicrosoft AddressingAddressing HPCHPC TodayToday Technical Solution „ Partner Driven Solution Stack

ManagementManagement LSF PBSPro DataSynapse MSTI

ApplicatApplicatioionsns Parallel Applications

MiddlewareMiddleware MPI/Pro MPICH WMPI MPI-NT Visual St

OSOS WINDOWS u d i ProtocolProtocol TCP RDMA GM o

InterconnectInterconnect Fast Ethernet Gigabit Ethernet Infiniband Myrinet

PlPlatatformform Intel (32bit & 64bit) & AMD x64 Ecosystem „ Special HPC-specific licensing via OEM partners „ Partnerships with ISV to develop on Windows „ Partnership with Cornell Theory Center PartnersPartners -- ExampleExample ListList OEM ISV „ Appro „ Altair „ Dell „ Ansys „ HP „ Avaki „ IBM „ Computer Modeling Group „ Verari „ DataSynapse „ RLX „ Entropia „ Landmark Middleware „ LSTC „ MPI Softtech „ Mathpoint „ mpC Workshop „ MPI „ Critical Software „ MSC Software „ Altair „ MuPAD „ Platform Interconnects „ Powerell „ Myricom „ Schlumberger „ Extreme Networks „ United Devices „ TopSpin „ and many more... „ Infinicon Systems and many more... CornellCornell TheoryTheory CenterCenter http://www.tc.cornell.edu/http://www.tc.cornell.edu/

Goal : (1999) To utilize existing commercial supported tools to build clusters (2004) Enable scientific research through data-driven Science & seamless HPC Enabling Technological Breakthroughs Payoffs „ Computational Science (CTC-Ithaca) „ Seamless HPC f Protein Folding and Structural f Reduced or no learning curve Biology f Powerful Integrated Development f Computational Fracture Tools Mechanics „ Easier Collaboration f Genomics f Standard Open Interfaces f Computational Agriculture f Interoperability „ Computational Finance (CTC- Manhattan) „ Performance & EfficienEfficiencycy f Optimization, Analytics & f Code Reduction Methods f Scalability – Application scale even as your data grows New Windows HPC Product Team f Reliability „ In collaboration with CTC f Better program design „ MS building a cluster platform based on CTC work Training „ CTC continuing with advanced research (databases, web services, „ HPC Workshop - Oct 18-19th etc) HelpingHelping OthersOthers GetGet StartedStarted

CCTP Kit Delivers: • Hands-on preview of core HPC technologies • Allows for compatibility testing & tuning • Free opportunity to preview Windows HPC Solutions

Software Included: • XP Professional evaluation version • Microsoft Windows 2000 Advanced Server evaluation version • Microsoft Visual Studio .Net DVD evaluation version • Microsoft Services For Unix 3.0 evaluation version • MPI/Pro 1.6.4 from MPI Software Technology, Inc. (free up to 32 processor clusters) • ClusterController 1.5.2 from MPI Software Technology, Inc. (free up to 32 processor clusters) • MuPAD 2.5.1 Algebra System • MPI-CH 1.2.4 (open source software) • PETSc 2.1.4 Suite of Data Structures and Routines • Intel Vtune Analyzer Evaluation Version • Intel C++ Compilers Evaluation Version • Intel Fortran Compiler for Windows Evaluation Version • Intel Math Kernel Libraries Evaluation Version • Computational Cluster Monitor from Cornell Theory Center • PLAPACK package (open source software) Windows HPC Customer Examples

Enterprise Financial Analysis 840 Nodes Rendering 600 Nodes Oil Exploration Firm Seismic Processing >17,000 nodes

Departmental Market Data 160-processors Analysis DOE Ship/Sub 40-processors Contractor Engineering Auto Parts 128-processors Structural Analysis Genome Data 54-processors Analysis Petroleum 32-processors Engineering Cancer Treatment 100-processors Planning TransitioningTransitioning toto thethe futurefuture While we have success today…

Customers require: f An integrated supported solution stack f Simplified job submission, status and progress monitoring f Maximum compute performance and scalability f Simplified environment from desktops to HPC clusters Administrators require: f Better cluster monitoring and management for maximum resource utilization f Flexible, extensible, policy-driven job scheduling and resource allocation f Maximum node uptime f Secure process startup and complete cleanup Developers Require: f Programming environment that enables maximum productivity f Availability and optimized compilers (Fortran) and math libraries f Parallel debugger, profiler, and visualization tools f Parallel programming models (MPI)

WWee hhearear tthehe requequirements,irements, tthereforeherefore moovingving foorward…rward… WindowsWindows ServerServer 20032003 HPCHPC EditionEdition releaserelease Mission: Deliver the easiest to deploy and most cost effective solution for solving scaled- out business, engineering and scientific computational problems.

• Based on Windows Server 2003 • Support for high performance hardware Core Technologies • Support for industry standards MPI2, RDMA on Ethernet & Infiniband • Integrated job scheduler and cluster resource management

• Trusted platform • Greater price/performance Key Value Key Value • Broad application support • Easy to use, scalable and secure job management

• Leverages investment in Windows administration and tools • Lower total cost of ownership User Benefits • Runs the applications that power your business • Makes cluster operation easy and secure as a single system HPC Edition Release Roadmap 2008+

2007

20062006

20052005 ► Windows Server 2003, HPC Edition 20042004

Long term Goals: • Integration with the desktop (desktop cycle stealing, Excel, visualization) • Bring Microsoft's distributed systems management and programming leadership to HPC (.NET, System Center, Web Services, BizTalk, Trust Bridge) • Bring Microsoft storage leadership to HPC (SQL Server, Storage Server) • Deep OEM/IHV partnerships for complete solutions and price/performance leadership (network interconnects, computation, storage) FutureFuture HPCHPC Editions*Editions*

HPCHPC developmentdevelopment mademade easiereasier withwith managedmanaged codecode andand .NET.NET f MPI .NET Framework integration UnusedUnused desktopdesktop computecompute cyclescycles cancan bebe easilyeasily harnessedharnessed forfor HPCHPC needsneeds f Unified desktop/cluster architecture HighHigh performanceperformance andand efficientefficient managementmanagement ofof largelarge datadata setssets f Data management integrated with scheduler f SQL databases for HPC data management

*Subject to change AcademicAcademic HPCHPC PartnersPartners

WindowsWindows HPCHPC teamteam lookinglooking for…for… „ CommunityCommunity f Developers, IT, end users „ EarlyEarly AdoptersAdopters f Beta Testers f Applications „ CloseClose PartnersPartners f Drive the Design – Feedback, Collaboration, etc f Engage beyond clusters f ScientificScientific && TechnicalTechnical ApplicationsApplications

Interested?Interested? ToTo LearnLearn MoreMore Microsoft: „ Microsoft HPC website: http://www.microsoft.com/hpc/ „ HPC Toolkit: http://www.microsoft.com/windows2000/hpc/toolkit.asp

Other Sites: „ CTC Activities: http://cmssrv.tc.cornell.edu/ctc/winhpc/ „ 3rd Party Windows Cluster Resource Centre www.windowsclusters.org „ HPC related-links web site: http://www.microsoft.com/windows2000/hpc/miscresources.asp

Some useful articles & presentations: „ “Supercomputing in the Third Millenium”, by George Spix: http://www.microsoft.com/windows2000/hpc/supercom.asp „ Introduction of the book “Beowulf Cluster Computing with Windows” by Thomas Sterling, Gordon Bell, and Janusz Kowalik „ “Distributed Computing Economics”, by Jim Gray: MSR-TR-2003- 24: http://research.microsoft.com/research/pubs/view.aspx?tr_id=655 „ “Web Services, Large Databases, and what Microsoft is doing in the Grid Computing Space”, presentation by Jim Gray: http://research.microsoft.com/~Gray/talks/WebServices_Grid.ppt

„ Send questions to [email protected] © 2003-2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.