Skip to content

Commit

Permalink
Committing Intel(R) TBB 2018 Update 1 source code
Browse files Browse the repository at this point in the history
  • Loading branch information
tbbdev committed Sep 22, 2017
1 parent b9805ba commit e8b3e24
Show file tree
Hide file tree
Showing 512 changed files with 14,904 additions and 14,218 deletions.
33 changes: 32 additions & 1 deletion CHANGES
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,26 @@
The list of most significant changes made over time in
Intel(R) Threading Building Blocks (Intel(R) TBB).

Intel TBB 2018 Update 1
TBB_INTERFACE_VERSION == 10001

Changes (w.r.t. Intel TBB 2018):

- Added lambda-friendly overloads for parallel_scan.
- Added support of static and simple partitioners in
parallel_deterministic_reduce.

Preview Features:

- Added initial support for Flow Graph Analyzer to parallel_for.
- Added reservation support in overwrite_node and write_once_node.

Bugs fixed:

- Fixed a potential deadlock scenario in the flow graph that affected
Intel TBB 2018.

------------------------------------------------------------------------
Intel TBB 2018
TBB_INTERFACE_VERSION == 10000

Expand All @@ -19,7 +39,7 @@ Changes (w.r.t. Intel TBB 2017 Update 7):
move-only functors.
- A flow graph now spawns all tasks into the same task arena,
and waiting for graph completion also happens in that arena.
- Improved support for Flow Graph Advisor in async_node, opencl_node,
- Improved support for Flow Graph Analyzer in async_node, opencl_node,
and composite_node.
- Added support for Android* NDK r15, r15b.
- Added support for Universal Windows Platform.
Expand Down Expand Up @@ -51,6 +71,17 @@ Bugs fixed:
- Fixed this_task_arena::isolate() function to work correctly with
parallel_invoke and parallel_do algorithms.
- Fixed a memory leak in composite_node.
- Fixed an assertion failure in debug tbbmalloc binaries when
TBBMALLOC_CLEAN_ALL_BUFFERS is used.

------------------------------------------------------------------------
Intel TBB 2017 Update 8
TBB_INTERFACE_VERSION == 9108

Changes (w.r.t. Intel TBB 2017 Update 7):

Bugs fixed:

- Fixed an assertion failure in debug tbbmalloc binaries when
TBBMALLOC_CLEAN_ALL_BUFFERS is used.

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Intel(R) Threading Building Blocks 2018
[![Stable release](https://img.shields.io/badge/version-2018-green.svg)](https://github.com/01org/tbb/releases/tag/2018)
# Intel(R) Threading Building Blocks 2018 Update 1
[![Stable release](https://img.shields.io/badge/version-2018_U1-green.svg)](https://github.com/01org/tbb/releases/tag/2018_U1)
[![Apache License Version 2.0](https://img.shields.io/badge/license-Apache_2.0-green.svg)](LICENSE)

Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that take
Expand Down
19 changes: 13 additions & 6 deletions cmake/TBBMakeConfig.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
#
# Usage:
# include(TBBMakeConfig.cmake)
# tbb_make_config(TBB_ROOT <tbb_root> SYSTEM_NAME <system_name> CONFIG_DIR <var_to_store_config_dir> [CONFIG_FOR_SOURCE TBB_RELEASE_DIR <tbb_release_dir> TBB_DEBUG_DIR <tbb_debug_dir>])
# tbb_make_config(TBB_ROOT <tbb_root> SYSTEM_NAME <system_name> CONFIG_DIR <var_to_store_config_dir> [SAVE_TO] [CONFIG_FOR_SOURCE TBB_RELEASE_DIR <tbb_release_dir> TBB_DEBUG_DIR <tbb_debug_dir>])
#

include(CMakeParseArguments)
Expand All @@ -29,7 +29,7 @@ include(CMakeParseArguments)
set(_tbb_cmake_module_path ${CMAKE_CURRENT_LIST_DIR})

function(tbb_make_config)
set(oneValueArgs TBB_ROOT SYSTEM_NAME CONFIG_DIR TBB_RELEASE_DIR TBB_DEBUG_DIR)
set(oneValueArgs TBB_ROOT SYSTEM_NAME CONFIG_DIR SAVE_TO TBB_RELEASE_DIR TBB_DEBUG_DIR)
set(options CONFIG_FOR_SOURCE)
cmake_parse_arguments(tbb_MK "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})

Expand All @@ -38,7 +38,12 @@ function(tbb_make_config)
set(tbb_system_name ${tbb_MK_SYSTEM_NAME})
endif()

file(MAKE_DIRECTORY ${tbb_MK_TBB_ROOT}/cmake)
set(tbb_config_dir ${tbb_MK_TBB_ROOT}/cmake)
if (tbb_MK_SAVE_TO)
set(tbb_config_dir ${tbb_MK_SAVE_TO})
endif()

file(MAKE_DIRECTORY ${tbb_config_dir})

set(TBB_DEFAULT_COMPONENTS tbb tbbmalloc tbbmalloc_proxy)

Expand Down Expand Up @@ -142,6 +147,8 @@ endif()")
set(TBB_LIB_PREFIX "lib")
set(TBB_LIB_EXT "so")
set(TBB_CHOOSE_COMPILER_SUBDIR "set(_tbb_compiler_subdir .)")
else()
message(FATAL_ERROR "Unsupported OS name: ${tbb_system_name}")
endif()

file(READ "${tbb_MK_TBB_ROOT}/include/tbb/tbb_stddef.h" _tbb_stddef)
Expand All @@ -155,8 +162,8 @@ endif()")
else()
set(_tbb_config_template TBBConfig.cmake.in)
endif()
configure_file(${_tbb_cmake_module_path}/templates/${_tbb_config_template} ${tbb_MK_TBB_ROOT}/cmake/TBBConfig.cmake @ONLY)
configure_file(${_tbb_cmake_module_path}/templates/TBBConfigVersion.cmake.in ${tbb_MK_TBB_ROOT}/cmake/TBBConfigVersion.cmake @ONLY)
configure_file(${_tbb_cmake_module_path}/templates/${_tbb_config_template} ${tbb_config_dir}/TBBConfig.cmake @ONLY)
configure_file(${_tbb_cmake_module_path}/templates/TBBConfigVersion.cmake.in ${tbb_config_dir}/TBBConfigVersion.cmake @ONLY)

set(${tbb_MK_CONFIG_DIR} ${tbb_MK_TBB_ROOT}/cmake PARENT_SCOPE)
set(${tbb_MK_CONFIG_DIR} ${tbb_config_dir} PARENT_SCOPE)
endfunction()
45 changes: 45 additions & 0 deletions cmake/tbb_config_generator.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Copyright (c) 2017 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
#
#

function(tbb_conf_gen_print_help)
message("Usage: cmake -DTBB_ROOT=<tbb_root> -DTBB_OS=Linux|Windows|Darwin [-DSAVE_TO=<path>] -P tbb_config_generator.cmake")
endfunction()

if (NOT DEFINED TBB_ROOT)
tbb_conf_gen_print_help()
message(FATAL_ERROR "Required parameter TBB_ROOT is not defined")
endif()

if (NOT EXISTS "${TBB_ROOT}")
tbb_conf_gen_print_help()
message(FATAL_ERROR "TBB_ROOT=${TBB_ROOT} does not exist")
endif()

if (NOT DEFINED TBB_OS)
tbb_conf_gen_print_help()
message(FATAL_ERROR "Required parameter TBB_OS is not defined")
endif()

if (DEFINED SAVE_TO)
set(tbb_conf_gen_save_to_param SAVE_TO ${SAVE_TO})
endif()

include(${CMAKE_CURRENT_LIST_DIR}/TBBMakeConfig.cmake)
tbb_make_config(TBB_ROOT ${TBB_ROOT} CONFIG_DIR tbb_config_dir SYSTEM_NAME ${TBB_OS} ${tbb_conf_gen_save_to_param})

message(STATUS "TBBConfig files were created in ${tbb_config_dir}")
2 changes: 1 addition & 1 deletion doc/html/a00008.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions doc/html/a00009.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions doc/html/a00010.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions doc/html/a00011.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions doc/html/a00012.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions doc/html/a00013.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions doc/html/a00014.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions doc/html/a00015.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions doc/html/a00016.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit e8b3e24

Please sign in to comment.