diff options
author | adam <adam@pkgsrc.org> | 2021-07-14 17:56:16 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2021-07-14 17:56:16 +0000 |
commit | 5fd6d9437bc5c40bc2290196daa094e91d5a2df2 (patch) | |
tree | e955ceba452defcfa181385ff98589837d55fbfc /parallel | |
parent | d82e96630c89258b5e557b657e33433d846b3de1 (diff) | |
download | pkgsrc-5fd6d9437bc5c40bc2290196daa094e91d5a2df2.tar.gz |
threadingbuildingblocks: updated to 2021.3.0
New in 2021.3 Release
New Features
Since C++20 multiple interfaces are constrained to enforce requirements on argument types.
Preview Features
Extended the high-level task API to simplify migration from TBB to oneTBB.
Added mutex and rw_mutex that are suitable for long critical sections and resistant to high contention.
Added ability to customize the concurrent_hash_map mutex type.
Added heterogeneous lookup, erase, and insert operations to concurrent_hash_map.
Known Limitations
An application using Parallel STL algorithms in libstdc++ versions 9 and 10 may fail to compile due to incompatible interface changes between earlier versions of Threading Building Blocks (TBB) and oneAPI Threading Building Blocks (oneTBB). Disable support for Parallel STL algorithms by defining PSTL_USE_PARALLEL_POLICIES (in libstdc++ 9) or _GLIBCXX_USE_TBB_PAR_BACKEND (in libstdc++ 10) macro to zero before inclusion of the first standard header file in each translation unit.
On Linux, if oneAPI Threading Building Blocks (oneTBB) or Threading Building Blocks (TBB) is installed in a system folder like /usr/lib64, the application may fail to link due to the linker search order for libraries. Use the -L linker option to specify the correct location of oneTBB libraries. This issue does not affect program execution.
The oneapi::tbb::info namespace interfaces might unexpectedly change the process affinity mask on Windows systems (see https://github.com/open-mpi/hwloc/issues/366 for details).
Bugs Fixed
Fixed several issues in parallel algorithms and concurrent containers on ARM.
Improved ThreadSanitizer support for the oneTBB Scalable Memory Allocator.
Improved scheduler to reduce the impact of thread priority inversion.
Fixed the behavior of affinity_partitioner and static_partitioner to resolve possible performance issues.
Fixed crash when finalize is called with null scheduler_handler.
Fixed the oneTBB assertion mechanism to avoid possible leaking of user directory paths.
Fixed crash in resumable tasks on ARM-based macOS.
Fixed compilation failures
Diffstat (limited to 'parallel')
-rw-r--r-- | parallel/threadingbuildingblocks/Makefile | 28 | ||||
-rw-r--r-- | parallel/threadingbuildingblocks/PLIST | 183 | ||||
-rw-r--r-- | parallel/threadingbuildingblocks/distinfo | 13 |
3 files changed, 118 insertions, 106 deletions
diff --git a/parallel/threadingbuildingblocks/Makefile b/parallel/threadingbuildingblocks/Makefile index 21c61d83d36..206850251a3 100644 --- a/parallel/threadingbuildingblocks/Makefile +++ b/parallel/threadingbuildingblocks/Makefile @@ -1,37 +1,21 @@ -# $NetBSD: Makefile,v 1.9 2020/09/05 11:34:07 ryoon Exp $ +# $NetBSD: Makefile,v 1.10 2021/07/14 17:56:16 adam Exp $ -DISTNAME= oneTBB-2020.3 +DISTNAME= oneTBB-2021.3.0 PKGNAME= ${DISTNAME:S/oneTBB-/threadingbuildingblocks-/} CATEGORIES= parallel MASTER_SITES= ${MASTER_SITE_GITHUB:=oneapi-src/} -EXTRACT_SUFX= .tar.gz GITHUB_PROJECT= oneTBB GITHUB_TAG= v${PKGVERSION_NOREV} MAINTAINER= asau@inbox.ru HOMEPAGE= https://www.threadingbuildingblocks.org/ COMMENT= Threading Buildling Blocks +LICENSE= apache-2.0 -USE_LANGUAGES= c c++ -USE_TOOLS= gmake pax -MAKE_FLAGS= tbb_build_prefix=build # use fixed path -MAKE_FLAGS+= native_compiler=${CC_VERSION:C/-[[:digit:]].*//} -MAKE_FLAGS+= compiler=${CC_VERSION:C/-[[:digit:]].*//} -BUILD_TARGET= default +USE_CMAKE= yes +USE_LANGUAGES= c c++11 +CMAKE_ARGS+= -DTBB_STRICT=OFF TEST_TARGET= test -pre-configure: - cd ${WRKSRC}/build/ && cp FreeBSD.gcc.inc NetBSD.gcc.inc && cp FreeBSD.inc NetBSD.inc - -INSTALLATION_DIRS= include lib - -do-install: - ${INSTALL_LIB} ${WRKSRC}/build/build_release/libtbb.so ${DESTDIR}${PREFIX}/lib/ - ${INSTALL_LIB} ${WRKSRC}/build/build_release/libtbbmalloc.so ${DESTDIR}${PREFIX}/lib/ - (cd ${WRKSRC}/include && pax -rw tbb ${DESTDIR}${PREFIX}/include/) -# documentation: -# (cd $(WRKSRC)/doc/html && pax -rw . $(DESTDIR)$(PREFIX)/share/doc/html/$(PKGBASE)/) -# $(INSTALL_DATA) $(WRKSRC)/doc/Release_Notes.txt $(DESTDIR)$(PREFIX)/share/doc/$(PKGBASE)/ - .include "../../mk/pthread.buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/parallel/threadingbuildingblocks/PLIST b/parallel/threadingbuildingblocks/PLIST index 25a742759c0..9e60f603307 100644 --- a/parallel/threadingbuildingblocks/PLIST +++ b/parallel/threadingbuildingblocks/PLIST @@ -1,17 +1,98 @@ -@comment $NetBSD: PLIST,v 1.2 2020/09/05 11:34:07 ryoon Exp $ -include/tbb/aggregator.h -include/tbb/aligned_space.h -include/tbb/atomic.h +@comment $NetBSD: PLIST,v 1.3 2021/07/14 17:56:16 adam Exp $ +include/oneapi/tbb.h +include/oneapi/tbb/blocked_range.h +include/oneapi/tbb/blocked_range2d.h +include/oneapi/tbb/blocked_range3d.h +include/oneapi/tbb/blocked_rangeNd.h +include/oneapi/tbb/cache_aligned_allocator.h +include/oneapi/tbb/combinable.h +include/oneapi/tbb/concurrent_hash_map.h +include/oneapi/tbb/concurrent_lru_cache.h +include/oneapi/tbb/concurrent_map.h +include/oneapi/tbb/concurrent_priority_queue.h +include/oneapi/tbb/concurrent_queue.h +include/oneapi/tbb/concurrent_set.h +include/oneapi/tbb/concurrent_unordered_map.h +include/oneapi/tbb/concurrent_unordered_set.h +include/oneapi/tbb/concurrent_vector.h +include/oneapi/tbb/detail/_aggregator.h +include/oneapi/tbb/detail/_aligned_space.h +include/oneapi/tbb/detail/_allocator_traits.h +include/oneapi/tbb/detail/_assert.h +include/oneapi/tbb/detail/_concurrent_queue_base.h +include/oneapi/tbb/detail/_concurrent_skip_list.h +include/oneapi/tbb/detail/_concurrent_unordered_base.h +include/oneapi/tbb/detail/_config.h +include/oneapi/tbb/detail/_containers_helpers.h +include/oneapi/tbb/detail/_exception.h +include/oneapi/tbb/detail/_flow_graph_body_impl.h +include/oneapi/tbb/detail/_flow_graph_cache_impl.h +include/oneapi/tbb/detail/_flow_graph_impl.h +include/oneapi/tbb/detail/_flow_graph_indexer_impl.h +include/oneapi/tbb/detail/_flow_graph_item_buffer_impl.h +include/oneapi/tbb/detail/_flow_graph_join_impl.h +include/oneapi/tbb/detail/_flow_graph_node_impl.h +include/oneapi/tbb/detail/_flow_graph_node_set_impl.h +include/oneapi/tbb/detail/_flow_graph_nodes_deduction.h +include/oneapi/tbb/detail/_flow_graph_tagged_buffer_impl.h +include/oneapi/tbb/detail/_flow_graph_trace_impl.h +include/oneapi/tbb/detail/_flow_graph_types_impl.h +include/oneapi/tbb/detail/_hash_compare.h +include/oneapi/tbb/detail/_machine.h +include/oneapi/tbb/detail/_mutex_common.h +include/oneapi/tbb/detail/_namespace_injection.h +include/oneapi/tbb/detail/_node_handle.h +include/oneapi/tbb/detail/_pipeline_filters.h +include/oneapi/tbb/detail/_pipeline_filters_deduction.h +include/oneapi/tbb/detail/_range_common.h +include/oneapi/tbb/detail/_rtm_mutex.h +include/oneapi/tbb/detail/_rtm_rw_mutex.h +include/oneapi/tbb/detail/_scoped_lock.h +include/oneapi/tbb/detail/_segment_table.h +include/oneapi/tbb/detail/_small_object_pool.h +include/oneapi/tbb/detail/_string_resource.h +include/oneapi/tbb/detail/_task.h +include/oneapi/tbb/detail/_template_helpers.h +include/oneapi/tbb/detail/_utils.h +include/oneapi/tbb/detail/_waitable_atomic.h +include/oneapi/tbb/enumerable_thread_specific.h +include/oneapi/tbb/flow_graph.h +include/oneapi/tbb/flow_graph_abstractions.h +include/oneapi/tbb/global_control.h +include/oneapi/tbb/info.h +include/oneapi/tbb/memory_pool.h +include/oneapi/tbb/mutex.h +include/oneapi/tbb/null_mutex.h +include/oneapi/tbb/null_rw_mutex.h +include/oneapi/tbb/parallel_for.h +include/oneapi/tbb/parallel_for_each.h +include/oneapi/tbb/parallel_invoke.h +include/oneapi/tbb/parallel_pipeline.h +include/oneapi/tbb/parallel_reduce.h +include/oneapi/tbb/parallel_scan.h +include/oneapi/tbb/parallel_sort.h +include/oneapi/tbb/partitioner.h +include/oneapi/tbb/profiling.h +include/oneapi/tbb/queuing_mutex.h +include/oneapi/tbb/queuing_rw_mutex.h +include/oneapi/tbb/rw_mutex.h +include/oneapi/tbb/scalable_allocator.h +include/oneapi/tbb/spin_mutex.h +include/oneapi/tbb/spin_rw_mutex.h +include/oneapi/tbb/task.h +include/oneapi/tbb/task_arena.h +include/oneapi/tbb/task_group.h +include/oneapi/tbb/task_scheduler_observer.h +include/oneapi/tbb/tbb_allocator.h +include/oneapi/tbb/tbbmalloc_proxy.h +include/oneapi/tbb/tick_count.h +include/oneapi/tbb/version.h include/tbb/blocked_range.h include/tbb/blocked_range2d.h include/tbb/blocked_range3d.h include/tbb/blocked_rangeNd.h include/tbb/cache_aligned_allocator.h include/tbb/combinable.h -include/tbb/compat/condition_variable -include/tbb/compat/ppl.h -include/tbb/compat/thread -include/tbb/compat/tuple include/tbb/concurrent_hash_map.h include/tbb/concurrent_lru_cache.h include/tbb/concurrent_map.h @@ -21,103 +102,49 @@ include/tbb/concurrent_set.h include/tbb/concurrent_unordered_map.h include/tbb/concurrent_unordered_set.h include/tbb/concurrent_vector.h -include/tbb/critical_section.h include/tbb/enumerable_thread_specific.h include/tbb/flow_graph.h include/tbb/flow_graph_abstractions.h -include/tbb/flow_graph_opencl_node.h include/tbb/global_control.h -include/tbb/index.html include/tbb/info.h -include/tbb/internal/_aggregator_impl.h -include/tbb/internal/_allocator_traits.h -include/tbb/internal/_concurrent_queue_impl.h -include/tbb/internal/_concurrent_skip_list_impl.h -include/tbb/internal/_concurrent_unordered_impl.h -include/tbb/internal/_deprecated_header_message_guard.h -include/tbb/internal/_flow_graph_async_msg_impl.h -include/tbb/internal/_flow_graph_body_impl.h -include/tbb/internal/_flow_graph_cache_impl.h -include/tbb/internal/_flow_graph_impl.h -include/tbb/internal/_flow_graph_indexer_impl.h -include/tbb/internal/_flow_graph_item_buffer_impl.h -include/tbb/internal/_flow_graph_join_impl.h -include/tbb/internal/_flow_graph_node_impl.h -include/tbb/internal/_flow_graph_node_set_impl.h -include/tbb/internal/_flow_graph_nodes_deduction.h -include/tbb/internal/_flow_graph_streaming_node.h -include/tbb/internal/_flow_graph_tagged_buffer_impl.h -include/tbb/internal/_flow_graph_trace_impl.h -include/tbb/internal/_flow_graph_types_impl.h -include/tbb/internal/_mutex_padding.h -include/tbb/internal/_node_handle_impl.h -include/tbb/internal/_range_iterator.h -include/tbb/internal/_tbb_hash_compare_impl.h -include/tbb/internal/_tbb_strings.h -include/tbb/internal/_tbb_trace_impl.h -include/tbb/internal/_tbb_windef.h -include/tbb/internal/_template_helpers.h -include/tbb/internal/_warning_suppress_disable_notice.h -include/tbb/internal/_warning_suppress_enable_notice.h -include/tbb/internal/_x86_eliding_mutex_impl.h -include/tbb/internal/_x86_rtm_rw_mutex_impl.h -include/tbb/iterators.h -include/tbb/machine/gcc_arm.h -include/tbb/machine/gcc_generic.h -include/tbb/machine/gcc_ia32_common.h -include/tbb/machine/gcc_itsx.h -include/tbb/machine/ibm_aix51.h -include/tbb/machine/icc_generic.h -include/tbb/machine/linux_common.h -include/tbb/machine/linux_ia32.h -include/tbb/machine/linux_ia64.h -include/tbb/machine/linux_intel64.h -include/tbb/machine/mac_ppc.h -include/tbb/machine/macos_common.h -include/tbb/machine/mic_common.h -include/tbb/machine/msvc_armv7.h -include/tbb/machine/msvc_ia32_common.h -include/tbb/machine/sunos_sparc.h -include/tbb/machine/windows_api.h -include/tbb/machine/windows_ia32.h -include/tbb/machine/windows_intel64.h include/tbb/memory_pool.h -include/tbb/mutex.h include/tbb/null_mutex.h include/tbb/null_rw_mutex.h -include/tbb/parallel_do.h include/tbb/parallel_for.h include/tbb/parallel_for_each.h include/tbb/parallel_invoke.h +include/tbb/parallel_pipeline.h include/tbb/parallel_reduce.h include/tbb/parallel_scan.h include/tbb/parallel_sort.h -include/tbb/parallel_while.h include/tbb/partitioner.h -include/tbb/pipeline.h +include/tbb/profiling.h include/tbb/queuing_mutex.h include/tbb/queuing_rw_mutex.h -include/tbb/reader_writer_lock.h -include/tbb/recursive_mutex.h -include/tbb/runtime_loader.h include/tbb/scalable_allocator.h include/tbb/spin_mutex.h include/tbb/spin_rw_mutex.h include/tbb/task.h include/tbb/task_arena.h include/tbb/task_group.h -include/tbb/task_scheduler_init.h include/tbb/task_scheduler_observer.h include/tbb/tbb.h include/tbb/tbb_allocator.h -include/tbb/tbb_config.h -include/tbb/tbb_disable_exceptions.h -include/tbb/tbb_exception.h -include/tbb/tbb_machine.h -include/tbb/tbb_profiling.h -include/tbb/tbb_stddef.h -include/tbb/tbb_thread.h include/tbb/tbbmalloc_proxy.h include/tbb/tick_count.h +include/tbb/version.h +lib/cmake/TBB/TBBConfig.cmake +lib/cmake/TBB/TBBConfigVersion.cmake +lib/cmake/TBB/TBBTargets-relwithdebinfo.cmake +lib/cmake/TBB/TBBTargets.cmake lib/libtbb.so +lib/libtbb.so.12 +lib/libtbb.so.12.3 lib/libtbbmalloc.so +lib/libtbbmalloc.so.2 +lib/libtbbmalloc.so.2.3 +lib/libtbbmalloc_proxy.so +lib/libtbbmalloc_proxy.so.2 +lib/libtbbmalloc_proxy.so.2.3 +lib/pkgconfig/tbb.pc +share/doc/TBB/README.md diff --git a/parallel/threadingbuildingblocks/distinfo b/parallel/threadingbuildingblocks/distinfo index 4d7ba40bc19..9a7556f6647 100644 --- a/parallel/threadingbuildingblocks/distinfo +++ b/parallel/threadingbuildingblocks/distinfo @@ -1,7 +1,8 @@ -$NetBSD: distinfo,v 1.6 2021/04/25 07:51:26 mrg Exp $ +$NetBSD: distinfo,v 1.7 2021/07/14 17:56:16 adam Exp $ -SHA1 (oneTBB-2020.3.tar.gz) = ae543670251a6d667e6f077ecfab0d5bb09b270c -RMD160 (oneTBB-2020.3.tar.gz) = 1f3918c0dadfcddd2b38f398299de0d8542f11b4 -SHA512 (oneTBB-2020.3.tar.gz) = ea1ffd22c7234d715b8c46a4e51b40719c7a9b8837ab3166f1da5a2c6061167c2be2126b1d74fd361eec6975b8fce0df26829ca2e7af8029edbb52e40f23d630 -Size (oneTBB-2020.3.tar.gz) = 2639737 bytes -SHA1 (patch-build-BSD.inc) = 357d7d76f37c88f2849ddf90970989161094ecfb +SHA1 (oneTBB-2021.3.0.tar.gz) = 4335ea0dc87d1ead91998e90e7de3045704c1fda +RMD160 (oneTBB-2021.3.0.tar.gz) = f09caab75e92914edfad977d499beb35b87cef48 +SHA512 (oneTBB-2021.3.0.tar.gz) = 969bc8d1dcf50bd12f70633d0319e46308eb1667cdc6f0503b373a35dcb2fe6b2adf59c26bd3c8e2a99a8d2d8b9f64088db5a43e784218b163b3661d12908c0e +Size (oneTBB-2021.3.0.tar.gz) = 1651329 bytes +SHA1 (patch-cmake_compilers_Clang.cmake) = 85e2df7336b12839d9a60f374c31835ee86ca7ac +SHA1 (patch-cmake_compilers_GNU.cmake) = 2673e6f9c0a7f8d99399c6f645b9ce30d9f95d06 |