From e4323af3c230578c2a18aa09dff7049cb46b38c1 Mon Sep 17 00:00:00 2001 From: "Epanchinzeva, Alexandra" Date: Fri, 6 Dec 2024 12:56:07 +0100 Subject: [PATCH] more docs --- doc/main/intro/intro.rst | 39 ------ doc/main/intro/introducing_main.rst | 39 ------ doc/main/intro/notices_and_disclaimers.rst | 49 -------- .../Bandwidth_and_Cache_Affinity.rst | 113 ------------------ .../automatically-replacing-malloc.rst | 22 ---- 5 files changed, 262 deletions(-) delete mode 100644 doc/main/intro/intro.rst delete mode 100644 doc/main/intro/introducing_main.rst delete mode 100644 doc/main/intro/notices_and_disclaimers.rst delete mode 100644 doc/main/tbb_userguide/Bandwidth_and_Cache_Affinity.rst delete mode 100644 doc/main/tbb_userguide/automatically-replacing-malloc.rst diff --git a/doc/main/intro/intro.rst b/doc/main/intro/intro.rst deleted file mode 100644 index 652113c2f4..0000000000 --- a/doc/main/intro/intro.rst +++ /dev/null @@ -1,39 +0,0 @@ -.. _intro: - -Introduction -============ - - -|full_name| is a library that supports scalable parallel programming using -standard ISO C++ code. It does not require special languages or -compilers. It is designed to promote scalable data parallel programming. -Additionally, it fully supports nested parallelism, so you can build -larger parallel components from smaller parallel components. To use the -library, you specify tasks, not threads, and let the library map tasks -onto threads in an efficient manner. - - -Many of the library interfaces employ generic programming, in which -interfaces are defined by requirements on types and not specific types. -The C++ Standard Template Library (STL) is an example of generic -programming. Generic programming enables oneTBB to be flexible yet -efficient. The generic interfaces enable you to customize components to -your specific needs. - - -.. note:: - |full_name| requires C++11 standard compiler support. - - -The net result is that oneTBB enables you to specify parallelism far -more conveniently than using raw threads, and at the same time can -improve performance. - - -.. admonition:: Product and Performance Information - - Performance varies by use, configuration and other factors. Learn more at `www.intel.com/PerformanceIndex `_. - Notice revision #20201201 - - - diff --git a/doc/main/intro/introducing_main.rst b/doc/main/intro/introducing_main.rst deleted file mode 100644 index 311709df43..0000000000 --- a/doc/main/intro/introducing_main.rst +++ /dev/null @@ -1,39 +0,0 @@ -.. _introducing_main: - -Introduction -============ - - -|full_name| is a library that supports scalable parallel programming using -standard ISO C++ code. It does not require special languages or -compilers. It is designed to promote scalable data parallel programming. -Additionally, it fully supports nested parallelism, so you can build -larger parallel components from smaller parallel components. To use the -library, you specify tasks, not threads, and let the library map tasks -onto threads in an efficient manner. - - -Many of the library interfaces employ generic programming, in which -interfaces are defined by requirements on types and not specific types. -The C++ Standard Template Library (STL) is an example of generic -programming. Generic programming enables oneTBB to be flexible yet -efficient. The generic interfaces enable you to customize components to -your specific needs. - - -.. note:: - |full_name| requires C++11 standard compiler support. - - -The net result is that oneTBB enables you to specify parallelism far -more conveniently than using raw threads, and at the same time can -improve performance. - - -.. admonition:: Product and Performance Information - - Performance varies by use, configuration and other factors. Learn more at `www.intel.com/PerformanceIndex `_. - Notice revision #20201201 - - - diff --git a/doc/main/intro/notices_and_disclaimers.rst b/doc/main/intro/notices_and_disclaimers.rst deleted file mode 100644 index 0fe0cc6baf..0000000000 --- a/doc/main/intro/notices_and_disclaimers.rst +++ /dev/null @@ -1,49 +0,0 @@ -.. _notices_and_disclaimers: - -Notices and Disclaimers -======================= - - -Intel technologies may require enabled hardware, software or service -activation. - - -No product or component can be absolutely secure. - - -Your costs and results may vary. - - -© Intel Corporation. Intel, the Intel logo, and other Intel marks are -trademarks of Intel Corporation or its subsidiaries. Other names and -brands may be claimed as the property of others. - - -Intel's compilers may or may not optimize to the same degree for -non-Intel microprocessors for optimizations that are not unique to Intel -microprocessors. These optimizations include SSE2, SSE3, and SSSE3 -instruction sets and other optimizations. Intel does not guarantee the -availability, functionality, or effectiveness of any optimization on -microprocessors not manufactured by Intel. Microprocessor-dependent -optimizations in this product are intended for use with Intel -microprocessors. Certain optimizations not specific to Intel -microarchitecture are reserved for Intel microprocessors. Please refer -to the applicable product User and Reference Guides for more information -regarding the specific instruction sets covered by this notice. - - -No license (express or implied, by estoppel or otherwise) to any -intellectual property rights is granted by this document. - - -The products described may contain design defects or errors known as -errata which may cause the product to deviate from published -specifications. Current characterized errata are available on request. - - -Intel disclaims all express and implied warranties, including without -limitation, the implied warranties of merchantability, fitness for a -particular purpose, and non-infringement, as well as any warranty -arising from course of performance, course of dealing, or usage in -trade. - diff --git a/doc/main/tbb_userguide/Bandwidth_and_Cache_Affinity.rst b/doc/main/tbb_userguide/Bandwidth_and_Cache_Affinity.rst deleted file mode 100644 index 60e6d69045..0000000000 --- a/doc/main/tbb_userguide/Bandwidth_and_Cache_Affinity.rst +++ /dev/null @@ -1,113 +0,0 @@ -.. _Bandwidth_and_Cache_Affinity: - -Bandwidth and Cache Affinity -============================ - - -For a sufficiently simple function ``Foo``, the examples might not show -good speedup when written as parallel loops. The cause could be -insufficient system bandwidth between the processors and memory. In that -case, you may have to rethink your algorithm to take better advantage of -cache. Restructuring to better utilize the cache usually benefits the -parallel program as well as the serial program. - - -An alternative to restructuring that works in some cases is -``affinity_partitioner.`` It not only automatically chooses the -grainsize, but also optimizes for cache affinity and tries to distribute -the data uniformly among threads. Using ``affinity_partitioner`` can -significantly improve performance when: - - -- The computation does a few operations per data access. - - -- The data acted upon by the loop fits in cache. - - -- The loop, or a similar loop, is re-executed over the same data. - - -- There are more than two hardware threads available (and especially if - the number of threads is not a power of two). If only two threads are - available, the default scheduling in |full_name| - usually provides sufficient cache affinity. - - -The following code shows how to use ``affinity_partitioner``. - - -:: - - - #include "oneapi/tbb.h" -   - - void ParallelApplyFoo( float a[], size_t n ) { - static affinity_partitioner ap; - parallel_for(blocked_range(0,n), ApplyFoo(a), ap); - } -   - - void TimeStepFoo( float a[], size_t n, int steps ) { - for( int t=0; t`_. - Notice revision #20201201 - - - - -.. |image0| image:: Images/image007.jpg - :width: 453px - :height: 178px -.. |image1| image:: Images/image008.jpg - :width: 551px - :height: 192px - diff --git a/doc/main/tbb_userguide/automatically-replacing-malloc.rst b/doc/main/tbb_userguide/automatically-replacing-malloc.rst deleted file mode 100644 index 307884221d..0000000000 --- a/doc/main/tbb_userguide/automatically-replacing-malloc.rst +++ /dev/null @@ -1,22 +0,0 @@ -.. _automatically-replacing-malloc: - -Automatically Replacing ``malloc`` and Other C/C++ Functions for Dynamic Memory Allocation -========================================================================================== - - -On Windows*, Linux\* operating systems, it is possible to automatically -replace all calls to standard functions for dynamic memory allocation -(such as ``malloc``) with the |full_name| scalable equivalents. -Doing so can sometimes improve application performance. - - -Replacements are provided by the proxy library (the library names can be -found in platform-specific sections below). A proxy library and a -scalable memory allocator library should be taken from the same release -of oneTBB, otherwise the libraries may be mutually incompatible. - -.. toctree:: - :maxdepth: 4 - - ../tbb_userguide/Windows_C_Dynamic_Memory_Interface_Replacement - ../tbb_userguide/Linux_C_Dynamic_Memory_Interface_Replacement