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.org
+25-19Lines changed: 25 additions & 19 deletions
Original file line number
Diff line number
Diff line change
@@ -168,17 +168,27 @@ build PCAone from the source code, the following dependencies are required:
168
168
- GNU make
169
169
- zlib
170
170
171
-
We *recommend* building the software from source with MKL as backend to maximize the performance. For MacOS users, we recommend =llvm= by =brew install llvm= instead of the default =clang= shipped with MacOS. Check out the [[https://github.com/Zilong-Li/PCAone/blob/dev/.github/workflows/mac.yml#L21][mac workflow]].
171
+
On Linux, we *recommend* building the software from source with MKL as backend to maximize the performance.
172
172
173
173
*** With MKL or OpenBLAS as backend
174
174
175
-
Build PCAone dynamically with MKL can maximize the performance since the
176
-
faster threading layer =libiomp5= will be linked at runtime. One can obtain
177
-
the MKL by one of the following option:
175
+
Build PCAone dynamically with MKL can maximize the performance for large
176
+
dataset particularly, because the faster threading layer =libiomp5= will be
177
+
linked at runtime. There are two options to obtain MKL library:
178
178
179
-
- install =mkl= by conda
179
+
- download =MKL= from [[https://www.intel.com/content/www/us/en/developer/tools/oneapi/onemkl.html][the website]]
180
180
181
-
#+begin_src sh
181
+
After having =MKL= installed, find the =MKL= root path and replace the path below with your own.
182
+
183
+
#+begin_src shell
184
+
make -j4 MKLROOT=/opt/intel/oneapi/mkl/latest ONEAPI_COMPILER=/opt/intel/oneapi/compiler/latest
185
+
#+end_src
186
+
187
+
Alternatively, for advanced user, modify variables directly in =Makefile= and run =make= to use MKL or OpenBlas as backend.
0 commit comments