Compiler Topics
Intel® Cluster Studio XE works on Xeon® Phi coprocessor? OpenMP*? TBB? MPI?
Intel(R) Cluster Studio XE 2013 is a powerful tool suite - which helps you to develop applications, with low latency Intel MPI library, high performance C++/FORTRAN compiler, native profiling component named VTune™ Amplifier XE 2013, node level analysis component named Intel® Trace Collector/Analyzer, Threading and memory correctness components named Inspector XE 2013.
Purposes of this article are:
Intel C++ compiler requires ia32 glibc and libgcc libraries on Intel64 host system
Intel C++ compiler is one of the components in Intel system studio. After you installed the Intel system studio on an Intel64 system, when you invoke the Intel compiler for a compilation, you may have the following error:
bash: /opt/intel/system_studio_2013.0.016/bin/intel64/icc: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
Or you may encounter the following error:
icc: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory
An Introduction to the Cilk Screen Race Detector
One of the pitfalls of parallel programming is the need to consider whether your code modifies a memory location in two parallel strands. Doing so is called a race because whether you get the correct answer depends on the timing of the executed instructions. Parallel reads are OK, since the value doesn’t change. But two writes, or a read and a write in parallel are errors. Consider the following code which increments a global location:
Intel(R) C++ Compiler Run-time libraries in Intel(R) System Studio
If you build the the application with Intel(R) C++ Compiler dynamically, you will need to make the Intel C++ Compiler runtime libraries available on the target platform. For the current system studio system_studio_2013.0.016, due to a packaging issue, some runtime libraries are missed in the the compiler runtime libraries for target system.
This issue has been tracked by DPD200241981.
To work-around the issue, we can copy all the necessary libraries from the compiler installation folder on the host system.
Memory Movement and Initialization: Optimization and Control
Compiler Methodology for Intel® MIC Architecture
Overview
Are you initializing data or copying blocks of data from one variable to another in your application? Probably so. Moving or setting blocks of data is very common. So how to best optimization these operations for Intel(R) Xeon Phi(TM) Coprocessors?
Windows* 8 OS Tutorial: Writing a Multithreaded Application for the Windows Store* using Intel® Threading Building Blocks - now with DLLs.
This article explains how to build a simple application for the Windows Store* using Intel Threading Building Blocks (Intel® TBB).
Link error with icpc when using Boost* 1.51+ MPL library and g++*
Problem
Link error with icpc: when linking object files compiled with icpc & g++* along with Boost* MPL library 1.51 or above, as shown in the sample test case below:
%cat t.h
#include <boost/mpl/vector.hpp>
template<typename T> struct my;
void foo(my<boost::mpl::vector<> >* = 0);
%cat u.cpp
#include "t.h"
int main() { foo();}
Intel® System Studio Training Materials
Here are useful slide decks to enhance your learning of Intel System Studio:
- Overview
- Build and Design
EmbeddedWorld Signal Processing and Power Management Workshop
This is the conference paper describing Intel® System Studio in great detail in-lieu of the Signal Processing and Power Management Workshop.
