760 likes | 1.04k Vues
Session Prerequisites. Should have experience with:building .NET 3.0 or 3.5 applicationsWorking with Visual Studio 2008Hopefully you have experience with:programming Excel applicationsBuilding services with Windows Communication FoundationWhat you don't to have experience with (b/c you will le
E N D
2. Speed is the King! Speed Up your SOA applications with Microsoft HPC ServerLeveraging High performance computing in Financial Services Asli Bilgin
Developer Evangelist – New York City
Microsoft Corporation
asli@microsoft.com
3. Session Prerequisites Should have experience with:
building .NET 3.0 or 3.5 applications
Working with Visual Studio 2008
Hopefully you have experience with:
programming Excel applications
Building services with Windows Communication Foundation
What you don’t to have experience with (b/c you will learn it today!):
Windows Server 2008
Windows HPC Server
Windows Compute Cluster Server
4. Session Objectives and Agenda What does the Microsoft’s HPC Development Platform look like?
How do you configure Microsoft HPC to build SOA applications? Office enabled applications?
How can you get more scale out of your apps?
How can you configure your applications to run faster using clusters & nodes?
How can you use HPC Server 2008 to deliver a reliable, scalable, secure, manageable and INTERACTIVE platform for HPC applications?
First show two application demos (Office & SOA) then we’ll go into the development platform
5. Tons of demos! (you can always read the deck on your own) Applications
Bond pricing demo using Excel on HPC
WCF on HPC demo
Infrastructure (optional)
Configuring a Service on HPC Server
Configuring a WCF broker node
Customizing W2k8 Server for use as a developer workstation
Server Manager Demo
Adding Roles
Adding Features
Job Scheduler Demo
Hyper-V demo
6. Evolution of HPC Applications
7. What is Windows HPC Server 2008? Complete, integrated platform for computational clustering
Built on top the proven Windows Server 2008 platform
Integrated development environment
8. What’s in HPC Server for Developers? Advanced Job Scheduler (for your Service DLLs)
Faster Microsoft message Passing Interface (MS-MPI)
Rapid deployment via Windows Deployment Services (WDS)
Interactive Management – Microsoft System Center User Interface (UI)
Collaboration through and Windows Communication Foundation (WCF) & Windows Workflow Foundation (WF)
9. Target Applications and Problems ‹#›
10. Solution Benefits
11. How to Tackle Embarrassingly Parallel Problems Encapsulate core calculation as a service
Build the application which invokes Services using compute cluster (CCS) WCF Session API
Optimize by minimizing data movement
12. Let’s see how this works…
13. Bond Pricing Monte Carlo Simulation using ExcelSequential mode
14. Bond pricing calculations
15. Structured bond purchasing & pricing Unknown future interest rates
Bonds an be called before mature
Solution: LSM (TODO: Add formula)
16. Bond pricing scenario
17. Pricing one bond
18. Bond Pricing Monte Carlo Simulation using ExcelParallel mode
19. What does this run on?
20. HPC Developer Platform
21. Offloading Library FunctionsExcel to CCS Communication
22. Parametric SweepsEnd user scheduling of long running calculations
23. Concepts SOA via HPC Windows HPC Server 2008 (i.e. V2)
24. SOA Development with HPC ServerDistributing Services
25. Windows HPC Server 2008 Enables Services via WCF Our next-generation platform for distributed systems
A set of extensions to the Microsoft.NET Framework 2.0
Build WCF services in Visual Studio 2008 using any .NET Language
Intelligent code editing, IDE Extensions for WCF, debugging, re-factoring, code snippets, etc.
Visual Basic .NET, Visual C#, etc.
Runs on
Microsoft Windows Vista
Microsoft Windows XP
Microsoft Windows Server 2003
Microsoft windows Server 2008
Part of .NET 3.0 and .NET 3.5
26. Creating a process intensive WCF service using Visual Studio 2008
27. V2 Enables SOA via WCF Windows Communication Foundation (WCF) is our next-generation platform for distributed systems
A set of extensions to the Microsoft.NET Framework 2.0
Build WCF services in Visual Studio 2008 using any .NET Language
Intelligent code editing, IDE Extensions for WCF, debugging, re-factoring, code snippets, etc.
Visual Basic .NET, Visual C#, etc.
WCF runs on
Microsoft Windows Vista
Microsoft Windows XP
Microsoft Windows Server 2003
Microsoft Windows Server 2008
Part of .NET 3.0 and .NET 3.5
28. Evolving Developer Application Support
29. Building and deploying services
30. Developer Platform for HPC SOA apps Visual Studio 2008 (includes WCF libraries)
Internet Information Server 7 (Vista or W2k8)
Windows SDK for Windows Server 2008 and .NET Framework 3.5
Need this for the ServiceModel Metadata Utility Tool (Svcutil.exe)
SDK for Microsoft Compute Cluster Pack
31. Steps: Developing HPC WCF service Reference System.ServiceModel
Create interface
OperationContract
Create Service
Service Behavior (class)
Create method
32. Steps: Prep your service Run svcutil on service to create WSDL & XSD
Default location: C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin
Run the command svcutil EchoService.dll.
Run the command svcutil *.wsdl *.xsd /async /language:C# /out:EchoClientProxy.cs.
33. Steps: Developing HPC WCF client Create console app
Reference Microsoft.hpc.scheduler.dll and Microsoft.hpc.scheduler.properties.dll. (program files/microsoft hpc pack 2008 sdk/bin )
Reference System.ServiceModel (WCF)
Add class
Write code
Set thread counts (100)
Create session (new SessionStartInfo, CreateSession)
Call service end points (session.EndPointReference)
34. It's easy to deploy from within Visual Studio
35. Building your development infrastructure with HPC Server
36. Feature Overview / Comparison 36
37. What is a cluster? A cluster is the top-level unit of Windows HPC Server. Contains:
Node
Single physical or logical computer
May have one or more processors.
Types of nodes : head node, compute nodes, or WCF Broker nodes.
Queue
Contains pending jobs
Provides job scheduling.
One queue per cluster
Completed jobs purged periodically
38. What is a cluster? (continued) Job
Collection of tasks (1 or many)
Initiated by user as interactive or batch processes.
Jobs reserve resources for subsequent use by one or more tasks.
Tasks
execution of a program on given compute nodes.
Types of tasks:
serial program (single process), or
a parallel program (using multi-threading, OpenMP, or MPI).
39. Deploying The Cluster
40. A quick overview of the HPC Server toolsServer manger, Compute Cluster Admin Console
41. Typical Cluster Topology
42. What is the life of a job?
43. What is the Job Scheduler?Job Life Cycle
44. Job Scheduler Stack
45. What’s new in the V2 Job Scheduler?
46. Prepare Development Server (includes SOA support) Install w2k8 Server (Enterprise or Standard)
Install HPC 2008 SDK
Launch Admin Console
Create head node, compute nodes
Configure WCF Broker Node
47. Launch Admin Console
48. Take head node offline…..Draining…..(empties queue)…..Offline.…Actions?Change Role
49. Change role of head node to broker node
50. Confirm Using Node managementBy Group?WCFBrokerNodes
51. Prepare Development Machine Install Office 2007
Install Visual Studio 2008 Professional (need office engine)
Install VSTO runtime 3.0
Install HPC 2008 SDK to reference job scheduler
52. Steps: Deploying to server Use MSI or Setup.exe to package steps for automatic execution
Use clusrun utility to:
XCOPY DLLs and PDBs to c:\Services (or whatever directory you would like to use)
Register the services on each node into registry
Sample syntax:
Clusrun dir c:\services
Clusrun md c:\services
Clusrun /nodegroup:ComputeNodes dir c:\services
53. Useful commands for working with your cluster Other useful commands
Node list
Clusrun copy “\\cpalmer-hn1\c$\tech....\boncalcservice\bin\*.*” c:\services
Reg query \\nodename\hklm...etc
Reg add \\NodeName\hklm\software\microsoft\hpc\serviceregistry\BondCalc
Reg add \\NodeName\hklm\software\microsoft\hpc\serviceregistry\BondCalc /V AssemblyPath /d c:\Services\BondCalcServices.dll
Job list
Job submit echo help
Job view 41
Cluscfg setcreds
54. Copy services to server (use clusrun) Goto \ExcelAppDemoV2\BondCalcService\bin, Copy bond*.dll and bond*.pdb to “c:\Services” on each compute nodes
55. Registering to nodes via Regedit (use regadd) Create on each node the registry: HKLM\Software\Microsoft\HPC\ServiceRegistry\BondCalc:
56. Summary – you should now be able to answer: What does the Microsoft’s HPC Development Platform look like?
How do you configure Microsoft HPC to build SOA applications? Office enabled applications?
How can you get more scale out of your apps?
How can you configure your applications to run faster using clusters & nodes?
How can you use HPC Server 2008 to deliver a reliable, scalable, secure, manageable and INTERACTIVE platform for HPC applications?
57. Resources Note: this deck has appendix for management of SOA on HPC Server
Microsoft HPC Web site – download Beta 2 Today!
http://www.microsoft.com/hpc
http://connect.microsoft.com
http://code.msdn.microsoft.com/hpc
Windows HPC Community site
http://www.windowshpc.net
Windows Server x64 information
http://www.microsoft.com/x64/
Windows Server System information
http://www.microsoft.com/windowsserver
Get the Facts Web site
http://www.microsoft.com/getthefacts
58. References Windows HPC Server 2008 Beta
http://connect.microsoft.com
Network Direct Training Video
http://channel9.msdn.com/ShowPost.aspx?PostID=366683
Performance Tuning Guidelines for Windows Server 2008
http://www.microsoft.com/whdc/system/sysperf/Perf_tun_srv.mspx
Windows HPC Server community
http://windowshpc.net
Profile Guided Optimization
http://msdn2.microsoft.com/en-us/library/aa289170
Windows Performance Tools
http://www.microsoft.com/whdc/system/sysperf/perftools.mspx
59. What to do after you leave this room Update Windows Compute Cluster Server 2003 w/SP1 http://www.windowshpc.net OR
Download W2k8 RTM
https://connect.microsoft.com/Downloads/DownloadDetails.aspx?SiteID=12&DownloadID=11141
Join the Windows HPC Server 2008 beta http://connect.microsoft.com
Download HPC Pack 2008 CTP – March 2008
https://connect.microsoft.com/Downloads/DownloadDetails.aspx?SiteID=12&DownloadID=11137
Download the HPC 2008 SDK
https://connect.microsoft.com/Downloads/DownloadDetails.aspx?SiteID=12&DownloadID=11138
Use the Windows Performance Tools http://www.microsoft.com/whdc/system/sysperf/perftools.mspx
Enlist your cluster in the Top 500 http://www.top500.org
60. Check out my team sites Industry Team Blog
http://blogs.msdn.com/fsdpe.
Microsoft in Financial Services
http://www.microsoft.com/financialservices
Developer Community for Financial Services
http://www.financialdevelopers.com
Platform Migration Alliance
http://www.mainframemigration.org
Financial Services companies using Microsoft
http://www.microsoft.com/industry/financialservices/businessvalue/casestudies.mspx
Sign up to receive the free quarterly FS Developer Newsletter
Go to Newsletter Signup on the top left hand side on: http://www.financialdevelopers.com/
61. TONS OF TRAINING ONLINE AT DISCOUNT just for you!!!!
Accessible 24 hours a day, 7 days a week
Packed with innovative features including Bookmarking, Search, and Lesson Progression Tracking
Yearly Subscriptions, starting at $249.99
Multi-user subscription packages available
Free 2-day guest pass available
http://www.totaltraining.com/online/howitworks.asp
Discount coupon code for your customers that are interested in purchasing. It’s 25% off – please use/distribute this coupon code save25microsoft
Microsoft training courses include: Visual Studio, ASP.NET – Building Web Applications, ASP.NET AJAX, SQL Server Development, WPF, Expression Studio, and Office 2007
Titles also available on DVD’s, starting at $49.99
View Visual Studio training presented by Asli Bilgin
View ASP.NET AJAX training presented by Asli Bilgin
View SQL training presented by Paul Nielsen
Visit us at www.totaltraining.com for more information
66. How do I manage my SOA services on HPC Server 2008?
67. Monitoring Service Jobs
68. Monitoring WCF Broker Nodes
69. Monitoring WCF Broker Nodes
70. Running Diagnostic Test
71. Architecture Overview
72. Tip: Use perfmon for general machine state
73. Performance and Scaling Considerations
74. Failure recovery scenarios
75. Windows Server Roadmap
76. Case study: Microsoft HPC++ CompFin Lab
77. More actions for you….. 77