TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
Go native benchmark test su dispositivi x86: java, ndk, ipp e tbb
1. Go Native?
Benchmark test su dispositivi x86:
Java, NDK, IPP e TBB
Francesca Tosi Alberto Mancini
francesca@jooink.com alberto@jooink.com
2. Francesca
Web and mobile developer
software engineer and architect
with a passion for clean code
and fine tuned details
Intel Software Innovator
francesca@jooink.com
@francescatosi
+FrancescaTosi
www.jooink.com
3. Alberto
Software Developer
(Web & Mobile);
Linux Sysadmin
DevOp.
Intel Software Innovator
alberto@jooink.com
+AlbertoMancini
www.jooink.com
4. Why NDK?
The NDK is a toolset that allows you to implement
parts of your app using native-code languages such
as C and C++.
You should understand that the NDK will not benefit
most apps. As a developer, you need to balance its
benefits against its drawbacks.
!!NDK is not always the right choice http://goo.gl/LrmM5G
5. Why NDK?
While developing expensive (from the computational
point of view) apps
→ we must optmize
We decided to test the performance of NDK.
22. Intel INDE
Integrated
Native
Development
Experience
INDE is a cross-platform suite
that provides developers with
tools, support, integration and
updates to create high-performance
C++/Java
applications.
23. Intel INDE
Integrated
Native
Development
Experience
→ download
https://software.intel.com/en-us/intel-inde
→ integrates with:
- Android Studio
- Eclipse
- Ms Visual Studio (*)
25. Intel INDE
Integrated
Native
Development
Experience
→ Intel HAXM
The Intel Hardware Accelerated
Execution Manager is an
hardware-assisted virtualization
engine (hypervisor) to speed up
Android app emulation.
26. Intel INDE
Integrated
Native
Development
Experience
→ Intel C++ compiler for Android
27. Intel IPP
Integrated Performance Primitives
Extensive Library of higly optimized (Intel SSE, Intel AVX)
software functions for:
- multimedia
- data processing
- communication
28. Intel IPP
Integrated Performance Primitives
Components:
- Signal Processing (filtering, transform)
- Image Processing (color conversion, wavelet transforms, computer vision)
- Small Matrices and Rendering (matrix algebra, Eigen problem)
- Cryptografy (RSA, DSA, prime & pseudorandom number generation)
29. Intel TBB
Threading Bulding Blocks
Open source project (www.threadingbuilingblocks.org)
Let’s you easly write parallel C++ programs that takes
full advantage of multicore performance, that are
portable & composable