Intel has released what it says is 'the first' suite of tools for the development of native applications across architectures, operating systems and integrated development environments (IDE.)
The acronym Intel INDE stands for Integrated Native Developer Experience.
This is essentially a productivity suite of C++ and Java tools and libraries designed to speed software application development of mobile and PC applications on Intel Architecture and Android applications on ARM and Intel Architecture.
Where does the speed come from?
The speed is achieved through code reuse and integrated workflow support.
Developers have the freedom to use Intel INDE within the IDE they prefer, including Microsoft Visual Studio, Google Android Studio, and Eclipse.
Intel INDE provides access to advanced platform capabilities like media acceleration, context sensing, OpenCL 2.0 and threading libraries, with a selection of compilers, analysers and debugging tools.
Media acceleration, you say?
Yes media acceleration -- Media Accelerator technologies are intelligent graphics engine powers built into the chipset itself.
Context sensing, you say?
Yes context sensing, this is another one of those terms that Intel expects us to understand - what is means is the ability for developers to create cross-platform context-aware experiences that understand the context of any action or event: build into an application there is the ability to understand user preferences & anticipate behaviour.
Intel INDE is available immediately in three editions: Starter, Professional and Ultimate.
Why is Intel INDE important?
First of all says Intel, Android is now running on over 2 billion devices (says Intel).
If we want to develop for the mobile marketplace, you'll find that getting started on the Android platform is hard.
Gaming legend John Carmack recently stated "Brace yourself: Android setup and development really does suck. It's no fun at all."
Intel's Jeff McVeigh, general manager of performance client and visual computing asserts, "So not only does Intel INDE make Android IDE setup a snap, but it will help you develop apps that run at native performance on each platform. And you don't have to spend months learning to optimize for the performance and power characteristics of each and every target device."
Development workflow phases
McVeigh says that Intel INDE addresses each phase of the development workflow:
• Setup: To target Windows platforms use an existing Visual Studio environment. For Android target systems, users have a choice of Android development IDE's: Microsoft Visual Studio, Eclipse and Android Studio.
"So if you've been developing for the Windows platform, the Android plugin for Visual Studio allows you to leverage your existing Windows development expertise over to the Android platform. Or if you're only developing for Android, Eclipse might make sense for you," said McVeigh.
• Build: Then add one or more libraries of common functions that have been optimized for the Android and Windows platforms: OpenCL Code Builder, Media for Mobile, the Context Sensing SDK, Intel Integrated Performance Primitives (Intel IPP), Intel Threaded Building Blocks (Intel TBB), and the Media SDK (Windows only).
"Most of these tools work on multiple platforms, so your code is easily transportable across platforms. Then compile using the Intel C++ compiler, or use the GCC compiler for ARM* or x86-based devices," said McVeigh.
• Debug: Debug Android apps from Visual Studio with the Intel INDE plugin, or use the Graphics Frame Debugger to debug your graphics apps on Android (both Intel x86 and limited ARM* devices).
• Analyze and Optimize: Use System Analyzer to view key system metrics (CPU, GPU, and power utilization) to determine if your app is CPU-bound or GPU-bound, use Graphics Frame Analyzer to pinpoint graphics pipeline rendering issues, and use Platform Analyzer to visualize the interaction of your app's threads across the CPU cores and the GPU.
Intel INDE bundles both Intel and 3rd-party software tools into a single product to streamline tool management and compatibility.