Q1.12: Phase III Plenary Session

Post on 25-Jun-2015

55 views 0 download

Tags:

description

Resource: Q1.12 Name: Phase III Plenary Session Date: 09-02-2012 Speaker: David Rusling

transcript

Phase III

February 2012, David A Rusling, Linaro CTO,

david.rusling@linaro.org

Where are we?

● Community● We're being listened to, our influence is growing

● Operational● Continuous integration process in place● Requirements and roadmap in place

● Technical● We are tackling several heavy lifting problems● Refactoring the ARM Linux kernel towards a unified

kernel tree● LAVA test and validation framework● Android and generic Linux (Ubuntu)● Server coming (along with lots of new architecture)

Learning Lessons

I learnt these lessons from Tudor Brown (ARM), just retired:● Keep asking yourself – is this what the customer

actually wants?● Don't over engineer the solution; you can never

make it future proof● Phase your approach, three phases, each stable

and with measurable benefits is better than a never-ending engineering project

● Find the simplicity beyond complexity

The Simplicity Beyond Complexity

The Linaro Mission(s):● Avoid Fragmentation (clear up before the mess)● Power management (10 hour battery life)● Deliver components reliably and on time into

member products

Testing and Validation

LAVA● How easy is it to deploy it into a

member's IP flow?● We need really deep testing for

the kernel; need to move to scenario driven testing

● Measurable benefits (instrumentation and debug)● Power management● Video, graphics and multimedia

efficiency and tuning

The (ARM) Linux Kernel

● Continue to refactor the (ARM) Linux Kernel● Lots of code left to shovel and systems to re-engineer

to support ARM Linux● Prevent fragmentation before it happens

● New platforms (A15 and beyond) ● big.LITTLE, Virtualization, Server● Even more kernel influence needed

● Make ARM a key Linux architecture● If not the key architecture

● Get ready for ARMv8!

Power Management

Challenge: 10 hours is the minimum batter life for a mobile device● We have good foundations - refactoring

cpu_freq / cpu_idle ● Still some arguing around hotswap versus

cpu_idle● LAVA instrumentation necessary to prove

improvements● big.LITTLE is key technology here

Cortex-A15 Cortex-A7

CCI-400

CPU 1CPU 0 CPU 0 CPU 1

I$ I$ I$ I$D$ D$ D$ D$

L2 Cache + SCU L2 Cache + SCU

GIC-400

Distributor interface

CPU 0Interface

CPU 1Interface

CPU 2Interface

CPU 3Interface

CoreLink CCI-400 Cache Coherent Interconnect

Interrupts

big.LITTLE Overview

Hardware:● High performance A15

cluster● Energy efficient A7 cluster● Coherent interconnectSoftware:● Task Migration (cluster

switching)● MP

Media Acceleration

● Goal: Integration of all subsystems for the best energy utilization (versus performance) over time● 10 hours battery life playing 3D movies / games

● Difficult because it's OS / distribution specific● Android versus generic Linux

● Linaro should concentrate on the kernel subsystems

Toolchain

Tuning the base set of tools is great, but...● Need to turn our attention to the whole system● How do we balance computation across all

computing elements for the best battery life?● Is OpenCL the answer or will Android drive

different MP / GPU solutions?● Web languages / applications more and more

important● renderscript

Back up Slides

Phase One: Foundation

● We saw problems, we created Linaro ● Build the team(s)● Learn to collaborate across a distributed organisation

● Community● Establish links with the open source communities

● Technical● Consolidate the ARM kernel tree● Engineer toolchain(s) for success

Phase Two: ...and Empire

● Support mobile products● Embrace Android● Build continuous integration loop and test infrastructure

● Community● Act as a 'center of gravity' for ARM Linux● ARM maintainer's Tree

● Technical● Advanced consolidation● Unified memory management● Power management unification ● Device Tree