• Save
Android on Intel platforms : current state, near-future, future & developers offering
Upcoming SlideShare
Loading in...5
×
 

Android on Intel platforms : current state, near-future, future & developers offering

on

  • 1,677 views

By Alexander Weggerle, Intel Technical Consulting Engineer for software development tools, and Xavier Hallade, Intel Technical Engineer.

By Alexander Weggerle, Intel Technical Consulting Engineer for software development tools, and Xavier Hallade, Intel Technical Engineer.

Statistics

Views

Total Views
1,677
Views on SlideShare
1,401
Embed Views
276

Actions

Likes
1
Downloads
0
Comments
0

3 Embeds 276

http://de.bemyapp.com 268
http://www.linkedin.com 7
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Android on Intel platforms : current state, near-future, future & developers offering Android on Intel platforms : current state, near-future, future & developers offering Presentation Transcript

  • INTEL CONFIDENTIAL, FOR INTERNAL USE ONLYAndroid* on Intel platformsCurrent state, near-future, future anddevelopers offeringAlexander Weggerle, Technical Consulting EngineerXavier Hallade, Technical Marketing Engineer
  • INTEL CONFIDENTIALSoftware and Services GroupMost Android* Apps Will “Just Work” on AtomAndroid Dalvik and HTML5 apps• These should “just work”– we do extensive testing ofpre-production systemsAndroid native (NDK) apps• Most will run w/o any recompilation but …• A simple recompile using the Android NDK yields the best performance• If the developer uses ARM-specific features, add equivalent Intel SSE featuresTop Android Market apps• Intel validates and tests on Intel® Atom™ processor platforms(Mix of Dalvik and native (NDK) apps)Android RuntimeCore LibrariesDalvik VirtualMachine
  • Android OS Optimizations
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Optimizing Android for Intel®Atom™ Processor-Based DevicesAppsApplicationFrameworkHome Contacts Phone BrowserActivityManagerWindows*ManagerTelephonyManagerResourceManagerContentProviders View SystemLocationManagerNotificationManagerPackageManager…SurfaceManagerOpenGL* ESSGLMediaFrameworkFreeTypeSSLSQLiteWebKitlibcCoreLibrariesDalvik VirtualMachineDisplay Driver Camera Driver Flash MemoryDriverBinder (IPC)DriverKeypad Driver WiFi Driver Audio Drivers PowerManagement……LibrariesLinux* KernelAndroid* RuntimeAppsUserExperienceMiddlewareOperatingSystemApply ourextensiveexperienceoptimizing Java*to the Dalvik* VMDrivers validated& optimized forpower & memoryfootprintSKIA and openGLoptimizationsEnhanceddebugging andloggingIA assemblyoptimizationsWe optimize webtechnologiessuch as HTML 5,WebKit andJavaScript†GPU & Videosupport for canvasoperationsExtensive middlewaredevelopment inimaging, media andDRM delivercompelling mediaexperiencesMemory Optimizations,AVI, DivX*, and ASFcontainer types, WMV/VC-1 decoder. LiveStreaming optimizations,HDMI and WiDI ExtendedVideo Modes, VideoPlayback DRM†Based on third party validation and sampling of Android apps using specific computer systems and/or components and reflect the approximateperformance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actualperformance and/or results.
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Committed to providing the bestexperience on IA• Intel recognized as the #1 external contributor2 to JB .In line to be #1 again for next Android release• Chrome browser ported to Android and optimized to run best on IA• Intel has contributed 750+ patches to Webkit (Drives the browser for Android andiOS) in the last two months and is the 2nd largest Contributor to Chromium behindGoogle• Creating cross-platform tools and development environments based on newprogramming models3X Faster1Android ICS BrowserGPU acceleratedFPS: 20  606X Faster1Jscript PerformanceX86 codegenIndustry LeaderBest-in-class1Optimized Android 2.3Web RuntimeCES 2012 Review>20% Faster1Optimized SKIARendering LibraryAndroid 2.3Optimizing Android on IA for performance, power, and user experience
  • Hardware
  • INTEL CONFIDENTIALSoftware and Services GroupAll products, designs, dates and figures specified are preliminary based on current expectations, and are subject tochange without notice. Performance tests and ratings are measured using specific computer systems and/or componentsand reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardwareor software design or configuration may affect actual performance. Buyers should consult other sources of information toevaluate the performance of systems or components they are considering purchasing.PERFORMANCESMARTPHONEVALUESMARTPHONEHigherPerformanceUp to 2.0 GHz ProcessorIntel® XMM™ 6260: HSPA+2 cores, 4 threadsUp to 2X Performance2X HSPA+ / LTE1.2 GHz ProcessorIntel XMM 6265: HSPA+Lower CostIntel® Atom™ Z2460Intel Atom Z25X0Intel Atom Z2420Current Smartphone and TabletsPlatforms
  • INTEL CONFIDENTIALSoftware and Services GroupSmartphones with Intel Inside - 2012Motorola RAZR i ZTE Grand X INLava Xolo X900 Megafon MintLenovoK800Orange San Diego (UK)Orange avec Intel Inside (FR)Z2460
  • INTEL CONFIDENTIALSoftware and Services GroupSmartphones with Intel Inside - 2013Intel® YoloAcer Liquid C1ASUS*Fonepad™ - 7”Z2420 Z2580Z2560Lenovo* K900 – 5.5”ASUS Fonepad™ NoteFHD - 6”ZTE Grand X2 – 4.5”ZTE* Geek – 5”…
  • INTEL CONFIDENTIALSoftware and Services GroupTablets with Intel Inside - 2013Samsung* Galaxy™ Tab 3 10.1”(Z2560)ASUS* MeMO Pad FHD 10”(Z2560)ASUS* Fonepad™ 7”(Z2420)
  • INTEL CONFIDENTIALSoftware and Services GroupAnd more…ASUS* Transformer Book TrioAtom Z2580 + Core i7 4th Generation
  • INTEL CONFIDENTIALSoftware and Services GroupMost Android* Apps Will “Just Work” on AtomAndroid Dalvik and HTML5 apps• These should “just work”– we do extensive testing ofpre-production systemsAndroid native (NDK) apps• Most will run w/o any recompilation but …• A simple recompile using the Android NDK yields the best performance• If the developer uses ARM-specific features, add equivalent Intel SSE featuresTop Android Market apps• Intel validates and tests on Intel® Atom™ processor platforms(Mix of Dalvik and native (NDK) apps)Android RuntimeCore LibrariesDalvik VirtualMachine
  • INTEL CONFIDENTIALSoftware and Services GroupPSITSPIDsPackaging APKs for multiple CPUarchitecturesTwo options:One package for all (“fat binary”)• Embed native libraries for each architecture in one APK• Easiest and preferred way to go.Multiple APKs• One APK per architecture• If you have good reasons to do so (ie your fat binaryAPK would be larger than 50MB).
  • INTEL CONFIDENTIALSoftware and Services GroupThe application will be filtered on ABI support duringinstallation (after download).Use lib/armeabi librariesUse lib/armeabi-v7alibrariesUse lib/x86librariesFat Binaries
  • INTEL CONFIDENTIALINTEL CONFIDENTIALMultiple APK demo
  • INTEL CONFIDENTIALSoftware and Services GroupVersion code convention (proposal)APKs that targets different platforms must havedifferent version codes.The store will choose the compatible APK with thehigher version code number.Using this convention, the chosen APK will be theone that run best on the device.
  • INTEL CONFIDENTIALINTEL CONFIDENTIALFuture
  • INTEL CONFIDENTIALSoftware and Services Group
  • INTEL CONFIDENTIALSoftware and Services Group
  • INTEL CONFIDENTIALSoftware and Services Group
  • Intel® Hardware AcceleratedExecution Manager (HAXM)
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Speeding up Android EmulationWhether targeting Dalvik or native (C/C++) appsfor ARM or x86 devices, developers can usethe x86 emulator with HAXM to greatly speed upfunctional testing and debugging
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Pre-built Atom Images• Android SDK manager has x86 emulation imagesbuilt-in• To emulate an Atom-based Android phone, installthe “Intel Atom x86 System Image” available inthe Android SDK ManagerMuch Faster Emulation• Intel® Hardware Accelerated Execution Manager(HAXM) for Mac and Windows uses Intel®Virtualization Technology (VT) to accelerateAndroid emulator by 2-4x• Intel VT is already supported in Linux* (KVM) forx86.See www.intel.com/software/androidfor demo videos & installation tipsIntel x86EmulatorAcceleratorFaster Android Emulation using an IA-based host PCIntel x86 AtomSystem Image
  • Intel® HAXM - DEMO
  • Intel® Graphics PerformanceAnalyzers
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.26Intel® Graphics Performance AnalyzersSystem Analyzer for Android• Real-time system-levelperformance analysis for Intel-based Android devices• Immediate experiments andoverwrites enable developers toisolate CPU and GPUperformance problems• Metrics for CPU, GPU, API,memory, network, power, etc.
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.For on-device app testing: Intel®GPA System AnalyzerReal-time Remote Performance and Power ProfilingIntel® GPA SystemAnalyzer running ona PCAndroidSmartPhoneUSB adb ConnectionWi-Fi ConnectionDataReal-time charts:• CPU metrics• Graphics API level metrics• Processor graphics hardware metrics• Power metricsDownload Intel® GPA for FREE at intel.com/software/GPA
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Specific Metrics and Overrides28Metrics enable performanceanalysis and observation BUS/DRAM CPU Flash File System I/O Network I/O GPU App Memory OpenGL API and States PowerOverrides enable performanceanalysis and debugging 1x1 Scissor Rect Disable Alpha Blending Disable Alpha Test Disable Draw Calls Disable Z-Test Show Wireframe Texture 2x2 Simple Fragment Shader Hyper Threading Disable V-Sync Disable CPU Frequency Override
  • Intel® GPA - DEMO
  • Intel® Threading Building Blocks(TBB)
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.31Key Features of TBBYou can specify tasks instead of manipulatingthreads• TBB maps your logical tasks onto threads with fullsupport for nested parallelismTargets threading for scalable performance• Uses proven efficient parallel patterns• Uses work-stealing to support the load balance ofunknown execution time for tasks.Open source and licensed versions available on :Linux, Windows, Mac OS X* and… Android*
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Intel® TBB - Example#include <tbb/parallel_reduce.h>#include <tbb/blocked_range.h>double getPi(){const int num_steps = 10000000;const double step = 1./num_steps;double pi = tbb::parallel_reduce(tbb::blocked_range<int>(0, num_steps),double(0),[&](const tbb::blocked_range<int>& r, double current_sum ) -> double {for (size_t i=r.begin(); i!=r.end(); ++i) {double x = (i+0.5)*step;current_sum += 4.0/(1.0 + x*x);}return current_sum; // body returns updated value of theaccumulator},[]( double s1, double s2 ) {return s1+s2;});return pi*step;}
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Intel® TBB – Integration#for including tbb in your project:include $(CLEAR_VARS)LOCAL_MODULE := tbbLOCAL_SRC_FILES := $(TBB_PATH)/lib/android/libtbb.soLOCAL_EXPORT_C_INCLUDES := $(TBB_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY)#for calling tbb from your lib:LOCAL_CPP_FEATURES := rtti exceptionsLOCAL_SHARED_LIBRARIES += tbbLOCAL_CFLAGS += -DTBB_USE_GCC_BUILTINS -std=c++11Android.mkAPP_ABI := x86APP_STL := gnustl_sharedApplication.mkSystem.loadLibrary("gnustl_shared");System.loadLibrary("tbb");System.loadLibrary("YourLib");Java
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Intel® TBB - DownloadGPLv2 with runtime exception available fromthreadingbuildingblocks.org/download :The commercial version with support is here:software.intel.com/en-us/intel-tbb
  • Intel® VTune Amplifier forAndroid
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Intel® VTune™ Amplifier XE 2013Performance & Power ProfilerWhere is my application…Spending Time? Wasting Time? Consuming Power?• Focus tuning on functionstaking time• See call stacks• Drill to source and asm code• See cache misses on yoursource• See functions sorted by# of cache misses• See Frequency andSleep states• See Wakeup reasonsAdvanced profiling for Android Mobile Devices
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Intel® VTune™ Amplifier XE 2013CPU Performance Analysis• Identify Hotspots and inefficient code• Cache Misses, Branch Mispredictions• Drill down from Java & C/C++ to assembler code
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.CPU Power AnalysisUse case: Collecting data from sensor• Continuously collecting accelerometer data• Use power analysis to find out impact of samplingfrequency6/5/2013SENSOR_DELAY_FASTEST SENSOR_DELAY_NORMALLowest PowerconsumptionHigh Powerconsumption
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.
  • Copyright© 2012, Intel Corporation. All rights reserved.*Other brands and names are the property of their respective owners.Where to Get More InfoIntel® Developer Zone (IDZ)• Real developers sharing knowledge andoffering help• Dedicated communities and forumsfocused on your interests• Worldwide reach• News and insights on cutting edgetechnologyIntel Android* Developer Website• Great content you won’t find anywhere else• Technical articles, tools, and “How-To”guides• Native app porting tips & case studies• Info on x86 emulator and Intel® HardwareAccelerated Execution Manager• Active forums and blogs written by Intel andcommunity expertswww.intel.com/software/android