Skip to content

Commit

Permalink
Merge branch 'master' into onetbb-guru
Browse files Browse the repository at this point in the history
  • Loading branch information
vossmjp authored Dec 5, 2024
2 parents 252d429 + 90b0f18 commit 89449d8
Show file tree
Hide file tree
Showing 27 changed files with 338 additions and 83 deletions.
1 change: 1 addition & 0 deletions BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ cc_library(
]),
copts = ["-w"] + select({
"@platforms//os:windows": [""],
"@platforms//cpu:arm64": [""],
"//conditions:default": ["-mwaitpkg"],
}),
defines =
Expand Down
2 changes: 1 addition & 1 deletion Bazel.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ load("@platforms//tools/build_defs/repo:git.bzl", "git_repository")
git_repository(
name = "oneTBB",
branch = "master",
remote = "https://github.com/oneapi-src/oneTBB/",
remote = "https://github.com/uxlfoundation/oneTBB/",
)
```

Expand Down
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,17 @@ As an open source project, we welcome community contributions to oneAPI Threadin

## Licensing

Licensing is very important to open source projects. It helps ensure the software continues to be available under the terms that the author desired. The oneTBB project uses the [Apache 2.0 License](https://github.com/oneapi-src/oneTBB/blob/master/LICENSE.txt), a permissive open source license that allows you to freely use, modify, and distribute your own products that include Apache 2.0 licensed software. By contributing to the oneTBB project, you agree to the license and copyright terms therein and release your own contributions under these terms.
Licensing is very important to open source projects. It helps ensure the software continues to be available under the terms that the author desired. The oneTBB project uses the [Apache 2.0 License](https://github.com/uxlfoundation/oneTBB/blob/master/LICENSE.txt), a permissive open source license that allows you to freely use, modify, and distribute your own products that include Apache 2.0 licensed software. By contributing to the oneTBB project, you agree to the license and copyright terms therein and release your own contributions under these terms.

Some imported or reused components within oneTBB use other licenses, as described in [third-party-programs.txt](https://github.com/oneapi-src/oneTBB/blob/master/third-party-programs.txt). By carefully reviewing potential contributions, we can ensure that the community can develop products with oneTBB without concerns over patent or copyright issues.
Some imported or reused components within oneTBB use other licenses, as described in [third-party-programs.txt](https://github.com/uxlfoundation/oneTBB/blob/master/third-party-programs.txt). By carefully reviewing potential contributions, we can ensure that the community can develop products with oneTBB without concerns over patent or copyright issues.

## Prerequisites

As a contributor, youll want to be familiar with the oneTBB project and the repository layout. You should also know how to use it as explained in the [oneTBB documentation](https://oneapi-src.github.io/oneTBB/) and how to set up your build development environment to configure, build, and test oneTBB as explained in the [oneTBB Build System Description](cmake/README.md).
As a contributor, you'll want to be familiar with the oneTBB project and the repository layout. You should also know how to use it as explained in the [oneTBB documentation](https://uxlfoundation.github.io/oneTBB/) and how to set up your build development environment to configure, build, and test oneTBB as explained in the [oneTBB Build System Description](cmake/README.md).

## Pull Requests

You can find all [open oneTBB pull requests](https://github.com/oneapi-src/oneTBB/pulls) on GitHub.
You can find all [open oneTBB pull requests](https://github.com/uxlfoundation/oneTBB/pulls) on GitHub.

### Before contributing changes directly to the oneTBB repository

Expand Down
6 changes: 3 additions & 3 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ You can use the ``install`` components for partial installation.
The following install components are supported:
- `runtime` - oneTBB runtime package (core shared libraries and `.dll` files on Windows* OS).
- `devel` - oneTBB development package (header files, CMake integration files, library symbolic links, and `.lib` files on Windows* OS).
- `tbb4py` - [oneTBB Module for Python](https://github.com/oneapi-src/oneTBB/blob/master/python/README.md).
- `tbb4py` - [oneTBB Module for Python](https://github.com/uxlfoundation/oneTBB/blob/master/python/README.md).

If you want to install specific components after configuration and build, run:

Expand Down Expand Up @@ -99,7 +99,7 @@ The following example demonstrates how to install oneTBB for single-configuratio
# Do our experiments in /tmp
cd /tmp
# Clone oneTBB repository
git clone https://github.com/oneapi-src/oneTBB.git
git clone https://github.com/uxlfoundation/oneTBB.git
cd oneTBB
# Create binary directory for out-of-source build
mkdir build && cd build
Expand All @@ -121,7 +121,7 @@ Choose the configuration during the build and install steps:
REM Do our experiments in %TMP%
cd %TMP%
REM Clone oneTBB repository
git clone https://github.com/oneapi-src/oneTBB.git
git clone https://github.com/uxlfoundation/oneTBB.git
cd oneTBB
REM Create binary directory for out-of-source build
mkdir build && cd build
Expand Down
143 changes: 143 additions & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
<!--
******************************************************************************
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*******************************************************************************/-->

# Introduction

This document defines roles in the oneTBB project.

# Roles and Responsibilities

oneTBB project defines three main roles:
* [Contributor](#contributor)
* [Code Owner](#code-Owner)
* [Maintainer](#maintainer)

[permissions]: https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization#permissions-for-each-role

| | Contributor | Code Owner | Maintainer |
| :------------------------------------------------------------------------------------------------------------------------------------------ | :---------------------: | :---------------------: | :---------------------: |
| _Responsibilities_ | | | |
| Follow the [Code of Conduct](./CODE_OF_CONDUCT.md) ||||
| Follow [Contribution Guidelines](./CONTRIBUTING.md) ||||
| Ensure [Contribution Guidelines](./CONTRIBUTING.md) are followed ||||
| Co-own component or aspect of the library,<br> including contributing: bug fixes, implementing features,<br> and performance optimizations ||||
| Co-own on technical direction of component or<br> aspect of the library including work on RFCs ||||
| Co-own the project as a whole,<br> including determining strategy and policy for the project ||||
| _Privileges_ | | | |
| Permission granted | [Read][permissions] | [Write][permissions] | [Maintain][permissions] |
| Eligible to become | Code Owner | Maintainer ||
| Can recommend Contributors<br> to become Code Owner ||||
| Can participate in promotions of<br> Code Owners and Maintainers ||||
| Can suggest Milestones during planning ||||
| Can choose Milestones for specific component ||||
| Make a decision on project's Milestones during planning ||||
| Can propose new RFC or<br> participate in review of existing RFC ||||
| Can request rework of RFCs<br> in represented area of responsibility ||||
| Can request rework of RFCs<br> in any part of the project ||||
| Can manage release process of the project ||||
| Can represent the project in public as a Maintainer ||||

These roles are merit based. Refer to the corresponding section for specific
requirements and the nomination process.

## Contributor

A Contributor invests time and resources to improve oneTBB project.
Anyone can become a Contributor by bringing value in any following way:
* Answer questions from community members.
* Propose changes to the design.
* Provide feedback on design proposals.
* Review and/or test pull requests.
* Test releases and report bugs.
* Contribute code, including bug fixes, features implementations,
and performance optimizations.

## Code Owner

A Code Owner has responsibility for a specific project component or a functional
area. Code Owners are collectively responsible
for developing and maintaining their component or functional areas, including
reviewing all changes to corresponding areas of responsibility and indicating
whether those changes are ready to be merged. Code Owners have a track record of
contribution and review in the project.

**Requirements:**
* Track record of accepted code contributions to a specific project component.
* Track record of contributions to the code review process.
* Demonstrate in-depth knowledge of the architecture of a specific project
component.
* Commit to being responsible for that specific area.

How to become a Code Owner?
1. A Contributor is nominated by opening a PR modifying the MAINTAINERS.md file
including name, Github username, and affiliation.
2. At least two specific component Maintainers approve the PR.
3. [CODEOWNERS](./CODEOWNERS) file is updated to represent corresponding areas of responsibility.

## Maintainer
Maintainers are the most established contributors responsible for the
project technical direction. They participate in making decisions about the
strategy and priorities of the project.

**Requirements:**
* Have experience as a Code Owner.
* Track record of major project contributions to a specific project component.
* Demonstrate deep knowledge of a specific project component.
* Demonstrate broad knowledge of the project across multiple areas.
* Commit to using privileges responsibly for the good of the project.
* Be able to exercise judgment for the good of the project, independent of
their employer, friends, or team.

Process of becoming a maintainer:
1. A Maintainer may nominate a current code owner to become a new Maintainer by
opening a PR against MAINTAINERS.md file.
2. A majority of the current Maintainers must then approve the PR.

# Code Owners and Maintainers List

## oneTBB core (API, Architecture, Tests)

| Name | Github ID | Affiliation | Role |
| --------------------- | --------------------- | ----------------- | ---------- |
| Ilya Isaev | @isaevil | Intel Corporation | Code Owner |
| Sarath Nandu R | @sarathnandu | Intel Corporation | Code Owner |
| Dmitri Mokhov | @dnmokhov | Intel Corporation | Code Owner |
| Alexey Kukanov | @akukanov | Intel Corporation | Code Owner |
| Konstantin Boyarinov | @kboyarinov | Intel Corporation | Maintainer |
| Aleksei Fedotov | @aleksei-fedotov | Intel Corporation | Maintainer |
| Michael Voss | @vossmjp | Intel Corporation | Maintainer |
| Pavel Kumbrasev | @pavelkumbrasev | Intel Corporation | Maintainer |

## oneTBB TBBMALLOC (API, Architecture, Tests)

| Name | Github ID | Affiliation | Role |
| --------------------- | --------------------- | ----------------- | ---------- |
| Łukasz Plewa | @lplewa | Intel Corporation | Maintainer |


## oneTBB Documentation

| Name | Github ID | Affiliation | Role |
| ---------------------- | --------------------- | ----------------- | ---------- |
| Alexandra Epanchinzeva | @aepanchi | Intel Corporation | Code Owner |


## oneTBB Release Management

| Name | Github ID | Affiliation | Role |
| ------------------ | --------------------- | ----------------- | ---------- |
| Olga Malysheva | @omalyshe | Intel Corporation | Maintainer |

14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# oneAPI Threading Building Blocks (oneTBB) <img align="right" width="200" height="100" src="https://raw.githubusercontent.com/uxlfoundation/artwork/e98f1a7a3d305c582d02c5f532e41487b710d470/foundation/uxl-foundation-logo-horizontal-color.svg">
[![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)
[![Join the community on GitHub Discussions](https://badgen.net/badge/join%20the%20discussion/on%20github/blue?icon=github)](https://github.com/oneapi-src/oneTBB/discussions)
[![Apache License Version 2.0](https://img.shields.io/badge/license-Apache_2.0-green.svg)](LICENSE.txt) [![oneTBB CI](https://github.com/uxlfoundation/oneTBB/actions/workflows/ci.yml/badge.svg)](https://github.com/uxlfoundation/oneTBB/actions/workflows/ci.yml?query=branch%3Amaster)
[![Join the community on GitHub Discussions](https://badgen.net/badge/join%20the%20discussion/on%20github/blue?icon=github)](https://github.com/uxlfoundation/oneTBB/discussions)
[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/9125/badge)](https://www.bestpractices.dev/projects/9125)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/oneapi-src/oneTBB/badge)](https://securityscorecards.dev/viewer/?uri=github.com/oneapi-src/oneTBB)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/uxlfoundation/oneTBB/badge)](https://securityscorecards.dev/viewer/?uri=github.com/uxlfoundation/oneTBB)
[![Gurubase](https://img.shields.io/badge/Gurubase-Ask%20oneTBB%20Guru-006BFF)](https://gurubase.io/g/onetbb)

oneTBB is a flexible C++ library that simplifies the work of adding parallelism
Expand Down Expand Up @@ -32,12 +32,12 @@ See [Release Notes](RELEASE_NOTES.md) and [System Requirements](SYSTEM_REQUIREME

## 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/main/tbb_userguide/Migration_Guide.html)
* [oneTBB Developer Guide and Reference](https://uxlfoundation.github.io/oneTBB)
* [Migrating from TBB to oneTBB](https://uxlfoundation.github.io/oneTBB/main/tbb_userguide/Migration_Guide.html)
* [README for the CMake build system](cmake/README.md)
* [oneTBB Testing Approach](https://oneapi-src.github.io/oneTBB/main/intro/testing_approach.html)
* [oneTBB Testing Approach](https://uxlfoundation.github.io/oneTBB/main/intro/testing_approach.html)
* [Basic support for the Bazel build system](Bazel.md)
* [oneTBB Discussions](https://github.com/oneapi-src/oneTBB/discussions)
* [oneTBB Discussions](https://github.com/uxlfoundation/oneTBB/discussions)
* [WASM Support](WASM_Support.md)

## Installation
Expand Down
Loading

0 comments on commit 89449d8

Please sign in to comment.