Commit 9fd8dd80 authored by Jakub Klinkovský's avatar Jakub Klinkovský
Browse files

Documentation: removed Communicators from the core concepts, MPI will be documented separately

parent e805c0e9
Loading
Loading
Loading
Loading
+4 −13
Original line number Diff line number Diff line
@@ -11,24 +11,15 @@ TNL is based on the following core concepts:
   (TODO: rename to `Executor` or something like that)
   - Device is responsible for the execution of algorithms in a specific way.
   - Algorithms can be specialized by the `Device` template parameter.
3. \ref TNL::Communicators "Communicators"
   - Communicators represent the main abstraction for distributed computations,
     where multiple programs (or instances of the same program) have to
     communicate with each other.
   - At present, there are only two communicators:
     \ref TNL::Communicators::MpiCommunicator "MpiCommunicator"
     (uses [MPI](https://en.wikipedia.org/wiki/Message_Passing_Interface)) and
     \ref TNL::Communicators::NoDistrCommunicator "NoDistrCommunicator"
     (dummy communicator without any distribution support).
4. \ref TNL::Containers::Algorithms "Algorithms"
3. \ref TNL::Containers::Algorithms "Algorithms"
   - Basic (container-free) algorithms specialized by `Device`/`Executor`.
   - `ParallelFor`, `Reduction`, `MultiReduction`, `ArrayOperations`, ...
5. \ref TNL::Containers "Containers"
4. \ref TNL::Containers "Containers"
   - Classes for general data structures.
     (TODO: alternatively use "Dense" and "Sparse", because a dense matrix can
     be an extended alias for 2D array)
   - `Array`, `Vector` (also `VectorOperations`), `NDArray`, ...
6. Views
5. Views
   - Views wrap only a raw pointer to data and some metadata (such as the array
     size), they do not do allocation and deallocation of the data. Hence, views
     have a fixed size which cannot be changed.
@@ -38,7 +29,7 @@ TNL is based on the following core concepts:
   - Views have a copy-assignment operator which does a deep copy.
   - Views have all other methods present in the relevant container (data
     structure).
7. Smart pointers
6. Smart pointers
   - TODO

TODO: formalize the concepts involving lambda functions (e.g. in `Reduction`)