Data Parallel Application Development and Performance with Windows Azure Advisor : Professor Gagan Agrawal Present by : Yu Zhang.

Slides:



Advertisements
Similar presentations
System Center 2012 R2 Overview
Advertisements

Remote Procedure Call (RPC)
Page 1 Ricardo Villalobos Windows Azure Architect Evangelist Microsoft Corporation Designing, Building, and Deploying Windows Azure applications.
Introducing Windows Azure
Emmanuel Mesas Microsoft Western Europe Leverage Azure Services & Platform with Existing Application.
MCITP Guide to Microsoft Windows Server 2008 Server Administration (Exam #70-646) Chapter 12 Application and Data Provisioning.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Reference: Message Passing Fundamentals.
Azure Services Platform Piotr Zierhoffer. Agenda Cloud? What is Azure? Environment Basic glossary Architecture Element description Deployment.
Overview Of Microsoft New Technology ENTER. Processing....
2009 Software as a service Platform as a service Infrastructure as a service Service platform Cloud platform Cloud computing Grid computing Private.
Lesson 20 – OTHER WINDOWS 2000 SERVER SERVICES. DHCP server DNS RAS and RRAS Internet Information Server Cluster services Windows terminal services OVERVIEW.
Chapter 4.1 Interprocess Communication And Coordination By Shruti Poundarik.
Lecture 2 – MapReduce CPE 458 – Parallel Programming, Spring 2009 Except as otherwise noted, the content of this presentation is licensed under the Creative.
Virtual Network Servers. What is a Server? 1. A software application that provides a specific one or more services to other computers  Example: Apache.
COS302. = Managed for YouStandalone Servers IaaSPaaSSaaS Applications Runtimes Database Operating System Virtualization Server Storage Networking.
Getting Started with WCF Windows Communication Foundation 4.0 Development Chapter 1.
Cloud Computing Systems Lin Gu Hong Kong University of Science and Technology Sept. 21, 2011 Windows Azure—Overview.
Name Title Microsoft Windows Azure: Migrating Web Applications.
Microsoft ® Application Virtualization 4.6 Infrastructure Planning and Design Published: September 2008 Updated: February 2010.
Worker Role Web Role Web Role VM Role Control Abstraction (i.e. Less IT & Less Plumbing Code) Admin Web / Worker Role VM Role Web / Worker Role.
Cloud Computing Why is it called the cloud?.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Windows Azure Role Cloud Computing Soup to Nuts Mike Benkovich Microsoft Corporation btlod-71.
Components of Windows Azure - more detail. Windows Azure Components Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET,
Migrating Business Apps to Windows Azure Marc Müller Principal Consultant, 4tecture GmbH
Module 1: Server Roles and Initial Configuration Tasks
Getting Started with Windows Azure Name Title Microsoft Corporation.
Austin code camp 2010 asp.net apps with azure table storage PRESENTED BY CHANDER SHEKHAR DHALL
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Mostafa Abdollahi Mazandaran University Of Science And Technology January 2011.
Microsoft Visual Studio 2010 Muhammad Zubair MS (FAST-NU) Experience: 5+ Years Contact:- Cell#:
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
From Virtualization Management to Private Cloud with SCVMM 2012 Dan Stolts Sr. IT Pro Evangelist Microsoft Corporation
Operating System for the Cloud Runs applications in the cloud Provides Storage Application Management Windows Azure ideal for applications needing:
Evaluation of Agent Teamwork High Performance Distributed Computing Middleware. Solomon Lane Agent Teamwork Research Assistant October 2006 – March 2007.
Azure Services Platform Update James Conard Sr. Director Developer & Platform Evangelism Microsoft Corporation.
Mahesh Krishnan, Senior Consultant, Readify Slide 1.
Visual Studio Windows Azure Portal Rest APIs / PS Cmdlets US-North Central Region FC TOR PDU Servers TOR PDU Servers TOR PDU Servers TOR PDU.
Seminar Microsoft Next Generation Windows Services: By Microsoft. Guide Presented By Mr. Sandeep Gaikwad
Windows Azure. Azure Application platform for the public cloud. Windows Azure is an operating system You can: – build a web application that runs.
Zvezdan Pavković. Storage Non-Persistent Storage Persistent Storage Easily add additional storage. Networking Internal and Input Endpoints configured.
Cloud Computing is a Nebulous Subject Or how I learned to love VDF on Amazon.
Agenda What Is the Windows Communication Foundation? How Does It Work? How Do I Use and Deploy It? Bindings Addresses Contracts How to host WCF services.
Windows Azure Cloud Services Anton Boyko.NET developer.
AMQP, Message Broker Babu Ram Dawadi. overview Why MOM architecture? Messaging broker like RabbitMQ in brief RabbitMQ AMQP – What is it ?
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Windows Azure Custom Software Development Mobile Middleware Windows Azure Compute Dipl.-Ing. Damir Dobric Lead Architect daenet
Azure in a Day Training: Windows Azure Module 1: Windows Azure Overview Module 2: Development Environment / Portal – DEMO: Signing up for Windows Azure.
Windows Azure poDRw_Xi3Aw.
Dhananjay Kumar MVP-Connected System 1. WCF  Agenda What is WCF ? Why WCF? Address, Binding, Contract End Points Hosting Message Patterns Programming.
Microsoft Cloud Computing. Topics to be covered 1.Environmental Features of windows azure 2.What is Cloud Computing 3.Roles in Cloud Computing 4.Benefits.
Building Cloud Solutions Presenter Name Position or role Microsoft Azure.
(re)-Architecting cloud applications on the windows Azure platform CLAEYS Kurt Technology Solution Professional Microsoft EMEA.
1 Cloud Computing, CS An OS for Multicore and Cloud + Microsoft Azure Platform.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Deploying Web Application
Building Applications with Windows Azure and SQL Azure
Hello Farmington! 4:30-5:30, then dinner.
Unit 27: Network Operating Systems
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Обзор Windows Azure Connect
Outline Virtualization Cloud Computing Microsoft Azure Platform
Windows Azure Cloud.
Saranya Sriram Developer Evangelist | Microsoft
Developing for Windows Azure
02 – Cloud Services Bret Stateham | Senior Technical Evangelist​
Microsoft Azure Services Platform
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Data Parallel Application Development and Performance with Windows Azure Advisor : Professor Gagan Agrawal Present by : Yu Zhang

Agenda

Motivation

Goals

The same facilities that a desktop OS provides, but on a set of connected servers: Abstract execution environment Shared file system Resource allocation Programming environments Utility computing 24/7 operation Pay for what you use Simpler, transparent administration

Windows Azure PaaS ApplicationsWindows Azure Service Model Runtimes.NET 3.5/4, ASP.NET, PHP Operating SystemWindows Server 2008/R2-Compatible OS VirtualizationWindows Azure Hypervisor ServerMicrosoft Blades DatabaseSQL Azure StorageWindows Azure Storage (Blob, Queue, Table) NetworkingWindows Azure-Configured Networking

A Windows Azure application is called a “service”  Definition information  Configuration information  At least one “role” Service definition is in ServiceDefinition.csde Defines aspects of a service that cannot be changed without redeployment  Types of roles and static role configuration  Set of configuration settings for a role  Contract with the environment code runs

Service configuration is in ServiceConfiguration.cscfg Defines values for properties that can be dynamically updated for a running deployment  Values of a configuration parameter  Number of running instances

Definition: Role name Role type VM size (e.g. small, medium, etc.) Network endpoints Code: Web/Worker Role: Hosted DLL and other executables VM Role: VHD Configuration: Number of instances Number of update and fault domains

Desktop And Related Azure Concepts

Storage Services Public Internet Web Role Load Balancer

Storage Service Worker Role Web Role

Windows Azure Storage Abstractions

C1C1 C1C1 C2C2 C2C Producers Consumers P2P2 P2P2 P1P1 P1P Queue Usage Example

Communicating sequential processes  Each process runs in its own local address space.  Processes exchange data and synchronize via message passing. ( Usually, but not always, same code executed by all processes.)  Need to take care of locality, in order to achieve performance – message passing does this explicitly.

Azure Parallel Programming Model VMS LB IIS VMS Web Role Worker Role Queue or WCF

MPI_Reduce(inbuf, outbuf, count, type, op, root, comm) Inbuf : address of input buffer Outbuf: address of output buffer Count : number of elements in input buffer Type : datatype of input buffer elements Op : operation Root : process id of root process public class WorkerRole : RoleEntryPoint { Public override void Run() { doWork(); var msg = new CloudQueueMessage(); queue.AddMessage(msg); }

MPI_Allreduce(inbuf, outbuf, count, type, op, comm) Inbuf : address of input buffer Outbuf: address of output buffer Count : number of elements in input buffer Type : datatype of input buffer elements Op : operation public class WorkerRole : RoleEntryPoint { Public override void Run() { if (queue.Exists()) { var msg = queue.GetMessage(); if (msg != null) { DoWork(); queue1.DeleteMessage(msg); } doWork(); var msg = new CloudQueueMessage(); queue.AddMessage(msg); }

 Each worker role reads the data from matrix B  Decouple the matrix A into n parts, n is the number of the worker roles.  Each worker role gets one part of matrix A, for a N×N matrix, each worker role has two data sets, one is matrix B, the other is part of matrix A, say A K (1≤k≤n) n is the number of worker roles.  Each worker role computes the A K ×B and add the result to its queue  Web role performs the reduce operation gets the final result.

1. Web role calculates the initial means 2.Broadcast the k centroids to all worker roles 3. Each worker role computes distance of each local document vector to the centroids 4. Assign points to closest centroid and compute local MSE (Mean Squared Error) 5. Perform reduction for global centroids and global MSE value 6. Web role broadcast new cnetroids to all worker role until no points move.

1. Web role be the master, the other N worker roles are slaves. 2.Master divides the training samples to N subsets, and distributes 1 subset for each worker role. 3.Each individual worker role now computes the distance measures independently and storing the computes measures in a local array 4.When each worker role terminates distance calculation, it transmits a message to the web role indicating end of processing 5.Web role then notes the end of processing for the sender and acquires the computes measures by reduction. 6.After the web role has claimed all distance measures from all WRs, the following steps are performed: Select top k measures Sort all distance measures in ascending order Count the number of classes in the top k measures The input element’s class will belong to the class having the higher count among top k measures

What is Windows Communication Foundation (WCF)?  WCF is Microsoft’s implementation of industry standards to provide a communication subsystem enabling applications on one machine (process boundary) or across multiple machines to communicate.  WCF is a core component of the.NET Framework 3.0 and later versions which is included with Windows 7 and Vista platforms as well as the future version of Windows Server.  The WCF API unifies ASMX Web Services,.NET Remoting, distributed transactions and messaging into a single programming model service orientation tenable.  Fundamental to.NET Framework. ASMXWSE.NET Remoting COM+ (Enterpris e Services) MSMQ WCF

WCF: Address, Binding, Contract ClientService Message AddressBindingContract Where?How?What? Endpoint ABCABC Endpoints ABC WCF Services are deployed, discovered and consumed as endpoints

WCF : Endpoint

WCF in Azure maxBufferSize=" " maxReceivedMessageSize =" " maxBufferSize=" " maxReceivedMessageSize =" "

PolymorphismEncapsulationSubclassing 1980s Interface-based Dynamic Loading Runtime Metadata 1990s Object-Oriented Service-Oriented Component-Based Message-basedSchema+Contract Binding via Policy 2000s C&C++ with MPI Queue with Azure WCF with Azure

Experimental Evaluation MPIQueueWCF 8 Processors0.0993sec sec sec 4 Processors0.1656sec sec 6.349sec 2 processors0.4723sec sec sec MPIQueueWCF 8 Processors Processors processors MPIQueueWCF 8 Processors sec sec sec 4 Processors sec sec sec 2 processors sec sec sec Time (sec ) Time (sec ) Time (sec ) Time (sec ) Time (sec ) Time (sec ) Matrix Multiplication Kmeans KNN Fastest Read: 31ms Slowest Read: 203ms Fastest Write: 31ms Slowest Write: 234ms Fastest Delete: 0ms Slowest Delete: 593ms simply a reliable method of delivering messages between processes Fastest Read: 31ms Slowest Read: 203ms Fastest Write: 31ms Slowest Write: 234ms Fastest Delete: 0ms Slowest Delete: 593ms simply a reliable method of delivering messages between processes QUEUE Performance

Azure VS Traditional Cluster CPU Ram Bandwidth Glenn 2.7Ghz 8 G20 Gbps Azure 1.6Ghz 2 G10 Gbps

Conclusion