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
Copy file name to clipboardExpand all lines: README.md
+7-6Lines changed: 7 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,12 +23,13 @@ The framework requires the following external libraries:
23
23
24
24
In order to inform SAF which CBLAS/LAPACK supporting library/libraries you have linked to your project, simply add **one** of the following global pre-processor definitions:
25
25
```
26
-
SAF_USE_INTEL_MKL_LP64 # great option, but only for x86 architectures (using the LP64 config [int32])
27
-
SAF_USE_INTEL_MKL_ILP64 # great option, but only for x86 architectures (using the ILP64 config [int64])
28
-
SAF_USE_OPEN_BLAS_AND_LAPACKE # good option, works on everything
29
-
SAF_USE_APPLE_ACCELERATE # good option (x86 and ARM), faster than OpenBLAS, but MacOSX only & slower than MKL
30
-
SAF_USE_ATLAS # bad option (x86 and ARM), many LAPACK functions are missing
31
-
SAF_USE... # please get in touch if you use something else! :-)
26
+
SAF_USE_INTEL_MKL_LP64 # great option, but only for x86 architectures (using the LP64 config [int32])
27
+
SAF_USE_INTEL_MKL_ILP64 # great option, but only for x86 architectures (using the ILP64 config [int64])
28
+
SAF_USE_APPLE_ACCELERATE_LP64 # great option (x86 and ARM), but MacOSX only (using the LP64 config [int32])
29
+
SAF_USE_APPLE_ACCELERATE_ILP64 # great option (x86 and ARM), but MacOSX only (using the ILP64 config [int64])
30
+
SAF_USE_OPEN_BLAS_AND_LAPACKE # good option, works on everything
31
+
SAF_USE_ATLAS # bad option (x86 and ARM), many LAPACK functions are missing
32
+
SAF_USE... # please get in touch if you use something else! :-)
32
33
```
33
34
[Detailed instructions regarding how to build and link these libraries can be found here](docs/PERFORMANCE_LIBRARY_INSTRUCTIONS.md).
Copy file name to clipboardExpand all lines: docs/FRAMEWORK_STRUCTURE.md
+2-9Lines changed: 2 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -58,21 +58,14 @@ For more details, refer to: [**PERFORMANCE_LIBRARY_INSTRUCTIONS.md**](PERFORMANC
58
58
59
59
In order to use the optional built-in [SOFA](https://www.sofaconventions.org/mediawiki/index.php/SOFA_(Spatially_Oriented_Format_for_Acoustics)) reader module (**saf_sofa_reader**), your project must also link against the [netCDF](https://www.unidata.ucar.edu/software/netcdf/) library (including its dependencies).
60
60
61
-
For more details, refer to: [**SOFA_READER_MODULE_DEPENDENCIES.md**](SOFA_READER_MODULE_DEPENDENCIES.md)
62
-
63
61
Optionally, Intel's [Integrated Performance Primitives (IPP)](https://software.intel.com/content/www/us/en/develop/tools/integrated-performance-primitives.html) may be employed for the FFT with the following definition:
64
62
```
65
63
SAF_USE_INTEL_IPP
66
64
```
67
65
68
66
## Contributing
69
67
70
-
Contributions are very much welcomed and encouraged. Please feel free to make suggestions, pull-requests, or get in touch (via leo.mccormack(at)aalto.fi or github "issues") if you would like to discuss additions to the framework. These additions can come in many forms; including:
71
-
* bug fixes or optimisations to existing code
72
-
* adding new functionality (which falls under the scope of an existing module) to an existing module
73
-
* adding a new utility to the **saf_utilities** module or an entirely new module (see below)
74
-
* using the framework to create new **examples**, **extras**, or unit tests
75
-
* documentation improvements
68
+
Contributions are very much welcomed and encouraged. Please feel free to make suggestions, pull-requests, or get in touch (via a GitHub "issue") if you would like to discuss additions to the framework.
76
69
77
70
## Module structure
78
71
@@ -170,4 +163,4 @@ Note: your module can only be added as a **core** module if it is free from larg
170
163
171
164
All core modules must be released under the [ISC License](https://choosealicense.com/licenses/isc/) and only use third-party code that is provided under similar permissive licensing terms (ISC, MIT, BSD etc.).
172
165
173
-
Optional modules may be released under alternative licenses. If you would prefer (or are required) to release your module under a copyleft license, then you may do so. For example, the **saf_tracker** module is provided under the terms of the copyleft [GNU GPLv2 License](https://choosealicense.com/licenses/gpl-2.0/). However, please discuss with us if you wish to use a license other than ISC or GPLv2.
166
+
Optional modules may be released under alternative licenses. If you would prefer (or are required) to release your module under a copyleft license, then you may do so. For example, the **saf_tracker** module is provided under the terms of the copyleft [GNU GPLv2 License](https://choosealicense.com/licenses/gpl-2.0/).
Copy file name to clipboardExpand all lines: docs/PERFORMANCE_LIBRARY_INSTRUCTIONS.md
+10-7Lines changed: 10 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,12 +5,13 @@ The Spatial_Audio_Framework (SAF) requires any library (or combination of librar
5
5
Currently, SAF supports [Intel MKL](https://software.intel.com/en-us/articles/free-ipsxe-tools-and-libraries), [OpenBLAS](https://github.com/xianyi/OpenBLAS), [Apple Accelerate](https://developer.apple.com/documentation/accelerate), and [ATLAS](http://math-atlas.sourceforge.net/). You may select which option you wish to use by adding one of the following pre-processor definitions:
6
6
7
7
```
8
-
SAF_USE_INTEL_MKL_LP64 # great option, but only for x86 architectures (using the LP64 config [int32])
9
-
SAF_USE_INTEL_MKL_ILP64 # great option, but only for x86 architectures (using the ILP64 config [int64])
10
-
SAF_USE_OPEN_BLAS_AND_LAPACKE # good option, works on everything
11
-
SAF_USE_APPLE_ACCELERATE # good option (x86 and ARM), faster than OpenBLAS, but MacOSX only & slower than MKL
12
-
SAF_USE_ATLAS # bad option (x86 and ARM), many LAPACK functions are missing
13
-
SAF_USE... # please get in touch if you use something else! :-)
8
+
SAF_USE_INTEL_MKL_LP64 # great option, but only for x86 architectures (using the LP64 config [int32])
9
+
SAF_USE_INTEL_MKL_ILP64 # great option, but only for x86 architectures (using the ILP64 config [int64])
10
+
SAF_USE_APPLE_ACCELERATE_LP64 # great option (x86 and ARM), but MacOSX only (using the LP64 config [int32])
11
+
SAF_USE_APPLE_ACCELERATE_ILP64 # great option (x86 and ARM), but MacOSX only (using the ILP64 config [int64])
12
+
SAF_USE_OPEN_BLAS_AND_LAPACKE # good option, works on everything
13
+
SAF_USE_ATLAS # bad option (x86 and ARM), many LAPACK functions are missing
14
+
SAF_USE... # please get in touch if you use something else! :-)
14
15
```
15
16
16
17
## SAF_USE_INTEL_MKL_LP64 or SAF_USE_INTEL_MKL_ILP64
## SAF_USE_APPLE_ACCELERATE_LP64 or SAF_USE_APPLE_ACCELERATE_ILP64
143
144
144
145
Only for MacOSX users. Simply link against the [**Accelerate**](https://developer.apple.com/documentation/accelerate) framework and you're good to go.
145
146
146
147
Note that Accelerate also includes an optimised DFT/FFT implementation and a number of additional vectorised utility functions which SAF is also able to make use of.
147
148
149
+
Adding ACCELERATE_NEW_LAPACK (supported in MacOS 13.3 or newer) is optional for SAF_USE_APPLE_ACCELERATE_LP64.
150
+
However, both ACCELERATE_NEW_LAPACK and ACCELERATE_LAPACK_ILP64 are required for SAF_USE_APPLE_ACCELERATE_ILP64.
0 commit comments