You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 24, 2025. It is now read-only.
* added a daily.sh script
* added a daily workflow that runs on the devcloud
* added a config file for pre-commit
* added pre-commit to the workflow
* reformat files
* checks now run on ubuntu-latest
* remove unnecessary pre-commit hooks, reformat
* added the codespell hook and fixed spelling
* added a simple Dockerfile
* added a docker_workflow.yml
* small fixes
* added running pre-commit as a first workflow's step
* remove the unused Dockerfile and devcloud workflow
* remove -DENABLE_SYCL flag from the workflow
docker run -it -v $(pwd):/custom-directory-name -u root docker.io/intel/oneapi:latest /bin/bash
48
-
cd custom-directory-name
48
+
cd custom-directory-name
49
49
CXX=icpx CC=icx cmake -B build -DENABLE_SYCL=ON
50
50
cmake --build build -j
51
51
```
@@ -81,12 +81,12 @@ In this way, many of the technical details related to the parallel execution of
81
81
### Namespaces
82
82
83
83
General namespace used in the library is `dr::`
84
-
For program using a single node with shared memory available for multiple CPUs and one or more GPUs, data structures and algoritms from `dr::shp::` namespace are provided.
84
+
For program using a single node with shared memory available for multiple CPUs and one or more GPUs, data structures and algorithms from `dr::shp::` namespace are provided.
85
85
For distributed memory model, use the `dr::mhp::` namespace.
86
86
87
87
### Data structures
88
88
89
-
Content of distributes-ranges' data structures is distributed over available nodes. For example, segments of `dr::mhp::distributed_vector` are located in memory of different nodes (mpi processes). Still, global view of the `distributed_vector` is uniform, with contigous indices.
89
+
Content of distributes-ranges' data structures is distributed over available nodes. For example, segments of `dr::mhp::distributed_vector` are located in memory of different nodes (mpi processes). Still, global view of the `distributed_vector` is uniform, with contiguous indices.
90
90
<!-- TODO: some pictures here -->
91
91
92
92
#### Halo concept
@@ -97,7 +97,7 @@ To support this situation, the concept of halo was introduced. A halo is an area
97
97
98
98
### Algorithms
99
99
100
-
Follwing algorithms are included in distributed-ranges, both in mhp and shp versions:
100
+
Following algorithms are included in distributed-ranges, both in mhp and shp versions:
101
101
102
102
```cpp
103
103
copy()
@@ -121,7 +121,7 @@ The examples should be compiled with SYCL compiler and run with.
121
121
mpirun -n N ./build/src/example_name
122
122
```
123
123
124
-
where `N` - number of MPI processes. Replace _example_name_ with appropiate name of a file tu run.
124
+
where `N` - number of MPI processes. Replace _example_name_ with appropriate name of a file tu run.
125
125
126
126
### Example 1
127
127
@@ -140,13 +140,13 @@ The example shows the distributed nature of dr data structures. The distributed_
140
140
141
141
[./src/example3.cpp](src/example3.cpp)
142
142
143
-
The example simulates the elementary 1-d cellular automaton (ECA). Description of what the automaton is and how it works can be found in [wikipedia](https://en.wikipedia.org/wiki/Elementary_cellular_automaton). Visulisation of the automaton work is available in [ASU team webpage](https://elife-asu.github.io/wss-modules/modules/1-1d-cellular-automata).
143
+
The example simulates the elementary 1-d cellular automaton (ECA). Description of what the automaton is and how it works can be found in [wikipedia](https://en.wikipedia.org/wiki/Elementary_cellular_automaton). Visualisation of the automaton work is available in [ASU team webpage](https://elife-asu.github.io/wss-modules/modules/1-1d-cellular-automata).
144
144
145
145
The ECA calculates the new value of a cell using old value of the cell and old values of the cell's neighbors. Therefore a halo of 1-cell width is used, to get access to neighboring cells' values when the loop eaches end of local segment of a vector.
146
146
Additionally, a use of a subrange is presented, and `transform()` function, which puts transformed values of input structure to the output structure, element by element. The transforming function is given as lambda `newvalue`.
147
147
_Please note: after each loop the vector content is printed with `fmt::print()`. The formatter function for `distributed_vector` is rather slow, as it gets the vector element by element, both from local node and remote nodes. You can think about customised, more effective way of results presentation._
148
148
149
149
<!--
150
-
Consider adding one more example:
150
+
Consider adding one more example:
151
151
*Simple 2-D operation - Find a pattern in the randomly filled array*
Intel is committed to rapidly addressing security vulnerabilities affecting our customers and providing clear guidance on the solution, impact, severity and mitigation.
2
+
Intel is committed to rapidly addressing security vulnerabilities affecting our customers and providing clear guidance on the solution, impact, severity and mitigation.
3
3
4
4
## Reporting a Vulnerability
5
5
Please report any security vulnerabilities in this project utilizing the guidelines [here](https://www.intel.com/content/www/us/en/security-center/vulnerability-handling-guidelines.html).
0 commit comments