SlideShare a Scribd company logo
Kivanc Ozuolmez
Parallel Programming
Parallel Programming




  Single Node
Shared Memory
Parallel Programming




  Single Node     Multiple Nodes
Shared Memory   Distributed Memory
Parallel Programming




  Single Node     Multiple Nodes       Multiple Nodes
Shared Memory   Distributed Memory   Distributed Memory
                                     On Demand Capacity
MS HPC is here to;



- Utilize resource usage / allocation
- Job management
- Messaging between inter-processes
  (inter-cpu / inter-memory (mpi))
- Demand based resource
  management
Cluster Topologies
Cluster Topologies
Cluster Topologies



Head Node
Cluster Topologies



Head Node




Broker Nodes
Cluster Topologies



Head Node




Broker Nodes




                     Compute Nodes
Cluster Topologies


                                 On Premise
Head Node




Broker Nodes




                     Compute Nodes
Cluster Topologies


                                 On Premise
Head Node




Broker Nodes




                     Compute Nodes
Cluster Topologies


                                 On Premise
Head Node




Broker Nodes


                                 On Premise
                                 Workstations
                                 (idle computers)



                     Compute Nodes
Management Tools



Management Console for;

  -   Cluster Deployment
  -   Cluster Management
  -   Job Scheduler
  -   Health, performance, diagnostics
Management Tools
Management Tools
Management Tools
Applications running on HPC



      - MPI applications
      - Excel
      - Self scoped, isolated applications
Clients



- HPC Client Console
- Excel
- API Calls (HPC SDK)
Client API
SessionStartInfo hpcSessionStartInfo = new
SessionStartInfo(ModelTypeHpcServicesConfiguration.HeadNodeName, serviceConfiguration.ServiceName, new
Version(serviceConfiguration.Version));
            hpcSessionStartInfo.JobTemplate = serviceConfiguration.JobTemplateName;
            // Set user credentials if configured
            if (!String.IsNullOrEmpty(HpcSessionCredentialConfiguration.UserName))
            {
                hpcSessionStartInfo.Username = HpcSessionCredentialConfiguration.UserName;
                hpcSessionStartInfo.Password = HpcSessionCredentialConfiguration.Password;
            }

           hpcSessionStartInfo.SessionResourceUnitType = SessionUnitType.Core;
           hpcSessionStartInfo.MinimumUnits = 1;
           hpcSessionStartInfo.MaximumUnits = 1;
using (hpcSession = Session.CreateSession(hpcSessionStartInfo))
     {
           using (brokerClient = CreateBrokerClient(hpcSession))
           {
           brokerClient.SendRequest<ServiceReference.InvokeExecutionOrderRequestMessage>
(requestMessage);
           brokerClient.EndRequests();

          foreach (var responseMessage in
          brokerClient.GetResponses<ServiceReference.InvokeExecutionOrderResponseMessage>())
          {
          ...
          }
          }
    }
Questions?

More Related Content

What's hot

Building your first Node app with Connect & Express
Building your first Node app with Connect & ExpressBuilding your first Node app with Connect & Express
Building your first Node app with Connect & Express
Christian Joudrey
 
Node.js
Node.jsNode.js
Node.js
Jan Dillmann
 
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
Using Node.js to  Build Great  Streaming Services - HTML5 Dev ConfUsing Node.js to  Build Great  Streaming Services - HTML5 Dev Conf
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
Tom Croucher
 
Node.js Stream API
Node.js Stream APINode.js Stream API
Node.js Stream API
The Software House
 
Practical ngx_mruby
Practical ngx_mrubyPractical ngx_mruby
Practical ngx_mruby
Hiroshi SHIBATA
 
node.js dao
node.js daonode.js dao
node.js dao
Vladimir Miguro
 
Node.js for enterprise - JS Conference
Node.js for enterprise - JS ConferenceNode.js for enterprise - JS Conference
Node.js for enterprise - JS Conference
Timur Shemsedinov
 
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
LEDC 2016
 
FwDays 2021: Metarhia Technology Stack for Node.js
FwDays 2021: Metarhia Technology Stack for Node.jsFwDays 2021: Metarhia Technology Stack for Node.js
FwDays 2021: Metarhia Technology Stack for Node.js
Timur Shemsedinov
 
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect ToolboxWebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp
 
Intro2 Cuda Moayad
Intro2 Cuda MoayadIntro2 Cuda Moayad
Intro2 Cuda Moayad
Moayadhn
 
Streams in node js
Streams in node jsStreams in node js
Streams in node js
Kushal Likhi
 
Express node js
Express node jsExpress node js
Express node js
Yashprit Singh
 
Metarhia: Node.js Macht Frei
Metarhia: Node.js Macht FreiMetarhia: Node.js Macht Frei
Metarhia: Node.js Macht Frei
Timur Shemsedinov
 
Node36
Node36Node36
Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming  Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming
Tom Croucher
 
Automatically Fusing Functions on CuPy
Automatically Fusing Functions on CuPyAutomatically Fusing Functions on CuPy
Automatically Fusing Functions on CuPy
Preferred Networks
 
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Codemotion
 
C#을 이용한 task 병렬화와 비동기 패턴
C#을 이용한 task 병렬화와 비동기 패턴C#을 이용한 task 병렬화와 비동기 패턴
C#을 이용한 task 병렬화와 비동기 패턴
명신 김
 
Node.js streaming csv downloads proxy
Node.js streaming csv downloads proxyNode.js streaming csv downloads proxy
Node.js streaming csv downloads proxy
Ismael Celis
 

What's hot (20)

Building your first Node app with Connect & Express
Building your first Node app with Connect & ExpressBuilding your first Node app with Connect & Express
Building your first Node app with Connect & Express
 
Node.js
Node.jsNode.js
Node.js
 
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
Using Node.js to  Build Great  Streaming Services - HTML5 Dev ConfUsing Node.js to  Build Great  Streaming Services - HTML5 Dev Conf
Using Node.js to Build Great Streaming Services - HTML5 Dev Conf
 
Node.js Stream API
Node.js Stream APINode.js Stream API
Node.js Stream API
 
Practical ngx_mruby
Practical ngx_mrubyPractical ngx_mruby
Practical ngx_mruby
 
node.js dao
node.js daonode.js dao
node.js dao
 
Node.js for enterprise - JS Conference
Node.js for enterprise - JS ConferenceNode.js for enterprise - JS Conference
Node.js for enterprise - JS Conference
 
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
Артем Сыльчук - Хранение полей в Drupal. От CCK к FieldableEntityStorageContr...
 
FwDays 2021: Metarhia Technology Stack for Node.js
FwDays 2021: Metarhia Technology Stack for Node.jsFwDays 2021: Metarhia Technology Stack for Node.js
FwDays 2021: Metarhia Technology Stack for Node.js
 
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect ToolboxWebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
WebCamp 2016: PHP.Алексей Петров.PHP at Scale: System Architect Toolbox
 
Intro2 Cuda Moayad
Intro2 Cuda MoayadIntro2 Cuda Moayad
Intro2 Cuda Moayad
 
Streams in node js
Streams in node jsStreams in node js
Streams in node js
 
Express node js
Express node jsExpress node js
Express node js
 
Metarhia: Node.js Macht Frei
Metarhia: Node.js Macht FreiMetarhia: Node.js Macht Frei
Metarhia: Node.js Macht Frei
 
Node36
Node36Node36
Node36
 
Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming  Node.js and How JavaScript is Changing Server Programming
Node.js and How JavaScript is Changing Server Programming
 
Automatically Fusing Functions on CuPy
Automatically Fusing Functions on CuPyAutomatically Fusing Functions on CuPy
Automatically Fusing Functions on CuPy
 
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
Asynchronous IO in Rust - Enrico Risa - Codemotion Rome 2017
 
C#을 이용한 task 병렬화와 비동기 패턴
C#을 이용한 task 병렬화와 비동기 패턴C#을 이용한 task 병렬화와 비동기 패턴
C#을 이용한 task 병렬화와 비동기 패턴
 
Node.js streaming csv downloads proxy
Node.js streaming csv downloads proxyNode.js streaming csv downloads proxy
Node.js streaming csv downloads proxy
 

Similar to Microsoft HPC - Kivanc Ozuolmez - Public Content

Intelligent Monitoring
Intelligent MonitoringIntelligent Monitoring
Intelligent Monitoring
Intelie
 
Dragoncraft Architectural Overview
Dragoncraft Architectural OverviewDragoncraft Architectural Overview
Dragoncraft Architectural Overview
jessesanford
 
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
Cloud Native Day Tel Aviv
 
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Nati Shalom
 
Measurement .Net Performance with BenchmarkDotNet
Measurement .Net Performance with BenchmarkDotNetMeasurement .Net Performance with BenchmarkDotNet
Measurement .Net Performance with BenchmarkDotNet
Vasyl Senko
 
Migration To Multi Core - Parallel Programming Models
Migration To Multi Core - Parallel Programming ModelsMigration To Multi Core - Parallel Programming Models
Migration To Multi Core - Parallel Programming Models
Zvi Avraham
 
Orchestration tool roundup - OpenStack Israel summit - kubernetes vs. docker...
Orchestration tool roundup  - OpenStack Israel summit - kubernetes vs. docker...Orchestration tool roundup  - OpenStack Israel summit - kubernetes vs. docker...
Orchestration tool roundup - OpenStack Israel summit - kubernetes vs. docker...
Uri Cohen
 
Building Continuous Application with Structured Streaming and Real-Time Data ...
Building Continuous Application with Structured Streaming and Real-Time Data ...Building Continuous Application with Structured Streaming and Real-Time Data ...
Building Continuous Application with Structured Streaming and Real-Time Data ...
Databricks
 
Acme Packet Provisioning Framework
Acme Packet Provisioning FrameworkAcme Packet Provisioning Framework
Acme Packet Provisioning Framework
Mislav Petričević
 
Overview Of Parallel Development - Ericnel
Overview Of Parallel Development -  EricnelOverview Of Parallel Development -  Ericnel
Overview Of Parallel Development - Ericnel
ukdpe
 
Streaming 101: Hello World
Streaming 101:  Hello WorldStreaming 101:  Hello World
Streaming 101: Hello World
Josh Fischer
 
Best Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing ClustersBest Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing Clusters
Intel® Software
 
Introduction to LAVA Workload Scheduler
Introduction to LAVA Workload SchedulerIntroduction to LAVA Workload Scheduler
Introduction to LAVA Workload Scheduler
Nopparat Nopkuat
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 IJCER (www.ijceronline.com) International Journal of computational Engineeri... IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
ijceronline
 
Monitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheusMonitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheus
Chandresh Pancholi
 
Monitoring on Kubernetes using Prometheus - Chandresh
Monitoring on Kubernetes using Prometheus - Chandresh Monitoring on Kubernetes using Prometheus - Chandresh
Monitoring on Kubernetes using Prometheus - Chandresh
CodeOps Technologies LLP
 
Parallel and Distributed Computing Chapter 8
Parallel and Distributed Computing Chapter 8Parallel and Distributed Computing Chapter 8
Parallel and Distributed Computing Chapter 8
AbdullahMunir32
 
NodeJS for Beginner
NodeJS for BeginnerNodeJS for Beginner
NodeJS for Beginner
Apaichon Punopas
 
Percona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL AdministrationPercona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL Administration
Mydbops
 
Writing robust Node.js applications
Writing robust Node.js applicationsWriting robust Node.js applications
Writing robust Node.js applications
Tom Croucher
 

Similar to Microsoft HPC - Kivanc Ozuolmez - Public Content (20)

Intelligent Monitoring
Intelligent MonitoringIntelligent Monitoring
Intelligent Monitoring
 
Dragoncraft Architectural Overview
Dragoncraft Architectural OverviewDragoncraft Architectural Overview
Dragoncraft Architectural Overview
 
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
Uri Cohen & Dan Kilman, GigaSpaces - Orchestration Tool Roundup - OpenStack l...
 
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...Orchestration tool roundup   kubernetes vs. docker vs. heat vs. terra form vs...
Orchestration tool roundup kubernetes vs. docker vs. heat vs. terra form vs...
 
Measurement .Net Performance with BenchmarkDotNet
Measurement .Net Performance with BenchmarkDotNetMeasurement .Net Performance with BenchmarkDotNet
Measurement .Net Performance with BenchmarkDotNet
 
Migration To Multi Core - Parallel Programming Models
Migration To Multi Core - Parallel Programming ModelsMigration To Multi Core - Parallel Programming Models
Migration To Multi Core - Parallel Programming Models
 
Orchestration tool roundup - OpenStack Israel summit - kubernetes vs. docker...
Orchestration tool roundup  - OpenStack Israel summit - kubernetes vs. docker...Orchestration tool roundup  - OpenStack Israel summit - kubernetes vs. docker...
Orchestration tool roundup - OpenStack Israel summit - kubernetes vs. docker...
 
Building Continuous Application with Structured Streaming and Real-Time Data ...
Building Continuous Application with Structured Streaming and Real-Time Data ...Building Continuous Application with Structured Streaming and Real-Time Data ...
Building Continuous Application with Structured Streaming and Real-Time Data ...
 
Acme Packet Provisioning Framework
Acme Packet Provisioning FrameworkAcme Packet Provisioning Framework
Acme Packet Provisioning Framework
 
Overview Of Parallel Development - Ericnel
Overview Of Parallel Development -  EricnelOverview Of Parallel Development -  Ericnel
Overview Of Parallel Development - Ericnel
 
Streaming 101: Hello World
Streaming 101:  Hello WorldStreaming 101:  Hello World
Streaming 101: Hello World
 
Best Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing ClustersBest Practices and Performance Studies for High-Performance Computing Clusters
Best Practices and Performance Studies for High-Performance Computing Clusters
 
Introduction to LAVA Workload Scheduler
Introduction to LAVA Workload SchedulerIntroduction to LAVA Workload Scheduler
Introduction to LAVA Workload Scheduler
 
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 IJCER (www.ijceronline.com) International Journal of computational Engineeri... IJCER (www.ijceronline.com) International Journal of computational Engineeri...
IJCER (www.ijceronline.com) International Journal of computational Engineeri...
 
Monitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheusMonitoring on Kubernetes using prometheus
Monitoring on Kubernetes using prometheus
 
Monitoring on Kubernetes using Prometheus - Chandresh
Monitoring on Kubernetes using Prometheus - Chandresh Monitoring on Kubernetes using Prometheus - Chandresh
Monitoring on Kubernetes using Prometheus - Chandresh
 
Parallel and Distributed Computing Chapter 8
Parallel and Distributed Computing Chapter 8Parallel and Distributed Computing Chapter 8
Parallel and Distributed Computing Chapter 8
 
NodeJS for Beginner
NodeJS for BeginnerNodeJS for Beginner
NodeJS for Beginner
 
Percona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL AdministrationPercona Toolkit for Effective MySQL Administration
Percona Toolkit for Effective MySQL Administration
 
Writing robust Node.js applications
Writing robust Node.js applicationsWriting robust Node.js applications
Writing robust Node.js applications
 

More from Kivanc Ozuolmez

Final assignment v07
Final assignment v07Final assignment v07
Final assignment v07
Kivanc Ozuolmez
 
Scientific discovery vs customer need
Scientific discovery vs customer needScientific discovery vs customer need
Scientific discovery vs customer need
Kivanc Ozuolmez
 
Shoprite Holdings Ltd, South Africa
Shoprite Holdings Ltd, South AfricaShoprite Holdings Ltd, South Africa
Shoprite Holdings Ltd, South Africa
Kivanc Ozuolmez
 
Palliser Furniture
Palliser FurniturePalliser Furniture
Palliser Furniture
Kivanc Ozuolmez
 
Mahindra & Mahindra in South Africa
Mahindra & Mahindra in South AfricaMahindra & Mahindra in South Africa
Mahindra & Mahindra in South Africa
Kivanc Ozuolmez
 
Embraer vs Bombardier
Embraer vs BombardierEmbraer vs Bombardier
Embraer vs Bombardier
Kivanc Ozuolmez
 
Barilla
BarillaBarilla
Schiphol marketting strategies
Schiphol marketting strategiesSchiphol marketting strategies
Schiphol marketting strategies
Kivanc Ozuolmez
 
Bayonne packaging case report
Bayonne packaging case reportBayonne packaging case report
Bayonne packaging case report
Kivanc Ozuolmez
 
Snapple utrecht v03
Snapple utrecht v03Snapple utrecht v03
Snapple utrecht v03
Kivanc Ozuolmez
 
Vodafone Mannesmann Case
Vodafone Mannesmann CaseVodafone Mannesmann Case
Vodafone Mannesmann Case
Kivanc Ozuolmez
 
Netscape IPO - Harvard Business Case
Netscape IPO - Harvard Business CaseNetscape IPO - Harvard Business Case
Netscape IPO - Harvard Business Case
Kivanc Ozuolmez
 
Strategy and non-technological innovation
Strategy and non-technological innovationStrategy and non-technological innovation
Strategy and non-technological innovation
Kivanc Ozuolmez
 
Strategy and Technological Innovation
Strategy and Technological InnovationStrategy and Technological Innovation
Strategy and Technological Innovation
Kivanc Ozuolmez
 
Entrepreneurial Views of Competitive Strategy
Entrepreneurial Views of Competitive StrategyEntrepreneurial Views of Competitive Strategy
Entrepreneurial Views of Competitive Strategy
Kivanc Ozuolmez
 
Resource-based Views of Competitive Strategy
Resource-based Views of Competitive StrategyResource-based Views of Competitive Strategy
Resource-based Views of Competitive Strategy
Kivanc Ozuolmez
 
Positioning Views of Competitive Strategy
Positioning Views of Competitive StrategyPositioning Views of Competitive Strategy
Positioning Views of Competitive Strategy
Kivanc Ozuolmez
 
Midland Energy Resources, Inc. Cost of Capital
Midland Energy Resources, Inc. Cost of CapitalMidland Energy Resources, Inc. Cost of Capital
Midland Energy Resources, Inc. Cost of Capital
Kivanc Ozuolmez
 
Harvard Business Case - Super Project
Harvard Business Case - Super ProjectHarvard Business Case - Super Project
Harvard Business Case - Super Project
Kivanc Ozuolmez
 
Ilk yardim
Ilk yardimIlk yardim
Ilk yardim
Kivanc Ozuolmez
 

More from Kivanc Ozuolmez (20)

Final assignment v07
Final assignment v07Final assignment v07
Final assignment v07
 
Scientific discovery vs customer need
Scientific discovery vs customer needScientific discovery vs customer need
Scientific discovery vs customer need
 
Shoprite Holdings Ltd, South Africa
Shoprite Holdings Ltd, South AfricaShoprite Holdings Ltd, South Africa
Shoprite Holdings Ltd, South Africa
 
Palliser Furniture
Palliser FurniturePalliser Furniture
Palliser Furniture
 
Mahindra & Mahindra in South Africa
Mahindra & Mahindra in South AfricaMahindra & Mahindra in South Africa
Mahindra & Mahindra in South Africa
 
Embraer vs Bombardier
Embraer vs BombardierEmbraer vs Bombardier
Embraer vs Bombardier
 
Barilla
BarillaBarilla
Barilla
 
Schiphol marketting strategies
Schiphol marketting strategiesSchiphol marketting strategies
Schiphol marketting strategies
 
Bayonne packaging case report
Bayonne packaging case reportBayonne packaging case report
Bayonne packaging case report
 
Snapple utrecht v03
Snapple utrecht v03Snapple utrecht v03
Snapple utrecht v03
 
Vodafone Mannesmann Case
Vodafone Mannesmann CaseVodafone Mannesmann Case
Vodafone Mannesmann Case
 
Netscape IPO - Harvard Business Case
Netscape IPO - Harvard Business CaseNetscape IPO - Harvard Business Case
Netscape IPO - Harvard Business Case
 
Strategy and non-technological innovation
Strategy and non-technological innovationStrategy and non-technological innovation
Strategy and non-technological innovation
 
Strategy and Technological Innovation
Strategy and Technological InnovationStrategy and Technological Innovation
Strategy and Technological Innovation
 
Entrepreneurial Views of Competitive Strategy
Entrepreneurial Views of Competitive StrategyEntrepreneurial Views of Competitive Strategy
Entrepreneurial Views of Competitive Strategy
 
Resource-based Views of Competitive Strategy
Resource-based Views of Competitive StrategyResource-based Views of Competitive Strategy
Resource-based Views of Competitive Strategy
 
Positioning Views of Competitive Strategy
Positioning Views of Competitive StrategyPositioning Views of Competitive Strategy
Positioning Views of Competitive Strategy
 
Midland Energy Resources, Inc. Cost of Capital
Midland Energy Resources, Inc. Cost of CapitalMidland Energy Resources, Inc. Cost of Capital
Midland Energy Resources, Inc. Cost of Capital
 
Harvard Business Case - Super Project
Harvard Business Case - Super ProjectHarvard Business Case - Super Project
Harvard Business Case - Super Project
 
Ilk yardim
Ilk yardimIlk yardim
Ilk yardim
 

Recently uploaded

Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 

Recently uploaded (20)

Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 

Microsoft HPC - Kivanc Ozuolmez - Public Content

Editor's Notes

  1. To start with, I would like everyone to recall parallel programming concepts. Maybe some of you worked with .NET Framework – Parallel extensions, or did some hardcore multi threading. Or maybe for some of us it was only a practice in the university assignments. But let’s take a look. First of all, by the term parallel programming here, I am focusing on both multi-threaded and multi process applications.
  2. So if we look at a very simple PC, doesn’t matter if it’s single core or multicore, with the tools and frameworks, we can easily develop applications running parallel. Those can be multithreaded, multi core supported, etc.. Microsoft, with Parallel extensions, or even with the simple threading functionality/namespaces in framework itself provide us enough tools to achieve whatever we need to do on a single station.
  3. But if we start talking about more distributed applications, where run on multiple nodes in parallel, maybe exchanging messages in between, across their memory boundaries, through network, etc.. Then we have much more complicated structure than parallel framework or multithreading supports. For sure, throughout the history of operating systems and frameworks, countless of mechanisms were developed to support message passing interfaces and interprocess communications. But the problem with a cluster is not only processes talking to each other, maybe a more important problem is utilization of the cluster. Therefore many questions rise up; like; - What is the current cluster load? - What is the load per node? Which node is idle, which node overloaded? - Do processes (tasks / jobs) have enough resources to run? - and not only runtime questions, but how easy is the management of the cluster? Adding/removing nodes, upgrading them? Etc?
  4. Keep these questions in mind, and add a requirement as “capacity on demand” a cluster which grows or shrinks by according to the demand. So all the questions got higher importance.
  5. To address these questions for the applications running parallel on clusters, Microsoft has developed HPC Server, and with the all tools, sdks around, HPC Suite.
  6. Let’s see a cluster topology to better understand the HPC Cluster structure.
  7. As in every client – server drawing, let’s start with a client. So that we can fill this blank slide.
  8. The entry point for a cluster is the Head Node. Head Node is basically responsible of being an entry point, and load distribution between the broker nodes.What I mean with that, the client comes here, says head node “hey, I want to submit a job”And head node replies “Ok, submit your job to this Broker node”.
  9. Talking about broker nodes, let’s add them to the drawing as well. Simply, a broker node is responsible of overall monitoring of the cluster’s compute nodes. As they are also responsible of passing client requests to the compute nodes (and wait and communicate the answer back to the client) the traffic on a broker node can be busy. Therefore, HPC supports multiple Broker Nodes, but in small clusters, one broker node is generally enough. So let’s continue our theatre between Client and Cluster. The last thing was; head node said “submit your job to this Broker node” let’s say the one on the left. So Client this time comes to the broker node on the left, and says “hey, I want to submit a job, with these details”Broker node checks the job details and selects a proper compute node, where enough resources available. Allocates the resources on the node, and passes job definition to this particular compute node / nodes.
  10. Let’s add the compute nodes to the image as well. So, the compute node does the calculation and returns the results back to broker node. And broker node passes the result to the client. Forsure, there are many queue mechanisms, etc. are working on the background if requested resources are not available, etc. but this is the basic scenario.What is the form of job request, reply etc.. We’ll discuss them soon.
  11. This drawing shows that the compute nodes are on premise. But the beauty of HPC, it supports multiple compute node types. For example, rather than hosting a cluster on premise, I can place my compute nodes on to …..
  12. Azure..!HPC comes with built in functionalities that can create and manage compute nodes on Azure as if they are on premise. Nice thing is, HPC also supports sizing on the Azure compute nodes based on demand (schedules)So, HPC supports one more type of compute nodes.. What can it be? Any idea?
  13. We all have laptops in Avanade, but generally our clients have a large farm of desktops. And whenever the user is not working on his/her workstation, the cpu power of this workstation is just wasted. To utilize these idle workstations, HPC can use them as its compute nodes, too. So you can create a nice computing grid, just by investing nothing.!So these are mainly the topologies supported by HPC. Let’s see a little about management tools.
  14. HPC comes with a nice set of tools, all managed via HPC Management Console where it supports functionalities on Cluster DeploymentCluster ManagementJob SchedulingHealth, Performance, diagnostics monitoring.
  15. What we see here is the node management tab on one of the clusters we work on and if we look at the left hand side, you can see the nodes by their health status, their groups, by template (role) etc. At the middle, you see the list of the nodes, where filtered by your selection on the left menu.
  16. We can also see the current heat map of the cluster. The boxes represent the nodes on the cluster, and the numbers in the boxes represent the current CPU usage. Obviously, the cluster is not loaded currently.There are times, where CPUs go full throttle and this map turns into dark red.!
  17. We can also monitor the job queue. As you see here, there is a job at the top, with configuring state.. Which means it’s either waiting for resource or the resource is being allocated.There are 8 – 10 jobs running currentlyAnd then all the way down, completed jobs with Finished status.We can also see the requested resources on the right hand side. I think it is a good time to talk a little about resource allocation, too. HPC supports 3 types of resource allocation. You can allocate entire compute node, why do I do that? Maybe the application require all the resources (cores, memory on the compute node), or maybe you can only run one instance of this model type on a node. You can allocate one single core, why to do that? Single threaded process…You can allocate a socket, a physical socket that the CPU chip is plugged in.. So multi threaded applications work in a single chip, but on multicores
  18. Let’s talk a little on the applications running on HPC. Basically HPC is able to run message passing interface applications – where it means, processes communicate with each other across the cluster. On the other hand, according to MS researches, one of the direct gain on the existing products would be on Excel, just by enabling of the parallel computing on a remote machine. So Excel 2010, with HPC Client installed, comes with a direct support of executing computations not in the excel engine on the workstation but on the HPC cluster.Another type of the applications are, simple executables (dlls, exe, xlsx or whatever the model type is) where you provide input parameters and after the execution, you collect the output parameters. No interaction between running instances.
  19. Finally, let’s say couple of words for clients, To submit jobs, we need clients, forsure. These clients basically can be; HPC client console – but this is really a console that no one likes usingAs we discussed already, Excel is an important client for HPCBut in general, API Calls via HPC SDK are the main tools we use.