On, October 15, 2014, Intel has released the new Intel© Integrated Native Developer Experience 2015 toolkit (otherwise known as Intel© INDE). This product provides a collection of "best-in-class" tools and libraries that help you quickly and easily create cross-platform apps that take advantage of the native performance of your underlying Android* or Windows* platform. Bundled within Intel INDE is everything from A to Z for your complete application development workflow: environment setup (IDE integration for Android*), common function libraries optimized for each platform (such as media, threading libraries, and utility libraries), compilers, debugging tools, and analysis and optimization tools.
You can get coding now by downloading the Starter Edition (a free download) from the Intel INDE Home Page, or evaluate the Ultimate Edition.
If you’re familiar with the Intel INDE Beta product, this new release is more polished in every way - more tools, broader platform support (including OS X* as a client system for Android* development), and integration with the Intel© Software Manager for license and update management.
So what’s my role with Intel INDE? I’m a Senior Technical Consulting Engineer within Intel, which means that I act as a bridge between customers, the development team, and the marketing team. Simply stated, my job is to help customers successfully use the product. I’ve been working with Intel INDE for about six months, and before that I’ve worked for more than five years with the Intel INDE analysis tools. So look for me to be quite active blogging about the product.
Why is Intel INDE important?
First of all, Android* is now running on over 2 billion devices - not exactly a small number! And if you want to develop for the mobile marketplace, you’ll find that getting started on the Android* platform is hard. Gaming legend John Carmack (now CTO of Oculus VR*), has recently stated "Brace yourself: Android setup and development really does suck. It’s no fun at all." 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.
Intel INDE Workflow
Here’s more detailed information about how Intel INDE addresses each phase of the development workflow:
- Setup: Let’s start with your environment setup. Of course, to target Windows* platforms use your existing Visual Studio* environment. For Android* target systems, you have your 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.
- 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), Media RAW Accelerator, Audio for Windows*, and the Media SDK (Windows* only). Most of these tools support multiple platforms, so your code is easily transportable. Then compile using the Intel C++ compiler, or use the GCC compiler for ARM* or x86-based devices.
- Debug: Debug Android* apps from Visual Studio* with the Intel INDE plugin. Or on the Android* platform use the Graphics Frame Debugger to debug your graphics apps (including some limited ARM* support for Android*).
- 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.
You may recognize many of these components as existing Intel tools - Intel INDE bundles both Intel and 3rd-party software tools into a single product to streamline tool management and compatibility.
And you may have seen ARM* mentioned above. Yes, Intel INDE enables creation of Windows* applications on Intel© Architecture and Android* applications on ARM* and Intel© Architecture. I’ll spend some time discussing the details of our ARM* support in a future blog.
To get coding now visit the Intel INDE Home Page to download the free Starter Edition of Intel INDE, learn more about the Professional Edition, or evaluate the Ultimate Edition. As I’ve just glossed over the product in this article, you’ll want to find out for yourself how Intel INDE can help you quickly and easily develop great apps on multiple platforms.
And watch for blogs and Knowledge Base articles from team members and myself for additional "tips & tricks".
For more such Android resources and tools from Intel, please visit the Intel® Developer Zone