Introduction to July 2013

Linaro Connect, Hong Kong March 2013 ARM Business Model

• Develops IP; Licenses vendors to build ARM SoCs

• ARM vendors delivered 8.7 billion ARM SoCs in 2012 • Many Cortex-A series licensees o 32- and 64-bit multi-core designs • Model drives rapid innovation from both large companies and startups • ARM’s DNA is in low power design • Value creation through differentiation & innovation

• Many vendors + many markets + many chips = massive ecosystem

www.linaro.org is Key To Industry Growth Areas

• Majority of key ARM growth areas are opportunities for Linux o Mobile, home and enterprise (networking)

Source: ARM earnings announcement 5 Feb 2013

www.linaro.org Linux on ARM (Before Linaro)

• One (or multiple) Linux implementation(s) per vendor, each with own kernel, memory management, drivers, middleware, and non-value adding differences o Clock drivers o I2C drivers o PinMux drivers o Power Management o Kernel Memory Management o Graphics & Multimedia framework o ...more non-value adding differentiation ARM SoC Software – “A Waddle of Penguins?” • Fragmentation of core software = multiple patch sets + little upstreaming + high maintenance costs + wasted resources + delays to products www.linaro.org Why Linaro?

• Increasing need for shared open source software engineering o Without working together fragmentation and duplication result • Standards/Optimizations for ARM implementations in different segments (server, networking etc.) for Linux can be absent • OEMs require the benefits of multiple vendors AND software interoperability

• In the last 3 years, Linaro has become the place for ARM licensees to work together on new open source technology development o Very strong engineering team established o Significant pieces of upstream plumbing merged o Roadmap of technology development published

www.linaro.org Linaro Overview

• Linaro is a not for profit engineering company that delivers core Linux technology for the benefit of members Our key goals: • Provide a safe, collaborative environment where competitors can jointly develop common open source software • Use shared investment to provide high ROI to members • Accelerate time to market for member products • Reduce fragmentation and resulting costs • Work closely with ARM to deliver Linux software and tools for new ARM technology – big.LITTLE, server, ARMv8 • Make ARM a leading architecture in open source

www.linaro.org Linaro 2010-2013

• Formed in 2010 as an OSS Engineering Organization o Place for ARM vendors to colloborate o Delivery through upstreaming o Work together on core software, enable differentiation & innovation • A Work in Progress o Dramatic improvements to ARM & contributions o ARM-SoC tree, , UMM (dmabuf & CMA), single zImage o Linaro is now a major contributor to the Linux kernel and other open source projects

COMMUNITY

Open Source Software for multiple vendor’s SoCs Shared development of core Linux software

www.linaro.org Linaro Members

CORE

CLUB

GROUP

COMMUNITY

www.linaro.org Real World Example: UMM

Memory management Company A Scheme 1

Company B Memory management Scheme 2 ✗ Company C Memory management Scheme N Upstream Blockage = Cost

Shared engineering: Company A Develop single Company B memory management scheme ✔ Company C UMM (dmabuf, CMA) Directly upstream to kernel.org

www.linaro.org Example: ARM in Servers

• 32-bit solutions shipping today o Calxeda, Marvell, Samsung • Software ecosystem is building o 12.04 LTS, LAMP stack, Java, RoR, Python, Juju, OpenStack • HP Redstone and Dell Copper announced • ARMv8 64-bit architecture introduced o Announcements include AMD, Applied Micro • Linaro forms ARM server ecosystem Group

www.linaro.org Linaro Enterprise Group (LEG)

• Formed in November 2012 • Working on core open-source software for ARM servers o Boot architecture – UEFI/ACPI o ARM workload optimizations o ARMv8 bringup & optimization o LAMP, Hadoop, HipHop VM • Reduces costs, eliminates fragmentation, accelerates time to market LEG Members • Members can focus on innovation and differentiated value-add http://www.linaro.org/engineering/leg

www.linaro.org Key Linaro Server Projects

• UEFI & ACPI development for ARM • including KVM and • ARM single kernel • ARM optimization for key server loads o LAMP o Hadoop o HipHop o OpenStack • AArch64 ARM 64-bit architecture software development • Test & Validation using Ubuntu and Fedora/Red Hat

www.linaro.org Linaro Networking Group (LNG)

• Formed in February 2013 • Working on core open-source software for networking equipment and • Leverages Linaro’s shared engineering model • Deliver Linux software for next generation low-power hardware o Real Time Support LNG Members o Data Plane interfaces & frameworks o Mixed-endian legacy code support

http://www.linaro.org/engineering/lng

www.linaro.org Industry Disruption

• Today – the entire industry is being disrupted o Mobile - Phones, Tablets o Embedded markets - TV, Cameras, Consumer electronics, Cars o Networking - Routers, Switches, Cloud o Servers - Micro, Hyperscale, HPC o IOT - Huge future impact on cloud, data, analysis • One size no longer fits all • One vendor alone cannot compete • ARM’s business model and partners are key • SoCs and Open Source are agents of change

www.linaro.org What does Linaro do?

• Linux kernel and architecture Upstream Projects specific software kernel.org  gnu.org  AOSP… • Focus on consolidation & optimization o Latest ARM SoCs, Cortex-A series • ARM GCC toolchain: best in class Linaro Engineering team from • New ARM technology: Linaro & members big.LITTLE, 64-bit • Delivers upstream • LAVA – test & validation Supported Distributions o Continuous Integration framework kernels & builds pull from for member SoCs upstream for distributions/build systems • Build & test on member SoCs o OE/Yocto, Linux, Android & Ubuntu

www.linaro.org Linaro Organisation

Technical Steering Committee (TSC) Working Platform Landing Teams Groups Engineering working under NDA

Kernel Consolidation LAVA Toolchain Validation & Benchmarking Graphics Power Management Builds & Baselines OE/Yocto, Android, Segment Fedora, Ubuntu Groups : QA Office of the CTO (OCTO) (OCTO) CTO the of Office LEG (15 companies) Continuous Integration LNG (12 companies) for Linaro output

Optimization, consolidation Validation, benchmarking, SoC support and & innovation release management optimization

www.linaro.org Linaro Connect – http://www.linaro.org/connect

• Linaro shared work is engineered in the open, globally o Linaro has >150 engineers at >100 locations in >25 countries o Many Linaro engineers are assignees working in member offices o Upstreaming work is collaborative with engineers outside of Linaro o Face-to-face time for planning and working together is very valuable • Linaro Connect gives face-to-face engineering time at multiple times in the year o Week-long event: up to 95 morning sessions; 5 afternoons of hacking plus committee, team and member meetings o Attendance free for members, nominal charge for non-members Linaro Connect Location Dates 2013 o Plenty of networking & side discussions 4-8 March Hong Kong o Demos on final afternoon 8-12 July Dublin o >300 attendees from ~80 companies 28 October – US (ARM o Sponsorship options available 1 November TechCon)

www.linaro.org Constant Growth at Linaro Connect

Doubled in size in 2 years

www.linaro.org Engineering: Steering & Management

• Member-directed engineering o Technical Steering Committee (TSC) provides high-level direction through requirements creation and review o LEG Steering Committee representative on TSC to help coordinate work between LEG and core engineering o Members choose what teams their engineers are assigned to: aligned with skills and strategic interests o Linaro engineering managers oversee day-to-day work • Engineers assigned to Linaro join a broad talent pool, gaining technical and upstream interaction experience o Knowledge diffused back into the member organization, enabling more effective upstream interaction • Linaro continuously monitors engineering activities to ensure work is valuable and directly useful to members

www.linaro.org Linaro Member Management Partnership

• TSC and group steering committees meet at least once every 2 weeks, monthly members’ report, Linaro Connect 2-3x, members’ meeting 2x per year, and sprints as needed • Linaro provides Android and Ubuntu images every month o Images generated by Linaro infrastructure can be delivered automatically to member sites (or member’s community sites) o Package update distribution available • Kernel and toolchain provided as required o Latest stable kernel for boards, tested and validated in LAVA • Cross-linking between Linaro and member sites • Bug tracking and project management • Escalation route(s) for kernel and toolchain issues that member sites cannot address (IRC, mail lists,…)

www.linaro.org Questions?

Linaro Connect, Hong Kong March 2013 More about Linaro: http://www.linaro.org/about/ More about Linaro engineering: http://www.linaro.org/engineering/ How to join: http://www.linaro.org/about/how-to-join Linaro members: www.linaro.org/members Challenges: ARM Catalyses Differentiation

Linus Torvalds

• “Gaah. Guys, this whole ARM thing is Lines of code in the Linux kernel a f*cking pain in the ass.” Mar 2011 http://lwn.net/Articles/437170/ d the ARM community seems to be making 1

Mar “Over the last year, ARM has gone from 2011 a constant headache every merge window to an outstanding citizen in the Linux community,…” Aug 2012

arch/arm in kernel: 250k lines less

than the past trend

www.linaro.org Challenges: ARM Catalyses Differentiation

Linus Torvalds

• “Gaah. Guys, this whole ARM thing is Lines of code in the Linux kernel a f*cking pain in the ass.” Mar 2011 http://lwn.net/Articles/437170/ • “ARM Linux is getting better, and the ARM community seems to be making progress.” Oct 2011 http://lwn.net/Articles/463908/ e Mar Oct fy 2011 2011 mg c…” Aug 2012

arch/arm in kernel: 250k lines less than the past trend

www.linaro.org Challenges: ARM Catalyses Differentiation

Linus Torvalds

• “Gaah. Guys, this whole ARM thing is Lines of code in the Linux kernel a f*cking pain in the ass.” Mar 2011 http://lwn.net/Articles/437170/ • “ARM Linux is getting better, and the ARM community seems to be making progress.” Oct 2011 http://lwn.net/Articles/463908/ • “Over the last year, ARM has gone Mar Oct Aug from a constant headache every 2011 2012 merge window to an outstanding 2011 citizen in the Linux community,…” Aug 2012 http://www.zdnet.com/torvalds-touts- linuxs-advances-in-power-arm-and- cell-phones-7000003509/ arch/arm in kernel: 250k lines less than the past trend

www.linaro.org Challenges – Power Management

• Billions of embedded and mobile devices o ARM partners shipped 8.7 billion chips in 2012[1] • and tablets generating a mobile data explosion o Mobile data to hit 134 Exabytes by 2017[2] • The Cloud requires massive data http://www.marshall.org/article.php?id=1133 centers o Power consumption is no longer just about mobile devices • 3 million data centers, 2.2% of US power consumption[3] o Doubling of big data growth by 2014[4]

[1] Source: ARM [2] http://www.datamation.com/mobile-wireless/mobile-data-set-to-hit-134-exabytes-by-2017.html [3] Source: Fortune [4] http://www.cloudexpoeurope.com/news/idc-reports-doubling-big-data-growth

www.linaro.org Challenges – Power Management

SoC Innovation: ARM’s DNA is in low power design • big.LITTLE o Clusters of low power and high performance cores on a single to accomplish both high intensity and low intensity tasks in the most energy efficient manner • SoCs become “Server on Chips” o Smaller footprint, lower power, lower cost, high reliability

• ARMv8 o ARM 64-bit architecture designed for high performance and power efficiency while maintaining compatibility with existing 32-bit software

www.linaro.org Challenges – Networking Infrastructure

• Explosive growth in mobile data • Adapting to dynamic workloads • Product cycle time is 2-3+ years, how to keep pace with technology innovation? o Legacy code – Big Endian data o Long validation/certification cycles o Need for higher performance and lower power consumption with existing software applications • Different software environments to meet the requirements of control and data plane

www.linaro.org Challenges – Organizing Groups

• Collaborative software engineering among companies which naturally compete • Identifying the boundaries between common (commodity) and differentiating software o Competing companies need room to differentiate • Defining common requirements, goals and objectives • Building Teams • Agreeing on need to work upstream

www.linaro.org Technology Roadmap – Power Management

• big.LITTLE MP vs. In-Kernel Switcher (IKS) o MP[1] = all cores can be scheduled and used at the same time • Touches many subsystems in the kernel • Will require much discussion and testing to achieve final upstream implementation • Commercial products in 2H’2013 or early 2014 o IKS[2,3] = manage pairs of cores between A7 and A15 clusters to balance performance versus power consumption • Migrating execution states between the two clusters. • Less complex than MP while still providing excellent power-performance results • Commercial products in 2013 • Less about the processor architecture, more about kernel re- factoring

[1] https://wiki.linaro.org/projects/big.LITTLE.MP [2] http://www.linaro.org/documents/download/d364018e38b473315767d5479039751a50925b90d6cc6 [3] In Kernel Switcher: A Solution to Support ARM's New big.LITTLE Implementation - Mathieu Poirier, Linaro www.linaro.org Technology Roadmap – Virtualization

• KVM running on ARMv7a[1] o Tested on ARM Fast Models and Versatile Express TC2 o Fully boots both Ubuntu ( Thumb-2) and Debian (user space ARM) guests • Linaro Mini-Summit Feb 2013[2] o Initial focus areas: http://systems.cs.columbia.edu/projects/kvm-arm/ • Continuous integration and validation for ARMv7 / ARMv8 (models) • Booting in HYP-mode[3,4] • QEMU model for ARMv8 • Ensure libvirt works properly with KVM on ARMv7 / ARMv8 (models) • Support for VM migration o https://wiki.linaro.org/LEG/Engineering/Virtualization/201302MiniSummit • Sessions at Linaro Connect Asia (LCA13 Hong Kong) o KVM for Core and LEG and Status and Plans

[1] http://lwn.net/Articles/516652/ [2] http://www.linaro.org/linaro-blog/2013/02/08/linaro-takes-an-active-role-in-virtualization-on-arm/ [3] http://www.linuxplumbersconf.org/2012/wp-content/uploads/2012/09/2012-lpc-arm-zyngier.pdf [4] http://lwn.net/Articles/516652/ www.linaro.org Technology Roadmap – Real Time

Real-time has been in Linux from 2.4, but it is new for Linaro • Define requirements o Who needs it and why? o Soft vs. hard deadlines (“uncertainty about determinism”) o Single or segregated environments; virtual or physical platforms • Understand current status: PREEMPT_RT o https://rt.wiki.kernel.org/index.php/Main_Page o Is not yet, and may never be, fully integrated into mainline tree o ARM Platform support variable o Interactions with virtualization • Review existing research (e.g. http://www.linux-kvm.org/wiki/images/0/03/KVM-Forum-2011- RT-KVM.pdf) • Create a plan and execute

www.linaro.org Linaro: Proven Success in Linux

• #5 contributor to Linux Kernel 3.9 • High quality ARM GCC toolchain (v7/v8) • Common kernel memory management framework (UMM) • Single zImage and Device Tree for ARM • Facilitated arm-soc sub- architecture maintainers group • big.LITTLE in-kernel switcher (IKS) • Continuous Integration testing using LAVA test and validation platform on member hardware

www.linaro.org Linux Kernel Upstreaming

• Linux 3.10 released 30th June • Total patch sets in this kernel release: 13637 • Over 200 companies contributed to this kernel release

Linux 3.10 Contributors by company 1 None 1495 (11.1%) 2 Red Hat 1269 (9.4%) 3 Intel 912 (6.8%) Linaro is #3 4 Linaro 877 (6.5%) company 5 765 (5.7%) contributor 6 Unknown 746 (5.5%) 7 Samsung 615 (4.6%) 8 IBM 402 (3.0%) 9 Vision 392 (2.9%) 10 Google 350 (2.6%)

Source: http://lwn.net/Articles/555867/www.linaro.org Distributions

• Linaro is not a distribution

• Linaro uses distributions to test its engineering

• Linaro encourages distributions to make use of its engineering

www.linaro.org LAVA – The Linaro Automated Validation Architecture June 2013

Linaro Connect, Hong Kong March 2013 Linaro Open Source Testing & Validation

• Open Source Software traditionally has limited testing • LAVA – Linaro Automated Validation Architecture • Lab is populated by Linaro member hardware • Provides Members: o Continuous Integration for daily build & testing o Smoke, System and Regression testing o Web dashboard for results and trends o Measurable distribution quality & trends o Open source framework ` o Large and expanding farm of latest Member SoC boards, servers, models and consumer devices

www.linaro.org LAVA – Why LAVA?

• Validate Linaro Engineering output • Test Linaro Engineering output on a diverse range of member hardware • Support automated kernel testing • Ensure a device can be bricked, including the bootloader, and resurrected without manual intervention • No assumptions of special capabilities

www.linaro.org LAVA – What it is

• A framework for testing software on member hardware • Accepts “jobs” to perform on target device types • Jobs produce result bundles • LAVA itself is an enabler - we do not define the tests that can be run • A black box to CI – all devices have the same LAVA interface • A cloud like solution for ARM devices

www.linaro.org LAVA Lab Usage: http://www.youtube.com/watch?v=MUBqfxefN4g

www.linaro.org