Overview
The Intel® oneAPI Collective Communications Library (oneCCL) enables developers and researchers to more quickly train newer and deeper models. This is done by using optimized communication patterns to distribute model training across multiple nodes.
The library is designed for easy integration into deep learning (DL) frameworks, whether you are implementing them from scratch or customizing existing ones.
- Built on top of lower-level communication middleware - MPI and OFI (libfabrics) which transparently support many interconnects, such as Cornelis Networks, InfiniBand, and Ethernet.
- Optimized for high performance on Intel® CPUs and GPUs.
- Allows the tradeoff of compute for communication performance to drive scalability of communication patterns.
- Enables efficient implementations of collectives that are heavily used for neural network training, including allreduce, and allgather.
2021.16 Release
Major Features Supported
-
Functionality Subitems CPU GPU Collective operations Allgather X X Allgatherv X X Allreduce X X Alltoall X X Alltoallv X X Barrier X X Broadcast X X Reduce X X ReduceScatter X X Point to Point Send X X Recv X X Group API
All collectives
X
X
Point to Point
X
X
Data types [u]int[8, 16, 32, 64] X X fp[16, 32, 64], bf16 X X Scaling Scale-up X X Scale-out X X Programming model 1 rank / process per device 1 rank / process per device -
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New 2021.16
- Added SYCL graph support for Record and Replay for Allgather, Allreduce, Alltoall, ReduceScatter and Broadcast
- Added SYCL-based implementation of ring algorithm for Allgather
- Added SYCL-based implementation for Broadcast
- Added multithread support for Allgather and ReduceScatter scale up impementation
- Added attribute in the communicator to specify blocking operations for CPU
- Bug fixes
Removals
- split_communicators is deprecated in 2021.15.0 and will be removed later.
Notice of Deprecation
Deprecation of C++ API
- In oneCCL version 2021.17 included with the 2025.3 oneAPI release, oneCCL will add support for a new C API that closely follows the NVIDIA Collective Communications Libary (NCCL)* API standard. The existing C++ API will remain available and will remain the default API for the 2021.17 release. Details explaining how an application may link against and use the new API will be shared in this release.
See the oneCCL C API RFC document to view the proposed API and provide any feedback.
- In oneCCL version 2022.0 included with the 2026.0 oneAPI release, oneCCL will use the new NCCL* like C API by default. This is a breaking change. The legacy C++ API will remain available, and details explaining how an application may link against and use the legacy API will be included in the 2022.0 release.
Applications cannot use both the C and C++ APIs simultaneously.
Support for the legacy C++ API shall remain in the release until future notice. The schedule for legacy API removal will be announced here.
System Requirements
please see system requirements.
Previous Releases
2021.15.0, 2021.15.1 and 2021.15.2
What's New 2021.15.2
- Bug fix - Improvement of User Experience based on setting of Environment Variables.
What's New 2021.15.1
- Bug fixes
Major Features Supported
-
Functionality Subitems CPU GPU Collective operations Allgather X X Allgatherv X X Allreduce X X Alltoall X X Alltoallv X X Barrier X X Broadcast X X Reduce X X ReduceScatter X X Point to Point Send X X Recv X X Group API
All collectives
X
X
Point to Point
X
X
Data types [u]int[8, 16, 32, 64] X X fp[16, 32, 64], bf16 X X Scaling Scale-up X X Scale-out X X Programming model 1 rank / process per device 1 rank / process per device -
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New 2021.15
- Support for Average for Allreduce and Reduce-Scatter
- Extend Group API to also support collective operations.
- New split_communicator API with updated parameters.
- Performance optimizations for scaleup for Alltoall
Removals
- split_communicators is deprecated in 2021.15.0 and will be removed later.
2021.14
2021.14 Release
Major Features Supported
-
Functionality Subitems CPU GPU Collective operations Allgather X X Allgatherv X X Allreduce X X Alltoall X X Alltoallv X X Barrier X X Broadcast X X Reduce X X ReduceScatter X X Point to Point Send X X Recv X X Data types [u]int[8, 16, 32, 64] X X fp[16, 32, 64], bf16 X X Scaling Scale-up X X Scale-out X X Programming model Rank = device 1 rank per process 1 rank per process -
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New 2021.14
- Optimizations on key-value store support to scale up to 3000 nodes
- New APIs for Allgather, Broadcast and group API calls
- Performance Optimizations for scaleup for Allgather, Allreduce, and Reduce-scatter for scaleup and scaleout
- Performance Optimizations for CPU single node
- Optimizations to reuse Level Zero events.
- Change of the default mechanism for IPC exchange to pidfd
2021.13.0 and 2021.13.1
2021.13.1
Bug fixes.
2021.13.0
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Point to Point | Send | X | X |
Recv | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Optimizations to limit the memory consumed by oneCCL
- Optimizations to limit the number of file descriptors maintained opened by oneCCL.
- Align the support for in-place for the Allgatherv and Reduce-scatter collectives to follow the same behavior as NCCL*.
In particular, the Allgatherv collective is in place when:
send_buff == recv_buff + rank_offset, where rank_offset = sum (recv_counts[i]), for all I<rank.
Reduce-scatter is in-place when recv_buff == send_buff + rank *recv_count. - When using the environment variable CCL_WORKER_AFFINITY, oneCCL enforces the requirement that the length of the list should be equal to the number of workers.
- Bug fixes.
Removals
- oneCCL 2021.12 removes support for PMIx 4.2.2
2021.12
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Point to Point | Send | X | X |
Recv | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Performance improvements for scaleup for all message sizes for AllReduce, Allgather, and Reduce_Scatter.
Optimizations also include small message sizes that appear in inference apps. - Performance improvements for scaleout for Allreduce, Reduce, Allgather, and Reduce_Scatter.
- Optimized memory usage of oneCCL.
- Support for PMIx 4.2.6.
- For the 2021.12 release, the Third Party Programs file has been included as a section in this product’s release notes rather than as a separate text file.
- Bug fixes.
Removals
- oneCCL 2021.12 removes support for PMIx 4.2.2
2021.11.0, 2021.11.1 and 2021.11.2
2021.11.2 Release
This update provides bug fixes to maintain driver compatibility for Intel® Data Center GPU Max Series.
2021.11.1 Release
This update addresses stability issues with distributed Training and Inference workloads on Intel® Data Center GPU Max Series.
2021.11.0 Release
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Point to Point | Send | X | X |
Recv | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Added point to point blocking communication operations for send and receive.
- Performance optimizations for Reduce-Scatter.
- Improved profiling with Intel® Instrumentation and Tracing Technology (ITT) profiling level.
Removals
- Support of Intel® C++ Compiler Classic (icc) is removed
2021.10.0
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Improved scaling efficiency of the Scaleup algorithms for ReduceScatter
- Optimize performance of oneCCL scaleup collectives by utilizing the new embedded Data Streaming Accelerator in Intel® 4th Generation Xeon Scalable Processors (formerly code-named Sapphire Rapids)
Removals
- Sockets provider will be removed starting with 2021.10 release
- Support of Intel® C++ Compiler Classic (icc) will be removed starting with 2021.11 release
2021.9
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Improved scaling efficiency of the Scaleup algorithms for Alltoall and Allgather
- Add collective selection for scaleout algorithm for device (GPU) buffers
2021.8
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Provides optimized performance for Intel® Data Center GPU Max Series utilizing oneCCL.
- Enables support for Allreduce, Allgather, Reduce, and Alltoall connectivity for GPUs on the same node
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.7 and 2021.7.1
2021.7.1 Release
Intel® oneAPI Collective Communications Library 2021.7.1 has been updated to include functional and security updates. Users should update to the latest version as it becomes available.
2021.7 Release
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- no change from previous release.
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.6
Major Features Supported
Table1
Functionality | Subitems | CPU | GPU |
---|---|---|---|
Collective operations | Allgatherv | X | X |
Allreduce | X | X | |
Alltoall | X | X | |
Alltoallv | X | X | |
Barrier | X | X | |
Broadcast | X | X | |
Reduce | X | X | |
ReduceScatter | X | X | |
Data types | [u]int[8, 16, 32, 64] | X | X |
fp[16, 32, 64], bf16 | X | X | |
Scaling | Scale-up | X | X |
Scale-out | X | X | |
Programming model | Rank = device | 1 rank per process | 1 rank per process |
Service functionality
- Interoperability with SYCL*:
- Construction of oneCCL communicator object based on SYCL context and SYCL device
- Construction of oneCCL stream object based on SYCL queue
- Construction of oneCCL event object based on SYCL event
- Retrieving of SYCL event from oneCCL event associated with oneCCL collective operation
- Passing SYCL buffer as source/destination parameter of oneCCL collective operation
What's New
- Intel® oneAPI Collective Communications Library now supports Intel® Instrumentation and Tracing Technology (ITT) profiling
- Intel® oneAPI Collective Communications Library can be seamlessly integrated with Windows platforms with WSL2 (Windows Subsystem for Linux 2) support
- Enhanced application stability with runtime dependency check for Level Zero, in Intel® oneAPI Collective Communications Library
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.5
What's New
- Added support for output SYCL event to track status of CCL operation
- Added OFI/verbs provider with dmabuf support into package
- Bug fixes
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
oneccl::allreduce(…);
2021.4
What's New
- Memory binding of worker threads is now supported
- NIC filtering by name is now supported for OFI-based multi-NIC
- IPv6 is now supported for key-value store (KVS)
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.3
What's New
- Added OFI-based multi-NIC support
- Added OFI/psm3 provider support
- Bug fixes
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.2
What's New
- Added float16 datatype support.
- Added ip-port hint for customization of KVS creation.
- Optimized communicator creation phase.
- Optimized multi-GPU collectives for single-node case.
- Bug fixes
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
2021.1
What's New
- Added [u]int16 support
- Added initial support for external launch mechanism
- Fixed bugs
Known issues and limitations
- The 'using namespace oneapi;' directive is not recommended, as it may result in compilation errors when oneCCL is used with other oneAPI libraries. You can instead create a namespace alias for oneCCL, e.g.
namespace oneccl = ::oneapi::ccl; oneccl::allreduce(…);
- Limitations imposed by Intel® oneAPI DPC++ Compiler:
- SYCL buffers cannot be used from different queues
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 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.
Third Party Programs File
Intel(R) oneAPI Collective Communications Library (oneCCL) This file is the "third-party-programs.txt" file specified in the associated Intel end user license agreement for the Intel software you are licensing.Third party programs and their corresponding required notices and/or license terms are listed below.
-------------------------------------------------------------------------------
1. Intel(R) MPI Library
Copyright (c) Intel Corporation.
Intel Simplified Software License (Version October 2022)
Use and Redistribution. You may use and redistribute the software, which isprovided in binary form only, (the “Software”), without modification, providedthe following conditions are met:
* Redistributions must reproduce the above copyright notice and these terms of use in the Software and in the documentation and/or other materials provided with the distribution.* Neither the name of Intel nor the names of its suppliers may be used to endorse or promote products derived from this Software without specific prior written permission.* No reverse engineering, decompilation, or disassembly of the Software is permitted, nor any modification or alteration of the Software or its operation at any time, including during execution.
No other licenses. Except as provided in the preceding section, Intel grants nolicenses or other rights by implication, estoppel or otherwise to, patent,copyright, trademark, trade name, service mark or other intellectual propertylicenses or rights of Intel.
Third party software. “Third Party Software” means the files (if any) listedin the “third-party-software.txt” or other similarly-named text file that maybe included with the Software. Third Party Software, even if included with thedistribution of the Software, may be governed by separate license terms,including without limitation, third party license terms, open source softwarenotices and terms, and/or other Intel software license terms. These separatelicense terms solely govern Your use of the Third Party Software.
DISCLAIMER. THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIEDWARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OFMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT AREDISCLAIMED. THIS SOFTWARE IS NOT INTENDED FOR USE IN SYSTEMS OR APPLICATIONSWHERE FAILURE OF THE SOFTWARE MAY CAUSE PERSONAL INJURY OR DEATH AND YOU AGREETHAT YOU ARE FULLY RESPONSIBLE FOR ANY CLAIMS, COSTS, DAMAGES, EXPENSES, ANDATTORNEYS' FEES ARISING OUT OF ANY SUCH USE, EVEN IF ANY CLAIM ALLEGES THATINTEL WAS NEGLIGENT REGARDING THE DESIGN OR MANUFACTURE OF THE SOFTWARE.
LIMITATION OF LIABILITY. IN NO EVENT WILL INTEL BE LIABLE FOR ANY DIRECT,INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OFLIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCEOR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IFADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
No support. Intel may make changes to the Software, at any time without notice,and is not obligated to support, update or provide training for the Software.
Termination. Your right to use the Software is terminated in the event of yourbreach of this license.
Feedback. Should you provide Intel with comments, modifications, corrections,enhancements or other input ("Feedback") related to the Software, Intel will befree to use, disclose, reproduce, license or otherwise distribute or exploit theFeedback in its sole discretion without any obligations or restrictions of anykind, including without limitation, intellectual property rights or licensingobligations.
Compliance with laws. You agree to comply with all relevant laws and regulationsgoverning your use, transfer, import or export (or prohibition thereof) of theSoftware.
Governing law. All disputes will be governed by the laws of the United States ofAmerica and the State of Delaware without reference to conflict of lawprinciples and subject to the exclusive jurisdiction of the state or federalcourts sitting in the State of Delaware, and each party agrees that it submitsto the personal jurisdiction and venue of those courts and waives anyobjections. THE UNITED NATIONS CONVENTION ON CONTRACTS FOR THE INTERNATIONALSALE OF GOODS (1980) IS SPECIFICALLY EXCLUDED AND WILL NOT APPLY TO THESOFTWARE.
-------------------------------------------------------------------------------
2. MPICH
Copyright Notice + 2002 University of Chicago
Mpich license
Permission is hereby granted to use, reproduce, prepare derivative works, and to redistribute to others. This software was authored by:
Mathematics and Computer Science Division Argonne National Laboratory, Argonne IL 60439
(and)
Department of Computer Science University of Illinois at Urbana-Champaign
GOVERNMENT LICENSE
Portions of this material resulted from work developed under a U.S. Government Contract and are subject to the following license: the Government is granted for itself and others acting on its behalf a paid-up, nonexclusive, irrevocable worldwide license in this computer software to reproduce, prepare derivative works, and perform publicly and display publicly.
DISCLAIMER
This computer code material was prepared, in part, as an account of work sponsored by an agency of the United States Government. Neither the United States, nor the University of Chicago, nor any of their employees, makes any warranty express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights.
-------------------------------------------------------------------------------
3. Libfabric and OpenFabrics Interfaces (OFI)
Copyright (c) 2015-2019 Intel Corporation. All rights reserved. Copyright (c) 2015-2019 Cisco Systems, Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------------------
4. OpenSHMEM
Copyright 2011 Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software.
Copyright (c) 2017 Intel Corporation. All rights reserved. This software isavailable to you under the BSD license.
COPYRIGHT
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer listed in this license in the documentation and/or other materials provided with the distribution.
- Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
The copyright holders provide no reassurances that the source code provided does not infringe any patent, copyright, or any other intellectual property rights of third parties. The copyright holders disclaim any liability to any recipient for claims brought against recipient by any third party for infringement of that parties intellectual property rights.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Additional copyrights may follow
======================================================================
Doug Lea's memory allocator is included in this work at src/malloc.c under thefollowing license terms:
This is a version (aka dlmalloc) of malloc/free/realloc written by Doug Lea andreleased to the public domain, as explained athttp://creativecommons.org/licenses/publicdomain. Send questions, comments,complaints, performance data, etc to dl@cs.oswego.edu
======================================================================
UTHash is included in this work under the following license terms:
Copyright (c) 2005-2014, Troy D. Hansonhttp://troydhanson.github.com/uthash/ All rights reserved.
Redistribution and use in source and binary forms, with or withoutmodification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ANDANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AREDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FORANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ONANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THISSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
======================================================================
Some autoconf macros used in building Sandia OpenSHMEM, residing in config/,are included from the Open MPI project under the following license terms:
Most files in this release are marked with the copyrights of the organizationswho have edited them. The copyrights below are in no particular order andgenerally reflect members of the Open MPI core team who have contributed codeto this release. The copyrights for code used under license from other partiesare included in the corresponding files.
Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana University Research and Technology Corporation. All rights reserved.Copyright (c) 2004-2017 The University of Tennessee and The University of Tennessee Research Foundation. All rights reserved.Copyright (c) 2004-2010 High Performance Computing Center Stuttgart, University of Stuttgart. All rights reserved.Copyright (c) 2004-2008 The Regents of the University of California. All rights reserved.Copyright (c) 2006-2017 Los Alamos National Security, LLC. All rights reserved.Copyright (c) 2006-2017 Cisco Systems, Inc. All rights reserved.Copyright (c) 2006-2010 Voltaire, Inc. All rights reserved.Copyright (c) 2006-2017 Sandia National Laboratories. All rights reserved.Copyright (c) 2006-2010 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.Copyright (c) 2006-2017 The University of Houston. All rights reserved.Copyright (c) 2006-2009 Myricom, Inc. All rights reserved.Copyright (c) 2007-2017 UT-Battelle, LLC. All rights reserved.Copyright (c) 2007-2017 IBM Corporation. All rights reserved.Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing Centre, Federal Republic of GermanyCopyright (c) 2005-2008 ZIH, TU Dresden, Federal Republic of GermanyCopyright (c) 2007 Evergrid, Inc. All rights reserved.Copyright (c) 2008 Chelsio, Inc. All rights reserved.Copyright (c) 2008-2009 Institut National de Recherche en Informatique. All rights reserved.Copyright (c) 2007 Lawrence Livermore National Security, LLC. All rights reserved.Copyright (c) 2007-2017 Mellanox Technologies. All rights reserved.Copyright (c) 2006-2010 QLogic Corporation. All rights reserved.Copyright (c) 2008-2017 Oak Ridge National Labs. All rights reserved.Copyright (c) 2006-2012 Oracle and/or its affiliates. All rights reserved.Copyright (c) 2009-2015 Bull SAS. All rights reserved.Copyright (c) 2010 ARM ltd. All rights reserved.Copyright (c) 2016 ARM, Inc. All rights reserved.Copyright (c) 2010-2011 Alex Brick . All rights reserved.Copyright (c) 2012 The University of Wisconsin-La Crosse. All rights reserved.Copyright (c) 2013-2016 Intel, Inc. All rights reserved.Copyright (c) 2011-2017 NVIDIA Corporation. All rights reserved.Copyright (c) 2016 Broadcom Limited. All rights reserved.Copyright (c) 2011-2017 Fujitsu Limited. All rights reserved.Copyright (c) 2014-2015 Hewlett-Packard Development Company, LP. All rights reserved.Copyright (c) 2013-2017 Research Organization for Information Science (RIST). All rights reserved.Copyright (c) 2017 Amazon.com, Inc. or its affiliates. All Rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
Redistribution and use in source and binary forms, with or withoutmodification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer listed in this license in the documentation and/or other materials provided with the distribution.
- Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
The copyright holders provide no reassurances that the source code provideddoes not infringe any patent, copyright, or any other intellectual propertyrights of third parties. The copyright holders disclaim any liability to anyrecipient for claims brought against recipient by any third party forinfringement of that parties intellectual property rights.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ANDANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AREDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FORANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ONANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THISSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
======================================================================
The "Simple PMI" implementation is derived from MPICH and has the followinglicense:
COPYRIGHT
The following is a notice of limited availability of the code, and disclaimerwhich must be included in the prologue of the code and in all source listingsof the code.
Copyright Notice + 2002 University of Chicago
Permission is hereby granted to use, reproduce, prepare derivative works, andto redistribute to others. This software was authored by:
Mathematics and Computer Science Division Argonne National Laboratory, ArgonneIL 60439
(and)
Department of Computer Science University of Illinois at Urbana-Champaign
GOVERNMENT LICENSE
Portions of this material resulted from work developed under a U.S. GovernmentContract and are subject to the following license: the Government is grantedfor itself and others acting on its behalf a paid-up, nonexclusive, irrevocableworldwide license in this computer software to reproduce, prepare derivativeworks, and perform publicly and display publicly.
DISCLAIMER
This computer code material was prepared, in part, as an account of worksponsored by an agency of the United States Government. Neither the UnitedStates, nor the University of Chicago, nor any of their employees, makes anywarranty express or implied, or assumes any legal liability or responsibilityfor the accuracy, completeness, or usefulness of any information, apparatus,product, or process disclosed, or represents that its use would not infringeprivately owned rights.
======================================================================
The backtracing options used at src/backtrace.h are followed from GASNet andhas the following license:
"Copyright (c) 2000-2018 The Regents of the University of California. Allrights reserved.
Permission to use, copy, modify, and distribute this software and itsdocumentation for any purpose, without fee, and without written agreement ishereby granted, provided that the above copyright notice and the following twoparagraphs appear in all copies of this software.
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FORDIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OFTHE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OFCALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR APARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE,SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS."
======================================================================-------------------------------------------------------------------------------
5. The Portable Hardware Locality (hwloc)
Copyright © 2004-2006 The Trustees of Indiana University and Indiana University Research and Technology Corporation. All rights reserved. Copyright © 2004-2005 The University of Tennessee and The University of Tennessee Research Foundation. All rights reserved. Copyright © 2004-2005 High Performance Computing Center Stuttgart, University of Stuttgart. All rights reserved. Copyright © 2004-2005 The Regents of the University of California. All rights reserved. Copyright © 2009 CNRS Copyright © 2009-2016 Inria. All rights reserved. Copyright © 2009-2015 Université Bordeaux Copyright © 2009-2015 Cisco Systems, Inc. All rights reserved. Copyright © 2009-2012 Oracle and/or its affiliates. All rights reserved. Copyright © 2010 IBM Copyright © 2010 Jirka Hladky Copyright © 2012 Aleksej Saushev, The NetBSD Foundation Copyright © 2012 Blue Brain Project, EPFL. All rights reserved. Copyright © 2013-2014 University of Wisconsin-La Crosse. All rights reserved. Copyright © 2015 Research Organization for Information Science and Technology (RIST). All rights reserved. Copyright © 2015-2016 Intel, Inc. All rights reserved. See COPYING in top-level directory.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS ORIMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIESOF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUTNOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANYTHEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OFTHIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------------------
6. Intel(R) Instrumentation and Tracing Technology (ITT) and Just-In-Time (JIT) API
Copyright (c) 2019 Intel Corporation. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------------------
7. Intel(R) oneAPI Level Zero (Level Zero)
MIT License
Copyright (C) 2019-2021 Intel Corporation
Permission is hereby granted, free of charge, to any person obtaining a copyof this software and associated documentation files (the "Software"), to dealin the Software without restriction, including without limitation the rightsto use, copy, modify, merge, publish, distribute, sublicense, and/or sellcopies of the Software, and to permit persons to whom the Software isfurnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in allcopies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ORIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THEAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHERLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THESOFTWARE.
-------------------------------------------------------------------------------
8. OpenPMIx
Most files in this release are marked with the copyrights of the organizationswho have edited them. The copyrights below are in no particular order andgenerally reflect members of the Open MPI core team who have contributed codethat may or may not have been ported to PMIx. Per the terms of that LICENSE, weinclude the list here. The copyrights for code used under license from otherparties are included in the corresponding files.
Copyright (c) 2004-2010 The Trustees of Indiana University and Indiana University Research and Technology Corporation. All rights reserved.Copyright (c) 2004-2010 The University of Tennessee and The University of Tennessee Research Foundation. All rights reserved.Copyright (c) 2004-2010 High Performance Computing Center Stuttgart, University of Stuttgart. All rights reserved.Copyright (c) 2004-2008 The Regents of the University of California. All rights reserved.Copyright (c) 2006-2010 Los Alamos National Security, LLC. All rights reserved.Copyright (c) 2006-2010 Cisco Systems, Inc. All rights reserved.Copyright (c) 2006-2010 Voltaire, Inc. All rights reserved.Copyright (c) 2006-2011 Sandia National Laboratories. All rights reserved.Copyright (c) 2006-2010 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.Copyright (c) 2006-2010 The University of Houston. All rights reserved.Copyright (c) 2006-2009 Myricom, Inc. All rights reserved.Copyright (c) 2007-2008 UT-Battelle, LLC. All rights reserved.Copyright (c) 2007-2019 IBM Corporation. All rights reserved.Copyright (c) 1998-2005 Forschungszentrum Juelich, Juelich Supercomputing Centre, Federal Republic of GermanyCopyright (c) 2005-2008 ZIH, TU Dresden, Federal Republic of GermanyCopyright (c) 2007 Evergrid, Inc. All rights reserved.Copyright (c) 2008 Chelsio, Inc. All rights reserved.Copyright (c) 2008-2009 Institut National de Recherche en Informatique. All rights reserved.Copyright (c) 2007 Lawrence Livermore National Security, LLC. All rights reserved.Copyright (c) 2007-2019 Mellanox Technologies. All rights reserved.Copyright (c) 2006-2010 QLogic Corporation. All rights reserved.Copyright (c) 2008-2010 Oak Ridge National Labs. All rights reserved.Copyright (c) 2006-2010 Oracle and/or its affiliates. All rights reserved.Copyright (c) 2009 Bull SAS. All rights reserved.Copyright (c) 2010 ARM ltd. All rights reserved.Copyright (c) 2010-2011 Alex Brick <bricka@ccs.neu.edu>. All rights reserved.Copyright (c) 2012 The University of Wisconsin-La Crosse. All rights reserved.Copyright (c) 2013-2019 Intel, Inc. All rights reserved.Copyright (c) 2011-2014 NVIDIA Corporation. All rights reserved.Copyright (c) 2019 Amazon.com, Inc. or its affiliates. All Rights reserved.
$COPYRIGHT$
Additional copyrights may follow
$HEADER$
The following LICENSE pertains to both PMIx and any code ported from Open MPI.
Redistribution and use in source and binary forms, with or withoutmodification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer listed in this license in the documentation and/or other materials provided with the distribution.
* Neither the name of the copyright holders nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
The copyright holders provide no reassurances that the source code provideddoes not infringe any patent, copyright, or any other intellectual propertyrights of third parties. The copyright holders disclaim any liability to anyrecipient for claims brought against recipient by any third party forinfringement of that parties intellectual property rights.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" ANDANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIEDWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AREDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FORANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ONANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THISSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-------------------------------------------------------------------------------
The following third party programs have their own third party programs. These additional third party program files are as follows: 1. Intel(R) Intel(R) MPI Library - <install_dir>/mpi/latest/share/doc/mpi/third-party-programs.txt
-------------------------------------------------------------------------------
*Other names and brands may be claimed as the property of others.