Download presentation
Presentation is loading. Please wait.
Published byApril Sherman Modified over 9 years ago
1
A Top Level Overview of Parallelism from Microsoft's Point of View in 15 minutes IDC HPC User’s Forum April 2010 David Rich Director Strategic Business Development
2
For Today What we are seeing / “survey says” What we are doing – Products – “Incubations” and research – Visual Studios Partners (VSIP) An extra word on GPGPU Not going to talk about: – Rise of multi-core, GPGPU, limits of silicon, issues with power or other physical limits – “Missing middle” or need to bring HPC to a larger set of users – “Data deluge” caused by networked sensors and other sources – The fact that parallel programming is hard
3
Our Parallelism POV Pressure to move fast; – Microsoft is one of the few companies that has access to NDA roadmaps from all the volume processor vendors – We have a very large internal population involved in software engineering – We have tens of thousands of partner ISVs – So we know the trends and know solutions are needed Reasons to be careful; – “Don’t release, unless you’re ready to provide support for 10 years” – We don’t do things half way; Worldwide simultaneous release in 120 countries, full documentation Support, training and “evangelism” Over 6 Million current users of Visual Studios Support across full product line; tools, runtimes, OS, applications – Changing code is a large investment for our customers
4
Parallel Developer Survey Says Main performance barriers: network bandwidth and latency Developers indicated the most difficult tasks when developing parallel apps are debugging (37%), performance tuning (33%) and designing parallel algorithms (28%). Least satisfied with: – Debugging multi-threaded code, tasks or other parallel programming models – Analyzing code for deadlocks, races, and other concurrency side effects Developers targeting Windows ONLY have more experience on multicore technologies while those targeting other OS have more experience on clusters Microsoft funded survey: 93,000 contacted, 15000 screened, 900 with some parallel knowledge selected
5
Factors Limiting Adoption of Parallel Computing 5
6
GPGPU (of those with GPGPU knowledge) Main barriers: expertise and library availability C++ is the dominant starting point Most difficult development task is debugging and designing parallel algorithms
7
What are we Doing? First terminology; – Products – Incubations – Internal research and prototypes – Integrated Partner Products
8
Parallel Pattern Library Resource Manager Task Scheduler Task Parallel Library Parallel LINQ Threads Native Concurrency Runtime Managed Libraries ThreadPool Data Structures Tools Async Agents Library Async Agents Library UMS Threads Microsoft Research Microsoft Research Visual Studio 2010 Parallel Debugger Windows Parallel Debugger Windows Profiler Concurrency Analysis Profiler Concurrency Analysis Race Detection Fuzzing Axum Visual F# Managed Languages Rx Native Libraries Managed Concurrency Runtime DryadLINQ Key: Research / Incubation Visual Studio 2010 /.NET 4 Windows 7 / Server 2008 R2 HPC Server Operating System Visual Studio 2010 Tools / Programming Models / Runtimes
9
Parallel Technologies in Visual Studio 2010 Makes parallel computing more productive and easier to do – High-level parallel constructs and abstractions – Reduce code footprint and streamline parallel development – Helps developers express logical parallelism and map it to physical parallelism Includes advanced developer tools that understand parallel constructs – Provide debugger and profiler views that align with the way parallelism is expressed in code
10
Excel is frequently used as the “programming environment” for computational simulation Parallelizing Excel Greatly increases the compute power available to Excel Reduces the time it takes to actualize results and execute a greater number of calculations Benefit with shorter time to results and improved probability or likelihood of the outcomes
11
Excel runs on the cluster and recalculates workbook Spreadsheet as a service with input and output values Works with Excel or other application as “client” (like above) Requires HPC Server 2008 R2 and Excel 2010 HPC Services for Excel Offload existing UDF (external functions) to a cluster Sample add-in for connecting to cluster Requires HPC Server 2008 R2 and Excel 2010 Excel UDF on the Cluster VSTO code in workbook calls out to SOA Service Input and output managed by Excel developer Excel SOA Client Windows HPC Server 2008 R2 Provides two new mechanisms to distribute Excel calculations to an HPC Cluster NEW Excel 2010 on HPC Server 2008 R2
12
Incubations Accelerator – a high level data parallel language for use with GPUs and FPGAs http://connect.microsoft.com/acceleratorv2 Axum – A language for creating large scale distributed applications CHESS – A concurrency tool that helps reproduce “Heisenbergs” in parallel programs Dryad and DryadLINQ for distributed data-parallel applications http://research.microsoft.com/en-us/projects/dryad/ All are available for trial use
13
NVIDIA Parallel Nsight The industry’s first IDE for massively parallel applications Accelerates co-processing (CPU + GPU) application development Complete integration with Visual Studio 2008 – Visual Studio 2010 integration later this year NVIDIA Confidential – Do not disclose before 12-April
14
Parallel Nsight 1.0 Parallel Debugger – GPU source code debugging – Variable and memory inspection System Analyzer – Platform-level analysis – For CPU and GPU Graphics Inspector – Visualize and debug graphics content NVIDIA Confidential – Do not disclose before 12-April
15
Microsoft and GPGPU The combination of Visual Studios and partner integrated tools such as those from NVIDIA, PGI and CAPS make Windows the best development platform for GPGPU computing. And for those of you developing server and cluster based GPGPU applications – don’t forget that no changes are needed if you use HPC Server 2008!
16
http://www.microsoft.com/hpc – Links to downloads http://technet.microsoft.com/hpc – Links to Technical Documentation, HPC Team Blog, and HPC Forums – Updated regularly with new docs, SDKs, samples, videos, and other useful information http://www.microsoft.com/visualstudio/en- us/products/2010/default.mspx – Visual Studio 2010 http://msdn.microsoft.com/concurrency – Parallel Computing Developer Center 16 Additional Information
17
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.