Multicore Processing: Virtualization and Data Center



Similar documents
etpu Host Interface by:

Local Interconnect Network (LIN) Physical Interface

White Paper. Freescale s Embedded Hypervisor for QorIQ P4 Series Communications Platform

Understanding LCD Memory and Bus Bandwidth Requirements ColdFire, LCD, and Crossbar Switch

Improving Embedded Software Test Effectiveness in Automotive Applications

Initializing the TSEC Controller

Programming Audio Applications in the i.mx21 MC9328MX21

How To Improve Performance On A P4080 Processor

Hardware Configurations for the i.mx Family USB Modules

Windows 7: Using USB TAP on a Classic CodeWarrior Installation (MGT V9.2 DSC V8.3)

Performance Monitor on PowerQUICC II Pro Processors

Handling Freescale Pressure Sensors

PowerQUICC II Pro (MPC83xx) PCI Agent Initialization

Connecting Low-Cost External Electrodes to MED-EKG

Techniques and Tools for Software Analysis

How To Build A Project On An Eclipse Powerbook For Anarc (Powerbook) On An Ipa (Powerpoint) On A Microcontroller (Powerboard) On Microcontrollers (Powerstation) On Your Microcontroller 2 (Powerclock

Data Movement Between Big-Endian and Little-Endian Devices

User Interface Design using CGI Programming and Boa Web Server on M5249C3 Board

IRTC Compensation and 1 Hz Clock Generation

Connecting to an SMTP Server Using the Freescale NanoSSL Client

Blood Pressure Monitor Using Flexis QE128 Gabriel Sanchez RTAC Americas

Software Marketing, Embedded Real-Time Solutions

Installation of the MMA955xL CodeWarrior Service Pack Author: Fengyi Li Application Engineer

Detecting a CPM Overload on the PowerQUICC II

PQ-MDS-T1 Module. HW Getting Started Guide. Contents. About This Document. Required Reading. Definitions, Acronyms, and Abbreviations

Point-of-Sale (POS) Users Guide Lech José Olmedo Guerrero Jaime Herrerro Gallardo RTAC Americas

MPC8245/MPC8241 Memory Clock Design Guidelines: Part 1

Software Real Time Clock Implementation on MC9S08LG32

Flexible Active Shutter Control Interface using the MC1323x

How to Convert 3-Axis Directions and Swap X-Y Axis of Accelerometer Data within Android Driver by: Gang Chen Field Applications Engineer

Using the Performance Monitor Unit on the e200z760n3 Power Architecture Core

Using WinUSB in a Visual Studio Project with Freescale USB device controller

MLPPP in the Evolving Radio Access Network

Cyclic Redundant Checker Calculation on Power Architecture Technology and Comparison of Big-Endian Versus Little-Endian

How To Control A Motor Control On An Hvac Platform

3-Phase BLDC Motor Control with Hall Sensors Using 56800/E Digital Signal Controllers

Freescale Embedded GUI Converter Utility 2.0 Quick User Guide

MC13783 Buck and Boost Inductor Sizing

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX4080D.

Green Embedded Computing and the MPC8536E PowerQUICC III Processor

Generate Makefiles from Command Line Support in Eclipse-Based CodeWarrior Software

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

MCF54418 NAND Flash Controller

Freescale Semiconductor. Integrated Silicon Pressure Sensor. On-Chip Signal Conditioned, Temperature Compensated and Calibrated MPX5500.

Understanding Pressure and Pressure Measurement

VGA Output using TV-Out Extension Solution i.mx21

Using Program Memory As Data Memory. 1. Introduction Program Memory and Data. Contents. Memory. Freescale Semiconductor Application Note

I/O Virtualization Using Mellanox InfiniBand And Channel I/O Virtualization (CIOV) Technology

Genesi Pegasos II Setup

Enhanced Serial Interface Mapping

Installing Service Pack Updater Archive for CodeWarrior Tools (Windows and Linux) Quick Start

Smarter Infrastructure for a Smarter World

How To Fit A 2Mm Exposed Pad To A Dfn Package

Designing Firewall/VPN with the PowerQUICC III MPC8572E

Real Time Development of MC Applications using the PC Master Software Visualization Tool. 1. Introduction. 2. Development of Motor Control.

i.mx Applications Processors with Hantro's Multimedia Framework

Optimize Server Virtualization with QLogic s 10GbE Secure SR-IOV

ColdFire Security SEC and Hardware Encryption Acceleration Overview

Using the High Input Voltage Charger for Single Cell Li-Ion Batteries (KIT34671EPEVBE)

3-Phase BLDC Motor Control with Hall Sensors Using the MC56F8013

Developing an Application for the i.mx Devices on the Linux Platform

Using XGATE to Implement LIN Communication on HCS12X Daniel Malik 8/16-Bit Products Division East Kilbride, Scotland

How To Develop A Multi Core Platform For Networking And Communications

USB HID bootloader for the MC9S08JM60

Intel Data Direct I/O Technology (Intel DDIO): A Primer >

Using eflexpwm Module for ADC Synchronization in MC56F82xx and MC56F84xx Family of Digital Signal Controllers

MSC8156 and MSC8157 PCI Express Performance

Intel Ethernet and Configuring Single Root I/O Virtualization (SR-IOV) on Microsoft* Windows* Server 2012 Hyper-V. Technical Brief v1.

Broadcom Ethernet Network Controller Enhanced Virtualization Functionality

OPTIMIZING SERVER VIRTUALIZATION

Solving I/O Bottlenecks to Enable Superior Cloud Efficiency

Machine-to-Machine (M2M) Gateway: Trusted and Connected Intelligence

CodeWarrior Development Studio Floating Licensing Quick Start

Intel Ethernet Switch Load Balancing System Design Using Advanced Features in Intel Ethernet Switch Family

How To Measure Power Of A Permanent Magnet Synchronous Motor

Virtualization. Types of Interfaces

Using the Kinetis Security and Flash Protection Features

Oracle Database Scalability in VMware ESX VMware ESX 3.5

Digital Signage: A Sign of the Times

Solving the Hypervisor Network I/O Bottleneck Solarflare Virtualization Acceleration

Best Practices for Installing and Configuring the Hyper-V Role on the LSI CTS2600 Storage System for Windows 2008

User Guide. Introduction. HCS12PLLCALUG/D Rev. 0, 12/2002. HCS12 PLL Component Calculator

Advanced Core Operating System (ACOS): Experience the Performance

Consolidating Multiple Network Appliances

Processor Expert Software Microcontrollers Driver Suite Getting Started Guide

PROPRIETARY CISCO. Cisco Cloud Essentials for EngineersV1.0. LESSON 1 Cloud Architectures. TOPIC 1 Cisco Data Center Virtualization and Consolidation

Basics in Energy Information (& Communication) Systems Virtualization / Virtual Machines

i.mx28 Ethernet Performance on Linux

Enabling Technologies for Distributed Computing

USB to SPI Device Driver Installation Instructions

A Superior Hardware Platform for Server Virtualization

Efficient Low-Level Software Development for the i.mx Platform

Full and Para Virtualization

Implementing Positioning Algorithms Using Accelerometers

NOT RECOMMENDED FOR NEW DESIGN

Windows Server Virtualization An Overview

QLogic 16Gb Gen 5 Fibre Channel in IBM System x Deployments

How To Connect Virtual Fibre Channel To A Virtual Box On A Hyperv Virtual Machine

ITU-T V.42bis Data Dictionary Search on the StarCore SC140/SC1400 Cores

P1010 and P1014 low-power communications processors

Transcription:

Networking Multicore Processing: ization Data Center Syed Shah, Nikolay Guenov ization Its Impact ization is a combination of software hardware features that creates virtual CPUs (vcpu) or virtual systems-on-chip (vsoc). These vcpus or vsocs are generally referred to as virtual machines (VM). Each VM is an abstraction of the physical SoC, complete with its view of the interfaces, memory other resources within the physical SoC. ization provides the required level of isolation partitioning of resources to enable each VM. Each VM is protected from interference from another VM. The virtualization layer is generally called the virtual machine monitor (VMM). Why ization? ization has already impacted the server IT industries in a significant way. IT organizations are using it to reduce power consumption building space, providing high availability for critical applications streamlining application deployment migration. The trends to adopt virtualization in the server space also are being driven by the desire to support multiple operating systems consolidation of services on a single server by defining multiple VMs. Each VM operates as a stalone device. Because multiple VMs can run on a single server (provided the server has enough processing capacity), IT gains the advantage of reduced server inventory better server utilization. ization helps to: Run multiple operating systems on a single computer, including Windows, Linux more Increase energy efficiency, reduce hardware requirements thereby reduce overall capital expenditure Determine highest availability performance for enterprise applications Use computing resources efficiently ization in Embedded Space Benefits of ization Although they are not mainstream, these IT industry trends are trickling down into the embedded space as well. Observed trends for virtualization in the embedded space include: The concept of having a sea of processors, the associated processing capacity sliced diced among applications processes, is no longer science fiction. The challenges of extracting higher utilization from the processors, consolidation triggered by cost reduction, are driving the adoption of virtualization in embedded systems. With virtualization, one can merge the control data plane processing onto the same SoC. Previous approaches used separate discrete devices for these functions. ization offers three major benefits to the embedded industry: 1. Cost reduction via consolidation 2. Flexibility scalability 3. Reliability protection Figure 1: Benefits of ization Cost Reduction Functional Consolidation Board-Level Consolidation OEM Value Reliability Protection Sboxing Applications Multiple OSs in a Single SoC ization Multicore Processing In-Service Software Upgrades Dynamic Resource Allocation Flexibility Scalability With multicore SoCs, given enough processing capacity virtualization, control plane applications data plane applications can be run without one affecting the other. Data plane control plane applications, in most cases, will be mapped to different cores in the multicore SoC as shown in Figure 2. Control data plane applications are not the only applicationlevel consolidation that will occur. ization partitioning will allow OEMs to enable their customers to customize service offerings by adding their own applications operating systems to the base system on the same SoC, rather than using another discrete processor to hle it. Data or control traffic that is relevant to the customized application operating system (OS) can be directed to the appropriate virtualized core without impacting or compromising the rest of the system. 24

Beyond Bits Power Architecture Edition Figure 2: Control Data Plane Application Control Consolidation Data Plane in Application a ized Multicore SoC Data Plane Processing SoC µp µp Switch Mixed Control Application Consolidation Data Plane Control Plane µp µp µp µp Switch Control Plane Processing SoC µp µp Mixed Control Mixed Control Control Plane Traffic Single Multicore SoC Partitioned ized 1) OS-hosted 2) bare-metal hypervisor. Each approach has its pros cons the choice would depend on the applications the market segments. OS-Hosted Hypervisor The hypervisor schedules the guest operating systems based on the scheduling policies in the hypervisor. Scheduling of the VMM guest operating systems is dependent on the scheduling policies of the host OS, because they run on top of the host OS. Figure 3: OS-hosted OS-Hosted Hypervisor Hypervisor Another example of consolidation of functions is board-level consolidation. Functions that were previously implemented on different boards now can be consolidated onto a single card a single multicore SoC. ization can present different virtual SoCs to the applications. With increasing SoC application complexity, the probability of failures due to software bugs SoC mis-configuration are greater than purely hardware-based failures. In such a paradigm, it may make sense to consolidate application-level fault tolerance onto a single multicore SoC, where a fraction of the cores are set aside in hot stby mode. While such a scheme will save the cost of having to develop a stby board or at the very least another SoC, it would require the SoC to be able to virtualize not only the core complex but also the inputs/ outputs (I/Os). Although virtualization has its advantages, it comes with new challenges considerations, including partitioning, fair sharing protection of resources between multiple/ competing applications operating systems. The following sections will discuss how virtualization technology addresses these challenges. Addressing Challenges with ization Addressing Partitioning Challenge Partitioning can be defined as subdividing resources of a SoC in a manner that allows the partitioned resources to operate independently of one another. Partitioned resources can be mapped either explicitly to the actual hardware or to the virtualized hardware. Note that the system can be partitioned without being virtualized. For example, in a SoC that allows partitioning but not virtualization, each Ethernet interface can be assigned to a partition but a single Ethernet interface cannot be assigned to two different partitions at same time. However, if the SoC also provides virtualization capabilities, then a single Ethernet interface can be virtualized each virtual Ethernet interface can be presented to a different partition. Addressing Fair Sharing Protection Challenge A hypervisor is a software program that works in concert with hardware virtualization features to present the VM to the guest OS. It is the hypervisor that creates the virtualization layer. There are two broad architectural approaches when it comes to virtualizing the system: Machine 1 Device Drivers Hypervisor Hardware Machine 2 Host OS Bare-Metal Hypervisor The bare-metal hypervisor approach does not depend on the host OS runs directly on the physical hardware (bare metal). The hypervisor fully controls the SoC, enabling it to provide quality of service guarantees to the guest operating systems. Figure 4: Bare-Metal Bare-Metal Hypervisor Hypervisor Machine 1 Machine 2 Guest OS 1 Guest OS 2 Device Drivers Hardware Hypervisor freescale.com 25

Networking Different I/O hling approaches can be used by the hypervisor, including fully virtualized I/O, dedicated I/O paravirtualized I/O. In the fully virtualized approach, the hypervisor virtualizes the I/O by emulating the devices in software. The software overhead thus created reduces the efficiency of the system. In the para-virtualized approach, the I/O interfaces are not fully virtualized. The key difference between full I/O virtualization para-virtualization is that not all functions are emulated in para-virtualization; hence, this approach reduces software overhead at the cost of OS portability. In the dedicated approach, each VM is assigned a dedicated I/O in its own partition does not have to go through the hypervisor for I/O transactions once set up, resulting in the lowest software overhead. Unlike servers or compute-centric systems, one key design metric for embedded systems is performance of the system per watt of power dissipation. That is, the system should be optimized to extract the best possible performance within a given power budget. Usually the power budget of embedded systems is more constrained than that of the servers or compute-centric systems. While portability flexibility are important, often they are not the number one concern. As such, the bare-metal hypervisor approach offers the best virtualization solution for embedded systems. In summary, while the OS-hosted approach offers the greatest application guest OS portability, the baremetal hypervisor approach offers the best performance the lowest virtualization overhead. Advantages of ization On the processor, a new hypervisor state introduced by Freescale some traditional compute-centric companies automatically traps privileged sensitive calls by the guest OS to the hypervisor, removing the need for binary code rewriting or para-virtualization. This reduces the complexity overhead introduced by the hypervisor also improves overall performance of the system. The second area where hardware support improves hypervisor performance is memory management. In an un-virtualized system, a virtual memory address is formed by using the effective address. The virtual address is then translated to the physical address by the memory management unit. The system uses the physical address to either fetch or store the data or instruction from memory. If the system has multiple processes running on it, another level of abstraction is introduced, the virtual address is calculated using the effective address the process ID. That is, different processes having the same effective address will be represented by a different virtual address consequently a different physical address. A virtualized system can have many VMs running on a single system each VM can have multiple processes running on it. Memory is allocated to each VM in turn to the different processes running on each VM. A virtualized system, therefore, introduces yet another level of memory abstraction. While this abstraction can be accomplished using software, hardware assistance will greatly improve the performance of the system. Freescale some compute-centric companies have introduced enhancements to their memory management units that allow multiple levels of memory abstractions. Based on the system the application, memory associated with a VM may need to be protected partitioned from the other VMs. For example, in a mixed control data plane system where control data plane applications run on the same SoC, it is imperative that memory be protected partitioned so that these applications run completely independently the state of one partition cannot erroneously or maliciously corrupt the state of the other partition. Finally, the last major area where hardware support for virtualization will greatly reduce hypervisor overhead is the I/O. With increasing desire to consolidate applications workloads onto single multicore SoCs, the density of VMs per SoC is bound to increase. However, this trend can have significant performance impact as more more applications become bound by network I/O. In traditional virtualized systems, the hypervisor manages I/O activity of different VMs by using a virtual switch. The virtual switch resides inside the hypervisor is responsible for negotiating traffic exchange between the VMs the I/Os. The virtual switch parses classifies incoming packets forwards them to the appropriate VM. The virtual switch does the same for the packets it receives from the VMs, forwards them to the appropriate network I/O. As the number of VMs increase network I/O speeds move from 1 Gigabit Ethernet (GbE) to 10 GbE, the number of CPU cycles required by the virtual switch to forward packets to from the VMs the I/O will increase substantially reducing the amount of CPU cycles available for the applications running on the VMs. Hardware support that eliminates the need for the virtual switch, or significantly reduces the burden on it, will inevitably improve the performance of the system. 26

Beyond Bits Power Architecture Edition f Data Center Solution Figure 5: Key Features of Freescale s Data Center Solution CoreNet Hardware Hypervisor SMP/AMP OS ization Increased Bwidth 10G today QorIQ 40G Roadmap Convergence Freescale s ization Solution Multicore SoC High Speed I/O Broad SoC Portfolio Discrete hardware-based solutions have been proposed by some companies in compute-centric industry. Freescale, on the other h, has taken an integrated data path architecture approach for the embedded market in its QorIQ products. QorIQ processors provide an integrated on-chip solution using a combination of in-line hardware accelerators to parse, classify queue packets to different VMs processors. Traffic from multiple network interfaces can be directed to different partitions VMs on the systems. QorIQ processors also offer built-in scheduling priority mechanisms for the system to fairly distribute traffic among different partitions VMs, as well as to allow policy-based sharing of the network I/Os by different VMs. In a nutshell, Freescale s approach is to allow partitioning virtualization of SoC, provide performance isolation between different partitions virtualized SoC manage protect those resources. Multicore Processors in New Generation Data Center Solutions Figure 5 shows key aspects of Freescale s data center solution based on virtualization. The CoreNet, hardware hypervisor SMP/AMP OS technologies of QorIQ processors help enable virtualization required for data center networking. With its multicore architecture, high-speed I/O broad SoC portfolio, QorIQ processors facilitate convergence. With the progressively increasing speed processing capacities of QorIQ processors, Freescale is targeting 40G stards from the current mark of 10G today. Key differentiating features of Freescale s data center networking solution are: Data centers focused on reducing power cost Network node consolidation driving multiple functions into fewer platforms Integrated service routers adding appliance capabilities Management of multiple devices is usually difficult time consuming Freescale Enterprise Networking Data Center Strategy Freescale s data center approach provides embedded solutions for: Switching platforms Storage platforms Application delivery controllers Intelligent network interface controllers (NICs) converged network adapter (CNAs) Low power servers Freescale is uniquely positioned to enable common platforms through a broad portfolio of integrated SoC solutions for control data path processing. Scalable multicore processor solutions facilitate common platform architectures across OEM portfolios, maximizing OEM hardware software investments with bestin-class tools software ecosystem including commercial solutions from Freescale VortiQa third-party partners. Figure 6: Data Freescale s Centers Enterprise Networking Data Center Strategy Data Center ToR, EoR Core Switches Storage Arrays Scalable Multicore Data Path Acceleration Network Attached Storage Security ization Blade Servers Emerging Low Power Servers Modular Switches Best-in-Class Performance/Watt Application Delivery Networking Fixed Configuration Switches Host Bus Converged Network Adaptors, Intelligent NICs freescale.com 27

Networking Table 1: Freescale s Enterprise Networking Data Center Product Offerings Network Security Storage Main Functions New Technologies Freescale Offering IP switching WAN optimization Application delivery Security/UTM Appliance High-bwidth firewall SAN Storage controllers NAS High bwidth throughput virtualization IDS/IPS High-bwidth SSL ization of resources On-dem provisioning Improved performance Computing Server controllers High bwidth ization Application Server processors Large multicore complex cluster cores P4080 MPC83xx, MPC85xx, P10xx, P20xx, P30xx, P4080, P5020 MPC8572, P1020, P2020 P3041, P4080, P5020 MPC85xx -> P10xx -> P2040 P3041 -> P4080 P5020 In the current era of cloud computing, there has been increased dem to have a more robust secure data center. Understably, one of the primary concerns that a company has while implementing a data center is to sustain business continuity. Because every company has a tremendous reliance on its IT operations because many of these IT operations rely on data centers, it is extremely vital for these data centers to be available all the time throughout the year. With its broad range of current future QorIQ PowerQUICC III processors cutting edge technologies such as high bwidth throughput, virtualization, high bwidth SSL on-dem provisioning for improved performance, Freescale has the capacity to meet the requirements of the most robust data centers (see Table 1). Conclusion Proliferation of multicore processors in embedded markets the desire to consolidate applications functionality will push the embedded industry into embracing virtualization in much the same way as it occurred with the server compute-centric markets. Differences in the characteristics of embedded compute-centric markets warrant different virtualization approaches. The embedded market, unlike the server computecentric markets, is sensitive to the power envelope a particular device can dissipate usually has very constrained power budgets as compared to those in the computecentric space. One of the primary design objectives in the embedded market is to maximize performance per watt, so it is desirable to offload as many functions to hardware as possible free CPU cycles to be allocated to applications. When it comes to virtualization, the same philosophy is applied. While software-based solutions would work fine in the server compute-centric markets, they are more likely to degrade the performance of an embedded system to unacceptable levels. In embedded markets, the bare-metal hypervisor-based approach coupled with hardware virtualization assists in the core, the memory subsystem the I/O appears to offer the greatest performance over other approaches. 28

Beyond Bits Power Architecture Edition How to Reach Us: Home Page: freescale.com Power Architecture Portfolio Information: freescale.com/power e-mail: support@freescale.com USA/Europe or Locations Not Listed: Freescale Semiconductor Technical Information Center, CH370 1300 N. Alma School Road Chler, Arizona 85224 1-800-521-6274 480-768-2130 support@freescale.com Europe, Middle East, Africa: Freescale Halbleiter Deutschl GmbH Technical Information Center Schatzbogen 7 81829 Muenchen, Germany +44 1296 380 456 (English) +46 8 52200080 (English) +49 89 92103 559 (German) +33 1 69 35 48 48 (French) support@freescale.com Information in this document is provided solely to enable system software implementers to use Freescale Semiconductor products. There are no express or implied copyright license granted hereunder to design or fabricate any integrated circuits or integrated circuits based on the information in this document. Freescale Semiconductor reserves the right to make changes without further notice to any products herein. Freescale Semiconductor makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Freescale Semiconductor assume any liability arising out of the application or use of any product or circuit, specifically disclaims any all liability, including without limitation consequential or incidental damages. Typical parameters which may be provided in Freescale Semiconductor data sheets /or specifications can do vary in different applications actual performance may vary over time. All operating parameters, including Typicals must be validated for each customer application by customer s technical experts. Freescale Semiconductor does not convey any license under its patent rights nor the rights of others. Freescale Semiconductor products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Freescale Semiconductor product could create a situation where personal injury or death may occur. Should Buyer purchase or use Freescale Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify hold Freescale Semiconductor its officers, employees, subsidiaries, affiliates, distributors harmless against all claims, costs, damages, expenses, reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Freescale Semiconductor was negligent regarding the design or manufacture of the part. Japan: Freescale Semiconductor Japan Ltd. Headquarters ARCO Tower 15F 1-8-1, Shimo-Meguro, Meguro-ku, Tokyo 153-0064, Japan 0120 191014 +81 3 5437 9125 support.japan@freescale.com Asia/Pacific: Freescale Semiconductor Hong Kong Ltd. Technical Information Center 2 Dai King Street Tai Po Industrial Estate, Tai Po, N.T., Hong Kong +800 2666 8080 support.asia@freescale.com For Literature Requests Only: Freescale Semiconductor Literature Distribution Center P.O. Box 5405 Denver, Colorado 80217 1-800-441-2447 303-675-2140 Fax: 303-675 2150 LDCForFreescaleSemiconductor@hibbertgroup.com For more information, visit freescale.com/power Freescale, the Freescale logo, PowerQUICC QorIQ are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. CoreNet is a trademark of Freescale Semiconductor, Inc. The Power Architecture Power.org word marks the Power Power.org logos related marks are trademarks service marks licensed by Power.org. All other product or service names are the property of their respective owners. 2012 Freescale Semiconductor, Inc. Document Number: PWRARBYNDBITSMP REV 0