Keynote - Mobile in the Modern Age: Connecting Intelligence
Akshay Agarwal is the Ecosystem Director Americas and is responsible for Graphics Ecosystem Development and Strategic Marketing with specialization in Software: Mobile Operating Systems, Gaming, User Interfaces and Web browsers
page views **http://royal.pingdom.com/2012/05/08/mobile-web-traffic-asia-tripled/, May 2012 Nearly 1/3 of UK page views are from mobiles and tablets*** 25% Of YouTube views come from mobile* >48% of web traffic is mobile in India** 192% 2010-2012 Increase in mobile share of web traffic in Asia** 60% Facebook users access from mobile 36% Chinese Android users spend 2+ hours a day on mobile apps *http://www.youtube.com/yt/press/statistics.html 200 Million Active Twitter users, 60% via mobile Mobile: A Growing Part of Everyday Life, Globally!
multi window productivity Facial recognition and unlock 2.5k displays; multiple simultaneous displays Intuitive gesture and natural language input Live image and scene recognition Video & image editing; manipulation, and rendering
Our world is graphical >220M tablets expected in 2013**** 64B app downloads in 2017* >1.5B smartphones sold in 2017*** Mobile gaming worth $17B by 2017** 8K4K resolutions 240FPS 3D 12B app downloads in 2012* 1080p & 2K resolutions 120FPS >150M tablets sold in 2012**** * http://www.gamesindustry.biz/articles/2013-04-30-mobile-to-be-primary-hardware-for-gaming-by-2016 **http://www.inc.com/best-industries-2012/john-mcdermott/mobile-and-social-gaming.html ***http://thenextweb.com/insider/2013/03/04/idc-smartphone-shipments-to-overtake-feature-phones-worldwide-in-2013/ ****ARM estimate
floating point performance 2D/3D graphics Advanced Image Processing Accelerate/Complement ISP functionality Offload video codec blocks Accelerate physics computation Operating System Most application processing Programmable through C-like languages and APIs GPU can be used as computational accelerators or companion processor
Energy Star Tiny OS Weeks Battery All Day Computing Connectivity Mixed signal uWs High Data Throughput Customized I/O 11 Scalable, Diverse, Flexible, Deployable
first computation platform ported to run directly on a mobile device GPU Compute API LLVM RenderScript Code (C99 Like Language) RenderScript “binary” (LLVM Intermediary) OpenGL ES 2.0 Driver & (Native) Compute (Native Code) ARMv7 CPU (VFP, NEON) Mali GPU § SW parallelization across all cores § ARM directly sponsoring LLVM activity § ARM LLVM CPU code-generation § ARM optimizing LLVM code Gen § All work delivered upstream § Nexus 10 supports RenderScript Compute directly on ARM Mali-T604
CPU and GPU § Free Community Edition § androidtools.org site § Aggregate website showing Android App development methodologies Test and review of available Android tools § Blogs § NEON Coding § Tools Setup § V8 JavaScript Activity § projectNe10.org open source library project § Lets developers get the most out of ARMv7/NEON coding § Open Source Project suggestions/contributions welcome § http://malideveloper.arm.com/: Mali Dev Resources ARM Engaging with Android Developers
conditions at a glance Select from 40+ CPU counters, OS level and custom metrics Accumulate counters, measure time and find instant hotspots Select one or more processes to visualize their instant load on CPU Combined task switch trace and sampled profile for all threads
data processing architecture § Extension of the ARM® instruction set § 32 registers, 64-bits wide (dual view as 16 registers, 128-bits wide) § Dozens of Android™ subsystems & thousands of applications use NEON § NEON optimizations improve execution and battery performance § VP8 codec contains >11K lines of NEON code § Some Skia routines >500% improvement § HTML5 SVG filters improved by up to 400% § Ne10 is a library of highly optimized common functions callable from C § Lets you get the most out of ARMv7/NEON without arduous coding § Free as in both beer and speech (Apache License) § Easy to use out-of-the-box § Project Ne10 is an open source project hosted by ARM § Hosted on github, suggestions/contributions welcome github.com/projectNe10
lines NEON assembler! § Bluez – official Linux Bluetooth protocol stack § Pixman (part of cairo 2D graphics library) § ffmpeg (libav) – libavcodec § LGPL media player used in many Linux distros and products § Extensive NEON optimizations § x264 – Google Summer Of Code 2009 § GPL H.264 encoder – e.g. for video conferencing § Android – NEON optimizations § Skia library, S32A_D565_Opaque 5x faster using NEON § Available in Google Skia tree from 03-Aug-2009 § LLVM – code generation backend used by Android RenderScript § Eigen2 – C++ vector math / linear algebra template library § TheorARM – libtheora NEON version (optimized by Google) § libjpeg / libjpeg-turbo – optimized JPEG decode § libpng – optimized PNG decode § FFTW – NEON enabled FFT library § Liboil / liborc – runtime compiler for SIMD processing § webkit – used by Chrome Browser
Hardware, Software and Tools § Architecture for the 21st Century: Delivering Performance and Efficiency § Enabling New Markets and Expanding developer opportunities § Tools and Hardware Ref Designs to get the best from Processor Architecture