Compare commits

..
2 Commits
Author SHA1 Message Date
Alexandra Epanchinzeva 4161e48d2b To fix CI 2021-09-29 11:09:21 +03:00
Alexandra Epanchinzeva a148e98d83 Clean-up tasks 2021-09-27 14:07:02 +03:00
12 changed files with 27 additions and 168 deletions
+1 -1
View File
@@ -38,7 +38,7 @@ You can use issues to report a problem, make a feature request, or add comments
You can find all [open oneTBB pull requests](https://github.com/oneapi-src/oneTBB/pulls) on GitHub.
No anonymous contributions are accepted. The name in the commit message Signed-off-by line and your email must match the change authorship information. Make sure your .gitconfig is set up correctly so you can use `git commit -s` for signing your patches:
No anonymous contributions are accepted. The name in the commit message Signed-of-by line and your email must match the change authorship information. Make sure your .gitconfig is set up correctly so you can use `git commit -s` for signing your patches:
`git config --global user.name "Taylor Developer"`
+15 -8
View File
@@ -2,21 +2,23 @@
[![Apache License Version 2.0](https://img.shields.io/badge/license-Apache_2.0-green.svg)](LICENSE.txt) [![oneTBB CI](https://github.com/oneapi-src/oneTBB/actions/workflows/ci.yml/badge.svg)](https://github.com/oneapi-src/oneTBB/actions/workflows/ci.yml?query=branch%3Amaster)
oneAPI Threading Building Blocks (oneTBB) lets you easily write parallel C++ programs that take
full advantage of multicore performance that are portable, composable, and have future-proof scalability.
full advantage of multicore performance, that are portable, composable and have future-proof scalability.
## Installation
You can install oneTBB from GitHub*, see [Installation from Sources](INSTALL.md) for details.
## Release Information
Here are [Release Notes]( https://software.intel.com/en-us/articles/intel-oneapi-threading-building-blocks-release-notes) and
[System Requirements](https://software.intel.com/en-us/articles/intel-oneapi-threading-building-blocks-system-requirements).
## Documentation
* [oneTBB Specification](https://spec.oneapi.com/versions/latest/elements/oneTBB/source/nested-index.html)
* [oneTBB Developer Guide and Reference](https://oneapi-src.github.io/oneTBB/)
* [Migrating from TBB to oneTBB](https://oneapi-src.github.io/oneTBB/tbb_userguide/Migration_Guide.html)
* [README for build system](cmake/README.md)
* [oneTBB Developer Guide and Reference](https://software.intel.com/en-us/oneapi-tbb-documentation)
* [Migrating from TBB to oneTBB](https://software.intel.com/content/www/us/en/develop/documentation/onetbb-documentation/top/onetbb-developer-guide/migrating-from-threading-building-blocks-tbb.html)
* README for build system: [cmake/README.md](cmake/README.md)
* [Basic support for the Bazel build system](Bazel.md)
## Support
Please report issues and suggestions via
[GitHub issues](https://github.com/oneapi-src/oneTBB/issues). See our [documentation](./CONTRIBUTING.md##Issues) to learn how to work with issues.
[GitHub issues](https://github.com/oneapi-src/oneTBB/issues) or start a topic on the
[oneTBB forum](https://community.intel.com/t5/Intel-oneAPI-Threading-Building/bd-p/oneapi-threading-building-blocks).
## How to Contribute
We welcome community contributions, so check our [contributing guidelines](CONTRIBUTING.md)
@@ -26,8 +28,13 @@ to learn more.
oneAPI Threading Building Blocks is licensed under [Apache License, Version 2.0](LICENSE.txt).
By its terms, contributions submitted to the project are also done under that license.
## Security
To report security issues please go to https://intel.com/security.
## Engineering team contacts
* [E-mail us.](mailto:inteltbbdevelopers@intel.com)
------------------------------------------------------------------------
\* All names and brands may be claimed as the property of others.
Intel and the Intel logo are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries.
\* Other names and brands may be claimed as the property of others.
+3 -52
View File
@@ -16,18 +16,10 @@ of multi-core processors. Use |short_name| to write scalable applications that:
- Emphasize data parallel programming
- Take advantage of concurrent collections and parallel algorithms
System Requirements
*******************
Refer to the `oneTBB System Requirements <https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-threading-building-blocks-system-requirements.html>`_.
Before You Begin
****************
Download |short_name| as a `stand-alone product <https://software.intel.com/content/www/us/en/develop/articles/oneapi-standalone-components.html#onetbb>`_
or as a part of the `Intel(R) oneAPI Base Toolkit <https://software.intel.com/content/www/us/en/develop/tools/oneapi/base-toolkit/download.html>`_.
After installing |short_name|, you need to set the environment variables:
#. Go to the oneTBB installation directory (``<install_dir>``). By default, ``<install_dir>`` is the following:
@@ -72,50 +64,9 @@ The sample calculates a sum of all integer numbers from 1 to 100.
}
);
Find more
*********
.. list-table::
:widths: 40 60
:header-rows: 0
* -
- `oneTBB Community Forum <https://community.intel.com/>`_
- `Product FAQs <https://software.intel.com/content/www/us/en/develop/support/faq-product.html>`_
- `Support requests <https://software.intel.com/content/www/us/en/develop/articles/how-to-create-a-support-request-at-online-service-center.html>`_
- Use these resources if you need support with oneTBB.
* - `Release Notes <https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-threading-building-blocks-release-notes.html>`_
- Find up-to-date information about the product, including detailed notes, known issues, and changes.
* - `Documentation <https://software.intel.com/content/www/us/en/develop/documentation/onetbb-documentation/top.html>`_: `Developer Guide <https://software.intel.com/content/www/us/en/develop/documentation/onetbb-documentation/top/onetbb-developer-guide.html>`_ and `API Reference <https://software.intel.com/content/www/us/en/develop/documentation/onetbb-documentation/top/onetbb-api-reference.html>`_
- Learn to use oneTBB.
* - `GitHub* <https://github.com/oneapi-src/oneTBB>`_
- Find oneTBB implementation in open source.
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.
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
ay 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.
See our `documentation <https://oneapi-src.github.io/oneTBB/>`_ to learn more about |short_name|.
-12
View File
@@ -1,24 +1,14 @@
|full_name|
===========
This document contains information about |full_name|.
|short_name| is a flexible performance library that can be found in the |base_tk|
or as a stand-alone product. More information and specifications can be found on the
|full_name| main page.
Documentation for older versions of |short_name| is available for download only.
For a list of available documentation downloads by product version, see these pages:
* `Download Documentation for Intel Parallel Studio XE <https://software.intel.com/content/www/us/en/develop/articles/download-documentation-intel-parallel-studio-xe-current-previous.html>`_
* `Download Documentation for Intel System Studio <https://software.intel.com/content/www/us/en/develop/articles/download-documentation-intel-system-studio-current-previous.html>`_
The following are some important topics for the ``novice user``:
**Get Started with oneAPI Threading Building Blocks (oneTBB)**
`Get Started with oneTBB <https://software.intel.com/content/www/us/en/develop/documentation/get-started-with-onetbb/top.html>`_ gives you a brief explanation of what oneTBB is.
**oneTBB Benefits**
:ref:`Benefits` describes how |short_name| differs from typical threading packages.
@@ -36,7 +26,6 @@ The following is important topic for the ``experienced user``:
Learn how to migrate from TBB to oneTBB with :ref:`Migration_Guide`.
.. toctree::
:maxdepth: 2
@@ -46,4 +35,3 @@ Learn how to migrate from TBB to oneTBB with :ref:`Migration_Guide`.
intro/Benefits
tbb_userguide/title
reference/reference
intro/notices_and_disclaimers
+2 -9
View File
@@ -13,14 +13,7 @@ Getting Help and Support
.. rubric:: Getting Technical Support
:class: sectiontitle
If you did not register your Intel® software product during
installation, please do so now at the Intel® Software Development
Products Registration Center. Registration entitles you to free
technical support, product updates and upgrades for the duration of
the support term.
For general information about Intel technical support, product
For general information about oneTBB technical support, product
updates, user forums, FAQs, tips and tricks and other support
questions, go to: http://www.intel.com/software/products/support/.
questions, go to: [GitHub issues](https://github.com/oneapi-src/oneTBB/issues).
-9
View File
@@ -28,12 +28,3 @@ your specific needs.
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 <https://www.intel.com/PerformanceIndex>`_.
Notice revision #20201201
-8
View File
@@ -29,11 +29,3 @@ 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 <https://www.intel.com/PerformanceIndex>`_.
Notice revision #20201201
@@ -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.
@@ -96,14 +96,6 @@ of computations to memory accesses.
|image1|
.. admonition:: Product and Performance Information
Performance varies by use, configuration and other factors. Learn more at `www.Intel.com/PerformanceIndex <https://www.intel.com/PerformanceIndex>`_.
Notice revision #20201201
.. |image0| image:: Images/image007.jpg
:width: 453px
:height: 178px
@@ -157,12 +157,6 @@ quite well.
work than an iteration of an inner loop.
.. admonition:: Product and Performance Information
Performance varies by use, configuration and other factors. Learn more at `www.intel.com/PerformanceIndex <https://www.intel.com/PerformanceIndex>`_.
Notice revision #20201201
.. |image0| image:: Images/image002.jpg
:width: 161px
:height: 163px
+3 -3
View File
@@ -19,9 +19,9 @@
#if __TBB_PREVIEW_COLLABORATIVE_CALL_ONCE
#include "task_arena.h"
#include "task_group.h"
#include "task.h"
#include "tbb/task_arena.h"
#include "tbb/task_group.h"
#include "tbb/task.h"
#include <atomic>
+3 -3
View File
@@ -131,9 +131,9 @@ void make_edge_impl(Sender& sender, Receiver& receiver){
// Seemingly, GNU compiler generates incorrect code for the call of limiter.register_successor in release (-03)
// The function pointer to make_edge workarounds the issue for unknown reason
auto make_edge_ptr = tbb::flow::make_edge<int>;
make_edge_ptr(sender, receiver);
make_edge_ptr(sender, receiver); //putting the successor back
#else
tbb::flow::make_edge(sender, receiver);
tbb::flow::make_edge(sender, receiver); //putting the successor back
#endif
}
@@ -367,7 +367,7 @@ void test_reserve_release_messages() {
broad.try_put(1); //failed message retrieved.
g.wait_for_all();
make_edge_impl(limit, output_queue); //putting the successor back
make_edge_impl(limit, output_queue);
broad.try_put(1); //drop the count