Intel® Array Building Blocks Known Issues and Limitations

The following are known issues in Intel® Array Building Blocks (Intel® ArBB) beta releases. Some issues span multiple architectures and/or operating systems and some relate only to a single architecture or operating system.

Intel® Array Building Blocks 1.0 Beta 6

  • Rarely, building the sample code using Microsoft* Visual Studio* 2005 with the default configuration (debug | 32-bit) causes the IDE to crash.
  • Error "Can't find MSVSR90.dll" if the Intel® ArBB software is installed on a virtual (mapped) drive. (How to resolve)

Intel® Array Building Blocks 1.0 Beta 5

    • Intel® ArBB has known performance issues with AVX256. While these issues being worked on, Intel ArBB Beta 5 by default generates AVX128 instructions rather than AVX256 instructions on Sandy Bridge.
    • There are known issues when the O3 mode is enabled for ArBB in threaded applications. Users are advised to set the O2 mode when using ArBB in threaded applications.
    • Error "Can't find MSVSR90.dll" if the Intel® ArBB software is installed on a virtual (mapped) drive. (How to resolve)
    • Intel® ArBB variables is not displayed correctly in Microsoft* Visual Studio* debugger if code is built with CLR support. (How to resolve)

    Intel® Array Building Blocks 1.0 Beta 4


    Core API and Types

    • ARBB_INIT_HEAP and ARBB_MAX_HEAP do not process problem sizes exceeding 1GB in memory.
    • For simple cases, map operations are faster than vector operation for functionally identical implementations in O3 mode.
    • Induction variables within _for loops cannot be named ‘c’ due to name clash.
    • Operator arbb::neighbor() is not working correctly for 2D dense bound to C/C++ arrays in O2 mode.

    Intel® Array Building Blocks 1.0 Beta 3


    Binary Compatibility

    • Intel ArBB Beta 3 and previous beta releases are binary incompatible. Code compiled using the previous beta SDK will not run in the Beta 3 environment. Code must be recompiled using the Beta 3 SDK.

    Installation and Configuration

    • The User Account Control (UAC) of Windows* OS may prevent non-Administrator users from building sample programs installed in protected folders (for example, C:\Program Files\ and its sub-folders). The workaround is to disable UAC or install sample programs in an unprotected folder.
    • Incompatible versions of tbb.dll and tbb_debug.dll between Intel ArBB and Intel® C++ Compiler for users who have both products installed on Windows* OS. (How to resolve)
    • Installing or uninstalling Microsoft* Visual C++* Debugger Integration fails if system protection for the user is not turned off on Windows* OS. (How to resolve)
    • Silent installation on Linux* OS crashes with segmentation fault.

    Core API and Types

    • The emulation mode (ARBB_OPT_LEVEL=O0) sometimes leads to "out of heap" exceptions for big data sets.
    • The behavior of the O1 mode (ARBB_OPT_LEVEL=O1) is not defined. Using O1 or any other unsupported value in this release leads to runtime crash.
    • Setting ARBB_OPT_LEVEL to anything other than O0, O2, and O3 leads to a runtime crash.

    Debugging Support

    • Debugging support only works for the emulation mode. That is, the Intel ArBB optimization level must be set to O0 using the environment variable ARBB_OPT_LEVEL. Programs with big input size may run very slow or even crash in this mode.
    Pour de plus amples informations sur les optimisations de compilation, consultez notre Avertissement concernant les optimisations.