Skip to content

Commit

Permalink
Documentation sync for 2022.0 release (#792)
Browse files Browse the repository at this point in the history
* Fixed table entry in documentation (entry in column 1 was too long). (#681)

(cherry picked from commit c09390f)

* oneDPL 2022.0.0 changes description (#672)

* add changes description

* Add new page to structure

* Address review feedback

* A string alignment

* Reorganize and update wording

Signed-off-by: Alexey Kukanov <Alexey.Kukanov@intel.com>

* Improve the note directive

* Address review feedback

Signed-off-by: Alexey Kukanov <Alexey.Kukanov@intel.com>
Co-authored-by: Alexey Kukanov <Alexey.Kukanov@intel.com>
(cherry picked from commit 7b31e75)

* Updated per library style guides. (#692)

Signed-off-by: Benito, Dylan <dylan.benito@intel.com>
Co-authored-by: Valentina Kats <valentina.kats@intel.com>
(cherry picked from commit 124856a)

* Update release_notes.rst

* Apply suggestions from code review

Co-authored-by: Timmie Smith <timmie.smith@intel.com>

---------

Co-authored-by: trosenqu <todd.rosenquist@intel.com>
Co-authored-by: Dylan <dylan.benito@intel.com>
Co-authored-by: Timmie Smith <timmie.smith@intel.com>
  • Loading branch information
4 people committed Feb 16, 2023
1 parent 58462b4 commit 240685d
Show file tree
Hide file tree
Showing 9 changed files with 491 additions and 408 deletions.
1 change: 1 addition & 0 deletions documentation/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,6 @@ oneAPI DPC++ Library (oneDPL)
library_guide/parallel_api_main.rst
library_guide/parallel_api/std_execution_policies.rst
library_guide/macros.rst
library_guide/oneDPL_2022.0_changes.rst
library_guide/api_for_dpcpp_kernels_main.rst

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions documentation/library_guide/index.rst
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
|onedpl_long|
=================================
|onedpl_long| Developer Guide
=============================

|onedpl_long| (|onedpl_short|) works with the |dpcpp_cpp| to
provide high-productivity APIs to developers, which can minimize SYCL* programming
efforts across devices for high performance parallel applications.

For general information, refer to the `oneDPL GitHub* repository
<https://github.com/oneapi-src/oneDPL>`_.

.. toctree::
:maxdepth: 2
:caption: Get Started
Expand All @@ -16,13 +19,14 @@ efforts across devices for high performance parallel applications.
:maxdepth: 2
:caption: Library Guide

overview
introduction
parallel_api_main
api_for_sycl_kernels_main
macros
oneDPL_2022.0_changes

.. toctree::
:hidden:
:caption: Notices and Disclaimers

notices_disclaimers.rst
notices_disclaimers.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
|onedpl_long| Overview
|onedpl_long| Introduction
#######################################

Parallel API can be used with the `C++ Standard Execution
Expand All @@ -22,7 +22,9 @@ page for:
* Overview
* New Features
* Fixed Issues
* Deprecation Notice
* Known Issues and Limitations
* Previous Release Notes

Install the `Intel® oneAPI Base Toolkit (Base Kit) <https://software.intel.com/en-us/oneapi/base-kit>`_
to use |onedpl_short|.
Expand All @@ -34,8 +36,11 @@ include the corresponding header in your source code with the ``#include <oneapi
To use tested C++ standard APIs, you need to include the corresponding C++ standard header files
and use the ``std`` namespace.

System Requirements
===================

Prerequisites
=============
*************

C++17 is the minimal supported version of the C++ standard.
That means, any use of |onedpl_short| may require a C++17 compiler.
Expand All @@ -56,7 +61,7 @@ To use Parallel API with the device execution policies, you need to install the
* A C++ compiler with support for SYCL 2020

Restrictions
============
************

When called with |dpcpp_short| execution policies, |onedpl_short| algorithms apply the same restrictions as
|dpcpp_short| does (see the |dpcpp_short| specification and the SYCL specification for details), such as:
Expand All @@ -71,7 +76,7 @@ When called with |dpcpp_short| execution policies, |onedpl_short| algorithms app
* Calling the API that throws exception is not allowed within callable objects passed to an algorithm.

Known Limitations
=================
*****************

* For ``transform_exclusive_scan``, ``transform_inclusive_scan`` algorithms, the result of the unary operation should be
convertible to the type of the initial value if one is provided, otherwise it is convertible to the type of values
Expand Down
11 changes: 10 additions & 1 deletion documentation/library_guide/notices_disclaimers.rst
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Notices and Disclaimers
=======================
#######################

Intel technologies may require enabled hardware, software or service activation.

Expand All @@ -15,3 +15,12 @@ The products described may contain design defects or errors known as errata whic

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.

License
=======

oneDPL is licensed under Apache License Version 2.0 with LLVM exceptions.

Refer to the `LICENSE <https://github.com/oneapi-src/oneDPL/blob/release_oneDPL/licensing/LICENSE.txt>`_ file for the full license text and copyright notice.



37 changes: 37 additions & 0 deletions documentation/library_guide/oneDPL_2022.0_changes.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
oneDPL 2022 Breaking Changes
############################

This page lists the incompatible changes that occurred between the 2021.7.1 and 2022.0 releases.

.. note::
You may need to modify and/or rebuild your code when switching to oneDPL 2022.0.

Support for C++11 and C++14 has been discontinued. To use any functionality of oneDPL 2022.0,
a compiler that supports C++17 or newer version of the C++ language standard is required.

The following APIs are not supported in C++17 and have been removed from ``namespace oneapi::dpl``:

* In the ``<oneapi/dpl/functional>`` header:

* ``binary_function``
* ``unary_function``

The following APIs are deprecated in C++17 and not supported in C++20:

* In the ``<oneapi/dpl/functional>`` header:

* ``binary_negate``
* ``not1``
* ``not2``
* ``unary_negate``

* In the ``<oneapi/dpl/type_traits>`` header:

* ``is_literal_type``
* ``is_literal_type_v``
* ``result_of``
* ``result_of_t``

The size and the layout of the ``discard_block_engine`` class template were changed to align its
implementation with the С++ standard proposal found at https://cplusplus.github.io/LWG/issue3561.
This change lets you utilize the full range of values for the template parameters of the engine.
17 changes: 10 additions & 7 deletions documentation/library_guide/onedpl_gsg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,11 @@ For general information about |onedpl_short|, visit the `oneDPL GitHub* reposito
or visit the `Intel® oneAPI DPC++ Library Guide <https://software.intel.com/content/www/us/en/develop/documentation/oneapi-dpcpp-library-guide/top.html>`_
and the `Intel® oneAPI DPC++ Library main page <https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-library.html>`_.

Before You Begin
================
Quick Start
===========

Installation
------------

Visit the |onedpl_short| `Release Notes
<https://software.intel.com/content/www/us/en/develop/articles/intel-oneapi-dpcpp-library-release-notes.html>`_
Expand All @@ -43,13 +46,13 @@ and use the ``std`` namespace.


pkg-config Support
==================
------------------

The pkg-config program is used to retrieve information about your installed libraries, and
to compile and link against one or more libraries.

Use pkg-config with |onedpl_short|
----------------------------------
**********************************

Use pkg-config with the ``--cflags`` flag to get the include path to the oneDPL directory:

Expand All @@ -69,14 +72,14 @@ This flag converts your compiling and linking flags to the appropriate form:


Usage Examples
==============
--------------

|onedpl_short| sample code is available from the
`oneAPI GitHub samples repository <https://github.com/oneapi-src/oneAPI-samples/tree/master/Libraries/oneDPL>`_.
Each sample includes a readme with build instructions.

\<oneapi/dpl/random\> Header Usage Example
------------------------------------------
******************************************

This example illustrates |onedpl_short| random number generator usage.
The sample below shows you how to create an random number generator engine object (the source of pseudo-randomness),
Expand Down Expand Up @@ -107,7 +110,7 @@ This example performs its computations on your default SYCL device. You can set
}
Pi Benchmark Usage Example
--------------------------
**************************

This example uses a Monte Carlo method to estimate the value of π.
The basic idea is to generate random points within a square, and to check what
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ with the following steps:
following constructor arguments:

#. A SYCL queue constructed for the
`FPGA Selector <https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/supported/sycl_ext_intel_fpga_device_selector.md>`_
`FPGA Selector <https://github.com/intel/llvm/blob/sycl/sycl/doc/extensions/supported/sycl_ext_intel_fpga_device_selector.asciidoc>`_
(the behavior is undefined with any other queue).
#. An existing FPGA policy object with a different kernel name and/or unroll factor.

Expand Down
24 changes: 24 additions & 0 deletions documentation/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,29 @@ The Intel® oneAPI DPC++ Library (oneDPL) accompanies the Intel® oneAPI DPC++/C
and provides high-productivity APIs aimed to minimize programming efforts of C++ developers
creating efficient heterogeneous applications.

New in 2022.0.0
===============

New Features
------------
- Added the functionality from ``<complex>`` and more APIs from ``<cmath>`` and ``<limits>``
standard headers to `Tested Standard C++ API`_.
- Improved performance of ``sort`` and ``stable_sort`` algorithms on GPU devices when using Radix sort [#fnote1]_.

Fixed Issues
------------
- Fixed permutation_iterator to work with C++ lambda functions for index permutation
- Fixed an error in ``oneapi::dpl::experimental::ranges::guard_view`` and ``oneapi::dpl::experimental::ranges::zip_view``
when using ``operator[]`` with an index exceeding the limits of a 32 bit integer type.
- Fixed errors when data size is 0 in ``upper_bound``, ``lower_bound`` and ``binary_search`` algorithms.

Changes affecting backward compatibility
----------------------------------------
- Removed support of C++11 and C++14.
- Changed the size and the layout of the ``discard_block_engine`` class template.

For further details, please refer to `2022.0 Changes`_.

New in 2021.7.1
===============

Expand Down Expand Up @@ -367,3 +390,4 @@ Known Issues and Limitations
.. _`restrictions and known limitations`: https://oneapi-src.github.io/oneDPL/overview.html#restrictions
.. _`Tested Standard C++ API`: https://oneapi-src.github.io/oneDPL/api_for_dpcpp_kernels/tested_standard_cpp_api.html#tested-standard-c-api-reference
.. _`Macros`: https://oneapi-src.github.io/oneDPL/macros.html
.. _`2022.0 Changes`: https://oneapi-src.github.io/oneDPL/oneDPL_2022.0_changes.html

0 comments on commit 240685d

Please sign in to comment.