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
-**Z13**: Optimized Level-3 BLAS and Level-1,2 (double precision)
143
-
-**Z14**: Optimized Level-3 BLAS and Level-1,2 (single precision)
151
+
-**Z13**: Optimized Level-3 BLAS and Level-1,2
152
+
-**Z14**: Optimized Level-3 BLAS and (single precision) Level-1,2
153
+
154
+
### Support for multiple targets in a single library
155
+
156
+
OpenBLAS can be built for multiple targets with runtime detection of the target cpu by specifiying DYNAMIC_ARCH=1 in Makefile.rule, on the gmake command line or as -DDYNAMIC_ARCH=TRUE in cmake.
157
+
For **x86_64**, the list of targets this activates contains Prescott, Core2, Nehalem, Barcelona, Sandybridge, Bulldozer, Piledriver, Steamroller, Excavator, Haswell, Zen, SkylakeX. For cpu generations not included in this list, the corresponding older model is used. If you also specify DYNAMIC_OLDER=1, specific support for Penryn, Dunnington, Opteron, Opteron/SSE3, Bobcat, Atom and Nano is added. Finally there is an option DYNAMIC_LIST that allows to specify an individual list of targets to include instead of the default.
158
+
DYNAMIC_ARCH is also supported on **x86**, where it translates to Katmai, Coppermine, Northwood, Prescott, Banias,
159
+
Core2, Penryn, Dunnington, Nehalem, Athlon, Opteron, Opteron_SSE3, Barcelona, Bobcat, Atom and Nano.
160
+
On **ARMV8**, it enables support for CortexA53, CortexA57, CortexA72, CortexA73, Falkor, ThunderX, ThunderX2T99, TSV110 as well as generic ARMV8 cpus.
161
+
For **POWER**, the list encompasses POWER6, POWER8 and POWER9, on **ZARCH** it comprises Z13 and Z14.
162
+
The TARGET option can be used in conjunction with DYNAMIC_ARCH=1 to specify which cpu model should be assumed for all the
163
+
common code in the library, usually you will want to set this to the oldest model you expect to encounter.
164
+
Please not that it is not possible to combine support for different architectures, so no combined 32 and 64 bit or x86_64 and arm64 in the same library.
144
165
145
166
### Supported OS
146
167
147
168
-**GNU/Linux**
148
169
-**MinGW or Visual Studio (CMake)/Windows**: Please read <https://github.com/xianyi/OpenBLAS/wiki/How-to-use-OpenBLAS-in-Microsoft-Visual-Studio>.
149
-
-**Darwin/macOS**: Experimental. Although GotoBLAS2 supports Darwin, we are not macOS experts.
170
+
-**Darwin/macOS/OSX/iOS**: Experimental. Although GotoBLAS2 already supports Darwin, we are not OSX/iOS experts.
150
171
-**FreeBSD**: Supported by the community. We don't actively test the library on this OS.
151
172
-**OpenBSD**: Supported by the community. We don't actively test the library on this OS.
173
+
-**NetBSD**: Supported by the community. We don't actively test the library on this OS.
152
174
-**DragonFly BSD**: Supported by the community. We don't actively test the library on this OS.
153
175
-**Android**: Supported by the community. Please read <https://github.com/xianyi/OpenBLAS/wiki/How-to-build-OpenBLAS-for-Android>.
176
+
-**AIX**: Supported on PPC up to POWER8
177
+
-**Haiku**: Supported by the community. We don't actively test the library on this OS.
178
+
-**SunOS**: Supported by the community. We don't actively test the library on this OS:
0 commit comments