Your SlideShare is downloading. ×
0
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

CodeFest 2014. Коновалов А., Шкурко Д. — Разработка и оптимизация приложений для Android x86

923

Published on

Published in: Internet
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
923
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  1. Оптимизация приложений для Android x86 Антон Коновалов, Дмитрий Шкурко Intel Corporation
  2. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 2 План выступления Обзор  Устройства на базе аппаратуры средств Intel  Инструменты разработки приложений на HTML5  Инструменты разработки приложений для Dalvik* и C/C++ приложений Разработка C/C++ приложений  Инструменты разработки C/C++ приложений  Демо
  3. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Телефоны и планшеты на базе x86 архитектуры 3
  4. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Следующее поколение u-архитектуры Atom*
  5. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Точка зрения пользователя Android Runtime Core Libraries Dalvik Virtual Machine Blink (WebKit) Приложения на базе Android Dalvik* и HTML5 • Должны работать без изменений Приложения, содержащие двоичный код, • Должны работать без изменений, но не с максимальной эффективностью Как правило, популярные приложения используют бинарные библиотеки
  6. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Типы приложений, поставляемые в бинарном виде 7 • Порт существующего кода с других платформ • Оптимизация без глобальной переделки • Требования к производительности в условиях ограничения на ресурсы • Обработка видео, аудио, сигналов • Алгоритмы симуляции • Прямой доступ к CPU/HW
  7. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Инструменты разработки приложений на HTML5 8
  8. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Intel® HTML5 Development Environment (XDK) Создание, отладка и распространение HTML5 приложений на базе общего кода для разных платформ xdk.intel.com
  9. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Инструменты разработки приложений для Dalvik* и C/C++ приложений 10
  10. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 11 Integrated Native Developer Experience (beta)
  11. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 12 Integrated Native Developer Experience (beta) Базовые инструменты разработки Media Pack for Android Threading Building Blocks Инструменты для анализа производительности и отладки Compute Code Builder Intel C/C++ компилятор
  12. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 13 Базовые инструменты разработки Android developer tools (ADT) Android NDK Android SDK Eclipse* IDE Android plugin for Visual Studio* Apache Ant* Intel* HAXM Android plugin for Eclipse*
  13. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Hardware Accelerated Execution Manager (Intel® HAXM) www.intel.com/software/android HAXM драйвер для эмулятора x86 Образ ОС Android для x86 Готовые образы для эмулятора входят в SDK • Образы для x86 предоставляются, начиная с API 10 Виртуализация ускоряет эмуляцию в 2-4 раза • HAXM на Mac и Windows ОС • KVM на Linux
  14. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 15 Демо (тесты на производительность памяти и процессора) HAXM off HAXM on
  15. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Compute Code Builder 16 http://software.intel.com/en-us/articles/getting-started-with-compute- code-builder
  16. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Возможности Compute Code Builder 17 • Preview JumpStart kit – учебный инструмент для пошагового построения OpenCL проекта • Code editing – Интеграция с популярными IDE: • Синтаксическая раскраска кода • Авто-дополнение кода • Обработка ошибок компиляции
  17. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Возможности Compute Code Builder (продолжение) 18 • Compile and Build – компиляция OpenCL ядер, подготовка бинарных файлов на Android устройствах • OpenCL API debug – отладка вызовов OpenCL API, инспектирование объектов и очередей OpenCL. • OpenCL kernel debug – пошаговая отладка на центральном процессоре • Kernel analyze – анализ производительности OpenCL ядер на машинах с графическим процессором Intel® Graphics
  18. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 19 Threading Building Blocks • Современная C++ библиотека параллельных алгоритмов для эффективного распараллеливания приложений • Программирование на уровне элементов работы, а не потоков ОС • Динамическое распределение нагрузки • Проверенные алгоритмы • Код доступен https://www.threadingbuildingblocks.org/ под GPL • Коммерческая версия http://software.intel.com/en-us/intel-tbb
  19. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Intel® Threading Building Blocks - Тизер #include <tbb/parallel_reduce.h> #include <tbb/blocked_range.h> double getPi() // int_0^1 4dx/(1+x^2) = pi { 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 the accumulator }, []( double s1, double s2 ) { return s1+s2; } ); return pi*step; }
  20. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Intel® TBB – Использование в приложениях В новых версиях Android обработка зависимостей между библиотеками осуществляется автоматически Android.mk#for including tbb in your project: include $(CLEAR_VARS) LOCAL_MODULE := tbb LOCAL_SRC_FILES := $(TBB_PATH)/lib/android/libtbb.so LOCAL_EXPORT_C_INCLUDES := $(TBB_PATH)/include include $(PREBUILT_SHARED_LIBRARY) #for calling tbb from your lib: LOCAL_CPP_FEATURES += rtti exceptions LOCAL_SHARED_LIBRARIES += tbb LOCAL_CFLAGS += -DTBB_USE_GCC_BUILTINS -std=c++11 APP_ABI := x86 APP_STL := gnustl_shared Application.mk System.loadLibrary("gnustl_shared"); System.loadLibrary("tbb"); System.loadLibrary("YourLib"); Java
  21. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 22 Media Pack Media Pack предоставляет код и примеры использования для: • Захвата видео потока с камеры и экрана • Редактирования видео • Включения потокового видео • Обработки звука Media Pack поддерживает x86 и ARM устройств на базе Android версии 4.3 http://software.intel.com/en-us/articles/intel-inde-media-pack-for- android-tutorials-building-samples http://software.intel.com/en-us/articles/intel-inde-media-pack-for- android-tutorials-running-samples
  22. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 23 Захвата видео потока http://software.intel.com/en-us/articles/intel-inde-media-pack-for- android-tutorials-video-capturing-for-libgdx-applications http://software.intel.com/en-us/articles/intel-inde-media-pack-for- android-tutorials-video-capturing-for-opengl-applications
  23. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 24 • Анализ производительности в реальном времени • Быстрые эксперименты с системными настройками для локализации проблем с CPU и GPU • Множество метрик для определения и оптимизации критичного кода • CPU, GPU, API, RAM, сеть, энергопотребление и т.д. Intel® Graphics Performance Analyzers Инструмент системного анализа ОС Android http://software.intel.com/en-us/vcsource/tools/intel-gpa
  24. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Метрики и системные настройки 25 Метрики  BUS/DRAM  CPU  Flash File System I/O  Network I/O  GPU  App Memory  OpenGL API and States  Power Системные настройки для анализа производительности и отладки  1x1 Scissor Rect  Disable Alpha Blending  Disable Alpha Test  Disable Draw Calls  Disable Z-Test  Show Wireframe  Texture 2x2  Hyper Threading Disable  CPU Frequency Override
  25. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Инструменты разработки нативных приложений 26
  26. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Android* NDK для разработки нативных приложений 27 Зачем он нужен? • Перенос существующего нативного кода с других платформ • Требования к производительности в условиях ограничения на ресурсы, например, на память • Обработка изображений, сигналов • Алгоритмы симуляции • Прямой доступ к CPU/HW • Оптимизация кода без изменения алгоритма http://developer.android.com/tools/sdk/ndk/index.html
  27. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Совместимость приложений со всеми устройствами 28 myapp.apk APP_ABI := all Application.mklibs/x86/mylib.so libs/arm/mylib.so libs/arm-v7a/mylib.so libs/mips/mylib.so libs/?/mylib.so
  28. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Специализация опций для разных архитектур 29 libs/x86/mylib.so libs/arm/mylib.so libs/arm-v7a/mylib.so libs/mips/mylib.so libs/?/mylib.so ifeq ($(TARGET_ARCH_ABI),x86) LOCAL_CFLAGS := -mtune=atom -msse3 endif ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) LOCAL_CFLAGS := -march=armv7-a Endif Android.mk #ifdef __i386__ strlcat(buf, "__i386__", sizeof(buf)); #endif #ifdef __arm__ strlcat(buf, "__arm__", sizeof(buf)); #endif source.c http://software.intel.com/en-us/android/articles/creating-an-x86-and-arm-apk-using-the- intelr-compiler-and-gnu-gcc
  29. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice C/C++ компиляторы для Android x86 30 Поддержка x86 включена, начиная с NDK r6 • Включал или включает до сих пор • GCC 4.4.3, GCC 4.6, GCC 4.7, GCC 4.8 • Clang 3.1, Clang 3.2, Clang 3.3 • ICC 13.1, 14.0 • RenderScript* • Сейчас по умолчанию используется версия 4.6
  30. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Рекомендуемые опции GCC 31 Уровни оптимизации -O0, -O1, -O2, -O3, -Os -O0 уровень оптимизации по умолчанию Настройки и оптимизации для заданных микроархитектур • -march=atom (или –mtune=atom) • -march=slm (или –mtune=slm) Настройки точности арифметики • -ffast-math • -mfpmath=sse Другие полезные опции • -flto • -funroll-loops, -funroll-all-loops EEMBC® CoreMark®
  31. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 32 Intel® C/C++ Compiler Оптимизация приложений и системы в целом Высокая производительность • Простая рекомпиляция может дать прирост производительности • Совместимость с GNU* GCC компилятором • Intel® Cilk™ Plus – параллелизм данных и задач • Поддержка стандартов IEEE 754-2008, С++11 Оптимизации • Поддержка SSE инструкций от SSE до AVX2 • Автоматическая и полуавтоматическая векторизация • Межфайловые оптимизации • Оптимизации с использованием профиля
  32. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Рекомендуемые опции Intel C/C++ компилятора 33 Уровни оптимизации -O0, -O1, -O2, -O3, -Os • -O2 уровень оптимизации по умолчанию • если не включена поддержка отладки –g • -Ofast, -fast Настройки и оптимизации для заданных микроархитектур • -xATOM_SSSE3 • -xATOM_SSE4.2 Настройки точности арифметики • -fp-model fast=1|2 • -no-prec-div Другие полезные опции -ansi-alias, -ipo http://software.intel.com/en-us/android/articles/creating- an-x86-and-arm-apk-using-the-intelr-compiler-and-gnu-gcc
  33. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 34 Intel® Cilk™ Plus
  34. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 35 Intel® Cilk™ Plus int fib(int n) { if (n < 2) return n; int x = fib(n-1); int y = fid(n-2); return x + y; } int fib(int n) { if (n < 2) return n; int x = cilk_spawn fib(n-1); int y = fid(n-2); cilk_sync; return x + y; } Оригинальный код Оптимизированный код for (int i; i<8; ++i) { do_work(i); } cilk_for (int i; i<8; ++i) { do_work(i); } Оригинальный код Оптимизированный код
  35. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 36 Intel® Cilk™ Plus //declaring the function body __declspec((vector)) double ef_add(double x, double y) { return x + y; } //invoking the function using array notation //operations on the whole extent of the arrays a,b,c a[:] = ef_add(b[:], c[:]); //use the full array notation construct to also specify n as an extend and s as a stride a[0:n:s] = ef_add(b[0:n:s], c[0:n:s]); //use the cilk_for construction to invoke the SIMD-enabled function in data parallel context cilk_for (i = 0; i<n; ++i) { a[i] = ef_add(b[i], c[i]); }
  36. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 37 Intel® Cilk™ Plus void add_floats(float *a, float *b, float *c, float *d, float *e, int n) { int i; #pragma simd for (int i; i<8; i++) { a[i] = a[i] + b[i] + c[i] + d[i] + e[i]; } } http://software.intel.com/en-us/intel-cilk-plus
  37. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 40 Оптимизация приложений с Intel® Cilk™ Plus http://habrahabr.ru/company/intel/blog/202088/
  38. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 41 Перенос нативных Android* приложений на x86 • Изменение конфигурации построения (makefiles, файлы конфигурации) • Перенос C/C++ кода • Изменение типов данных • Изменение выравнивания типов данных • Перенос кода с интринсиками • Перенос ассемблерного кода http://software.intel.com/en-us/articles/ndk-android- application-porting-methodologies/
  39. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Расположение данных в памяти union { struct TestStruct { int mVar1; long long mVar2; int mVar3; }; int mVar4[6]; } var; Оригинальный код union { struct TestStruct { int mVar1; long long mVar2 __attribute__ ((aligned(8))); int mVar3; }; int mVar4[6]; } var; Исправленный код
  40. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice ARM* NEON vs. Intel® SSE 43 http://software.intel.com/en-us/blogs/2012/12/12/from-arm-neon-to-intel-mmxsse- automatic-porting-solution-tips-and-tricks // VADD.I8 d0,d0,d0 int8x8_t vadd_s8(int8x8_t a, int8x8_t b); #ifdef USE_MMX #define vadd_s8 _mm_add_pi8 //MMX #else #define vadd_s8 _mm_add_epi8 #endif NEONtoSSE.h
  41. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Примеры 44
  42. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 45 Демо (ffmpeg-2.1.4) • Минимум внешних зависимостей • Используется в нескольких проектах • Простое построение • configure • make –j 16 install http://www.ffmpeg.org --disable-shared --enable-static --enable-pic --disable-doc --disable-symver --enable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-avdevice --disable-doc --target-os=linux --arch=atom --enable-cross-compile --cross-prefix=… --sysroot=…
  43. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 46 Демо (ffmpeg-2.1.4) Преобразование из формата h265 в формат h264 ICC: 60 sec, FPS 17 • fmpeg_icc -i surfing.265 -t 40 -f mp4 -threads 4 -y /dev/null GCC: 87 sec, FPS 11 • fmpeg_gcc -i surfing.265 -t 40 -f mp4 -threads 4 -y /dev/null Опции GCC 4.8: • -O3 -march=atom -funroll-all-loops -ffast-math -fomit-frame-pointer -mfpmath=sse Опции ICC 14.0.1: • -O3 -xATOM_SSSE3 -no-prec-div
  44. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice 47 Демо (Bouncing balls) http://software.intel.com/en-us/videos/intel-c-compiler-for- android-5-optimizing-performance-icc-techniques-to-make- your-app-soar
  45. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Intel® Developer Zone (IDZ) • Учебные материалы и техническая поддержка • Обмен опытом • Специализированные сообщества • Новости из мира технологий Intel Android* Developer Website • Перенос нативных приложений • Советы и руководства • Статьи на техническая темы • Форумы и блоги, которые ведутся инженерами Intel • Информация о SW/HW продуктах Intel для разработчиков на Android www.intel.com/software/android Дополнительная информация
  46. Copyright © 2014, Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. Optimization Notice Legal Disclaimer & Optimization Notice INFORMATION IN THIS DOCUMENT IS PROVIDED “AS IS”. NO LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, TO ANY INTELLECTUAL PROPERTY RIGHTS IS GRANTED BY THIS DOCUMENT. INTEL ASSUMES NO LIABILITY WHATSOEVER AND INTEL DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY, RELATING TO THIS INFORMATION INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT OR OTHER INTELLECTUAL PROPERTY RIGHT. Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. Copyright © 2014, Intel Corporation. All rights reserved. Intel, Pentium, Xeon, Xeon Phi, Core, VTune, Cilk, and the Intel logo are trademarks of Intel Corporation in the U.S. and other countries. Optimization Notice Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice. Notice revision #20110804 50

×