@@ -4,38 +4,37 @@ Individual Phase
44Draft Ideas
55-----------
66
7- 1. C++ Library
8- ^^^^^^^^^^^^^^
7+ C++ Library
8+ ^^^^^^^^^^^
99
1010Currently, our project is primarily usable by the developers, us, themselves. The goal for this
1111phase is to transition the project from its developmental stage into a production-ready C++
1212library that can be easily integrated into other C++ projects.
1313
14- To achieve this, we plan to package the existing functionality into a distributable library.
15- In addition, we aim to improve usability by designing a clean tensor interface
16- that allows users to easily create, manipulate, and convert tensors to and from our internal
17- format .
14+ To achieve this, we plan to package the existing functionality into a distributable library. In order
15+ to simplify usage and improve consistency across our tensor operations, we are developing a dedicated
16+ tensor structure in C++. This structure will serve as a unified interface for creating and managing
17+ tensors, making it easier to use them for our tensor operations .
1818
19- Of course, documentation will also be a key part of this phase. We will provide clear
20- instructions on how to install and use the library, along with detailed guidance on its
21- features and functionality.
19+ Documentation will also be a key part of this phase. We will provide clear instructions on how to
20+ install and use the library, along with detailed guidance on its features and functionality.
2221
23- 2. Python Library
24- ^^^^^^^^^^^^^^^^^
22+ .. 2. Python Library
23+ .. ^^^^^^^^^^^^^^^^^
2524
26- To make our C++ tensor operations even more accessible to a wider audience, we plan to
27- publish a Python package that bridges the ease of Python with the performance of JIT-compiled
28- C++ code. This will involve creating Python bindings for our C++ project and implementing
29- a Python interface that fully exposes its functionality. The final package is intended to
30- be published on `PyPi <https://pypi.org >`_, allowing users to easily install and use it
31- with minimal setup.
25+ .. To make our C++ tensor operations even more accessible to a wider audience, we plan to
26+ .. publish a Python package that bridges the ease of Python with the performance of JIT-compiled
27+ .. C++ code. This will involve creating Python bindings for our C++ project and implementing
28+ .. a Python interface that fully exposes its functionality. The final package is intended to
29+ .. be published on `PyPi <https://pypi.org>`_, allowing users to easily install and use it
30+ .. with minimal setup.
3231
33- Suggestions
34- -----------
32+ .. Suggestions
33+ .. -----------
3534
36- 1. Implementation of the C++ library
37- 2. Implementation fo the Python library
38- 3. Implementation of the C++ library and creating the Python library on top of the C++ library
35+ .. 1. Implementation of the C++ library
36+ .. 2. Implementation fo the Python library
37+ .. 3. Implementation of the C++ library and creating the Python library on top of the C++ library
3938
4039 Execution
4140---------
@@ -71,7 +70,7 @@ All files under ``src/`` are private.
7170CMakeLists
7271^^^^^^^^^^
7372
74- Next, we adjust the CMakeLists of our project so it fullfills all required settins to be inluded as an library.
73+ Next, we adjust the CMakeLists of our project so it full fills all required settings to be included as an library.
7574
7675**Top-level-project vs. Sub-level-project **
7776
@@ -86,7 +85,7 @@ In our case we do not build tests nor benchmarks if the project is used as libra
8685
8786Next we dynamically check whether our library should be a static or a shared library. Again, CMake provided a global flag for this.
8887`BUILD_SHARED_LIBS <https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html> ` which means calls to ``add_library() ``
89- without any explicit libary type check the current ``BUILD_SHARED_LIBS ``. If it is true, then the default library type is
88+ without any explicit library type check the current ``BUILD_SHARED_LIBS ``. If it is true, then the default library type is
9089``SHARED ``. Otherwise, the default is ``STATIC ``.
9190
9291The targets themselves are all files under ``src/* ``.
0 commit comments