Creating a Library from IPO Objects
Linux* and OS X*Libraries are often created using a library manager such as xiar for Linux*/OS X* or lib for Windows. Given a list of objects, the library manager will insert the objects into a named...
View ArticleFunction List
Many routines in the Intel® Math Library are more highly optimized for Intel® microprocessors than for non-Intel microprocessors.The mathimf.h header file includes prototypes for Intel® Math Library...
View ArticleOptimize the Serial Program
The first step is to ensure that the C/C++ serial program has good performance and that normal optimization methods, including compiler optimization, have already been used.As one simple, and limited,...
View Article__cilkrts_get_total_workers
int __cilkrts_get_total_workers (void);In order to allow more than one user-created thread to share the same set of workers, the runtime system may allocate more worker slots than are active at a given...
View ArticleWhy does the STL uses size_t and not ptrdiff_t for array indexing ?
Hi, Designing my own array class, I ended up using the ptrdiff_t type for array indexing. The fact that this type is signed make it safer for loops such asfor (ptrdiff_t k = 0; k < v.size() - 1;...
View Article_mm512_rem_epu64
Calculates remainder of a division operation. Vector variant of rem() function for unsigned 64-bit integer arguments.This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC...
View Article_mm512_div_ps/ _mm512_mask_div_ps
Calculates quotient of a division operation. Vector variant of div() function for float32 arguments.This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC...
View Article_mm512_packstorehi_ps/_mm512_mask_packstorehi_ps
Packs mask-enabled elements of float32 vector to form an unaligned float32 stream and stores that portion of the stream that maps to the high 64-byte aligned portion of the memory destination....
View Article_mm512_store_ps/_mm512_mask_store_ps
Stores float32 vector. Corresponding instruction is VMOVAPS. This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).SyntaxWithout Maskextern void __cdecl...
View Article_mm512_set[r]4_epi32
Sets elements of an int32 vector using specified values in a 16-element sequence - dcbadcbadcbadcba. There is no corresponding instruction. This intrinsic only applies to Intel® Many Integrated Core...
View Article_mm512_log2ae23_ps/ _mm512_mask_log2ae23_ps
Calculates base-2 logarithm of float32 vector, with absolute error bounded by 2^(-23). Corresponding instruction is VLOG2PS. This intrinsic only applies to Intel® Many Integrated Core Architecture...
View ArticleFast approximate of transcendental operations
Hi,You might know the "Carmack" trick to have a fast and crude approximation of 1/sqrt(x). It isfloat Q_rsqrt( float number ) { long i; float x2, y; const float threehalfs = 1.5F; x2 = number * 0.5F; y...
View ArticleDisplaying Options Passed to Offload Compilation
This topic only applies to Intel® MIC Architecture.Certain compiler options are passed to offload compilation automatically.To display compiler options that are passed to offload compilation after they...
View ArticlePassing Options to the Linker
Specifying Linker OptionsThis topic describes the options that let you control and customize linking with tools and libraries and define the output of the linker.Windows*This section describes options...
View ArticleDeclaration in Scope of Function Defined in a Namespace
In accordance with the C++ language specification, if a function declaration is encountered within a function definition, the function referenced is taken to be another member of the namespace of the...
View ArticleStatic Analysis Overview
Static Analysis is a deprecated feature.Static Analysis is not supported on OS X* systems.Static analysis is the process of finding errors and security weaknesses in software through detailed analysis...
View ArticleProfile Function or Loop Execution Time
This topic describes how to profile an application for function or loop execution time. Using the instrumentation method to profile function or loop execution time provides an easy means of getting a...
View ArticleChecking for Dangling Pointers
The pointer checker is not supported on OS X* systems.When dangling pointer checking or heap is enabled, the compiler uses a wrapper for the C runtime function free() and the C++ delete operator. These...
View ArticleUsing Code Coverage in Visual Studio*
The code coverage tool provides the ability to determine how much application code is executed when a specific workload is applied to the application. The tool analyzes static profile information...
View ArticleGuided Auto Parallelism Invocation dialog box
The following topic applies to Eclipse* for C/C++.Use the Guided Auto Parallelism invocation dialog box to specify settings for Guided Auto Parallelism (GAP).To access the Guided Auto Parallelism...
View Article