Skip to content

Commit 7ea97df

Browse files
committed
encountered an issue with laGP and BLAS and added a small section to the install instructions
1 parent 40b6bdd commit 7ea97df

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

docs/install.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ remotes::install_github('nevrome/mobest')
1111

1212
You can also install specific/older versions of mobest with the following syntax: `nevrome/mobest[@ref|#pull|@*release]`. For example to install the publication release version you can run `remotes::install_github('nevrome/[email protected]')`.
1313

14-
For any of this to work a number of **system libraries** (mostly for processing geospatial data) have to be installed on your system, primarily for one particular dependency of mobest: the **`sf` R package**. The following table includes the libraries and the names of the relevant packages in the package management systems of various Linux distributions and MacOS.
14+
For this to work a number of **system libraries** (mostly for processing geospatial data) have to be installed on your system, primarily for one particular dependency of mobest: the [**`sf` R package**](https://r-spatial.github.io/sf). The following table includes the libraries and the names of the relevant packages in the package management systems of various Linux distributions and MacOS.
1515

1616
| System library | deb package<br>(Ubuntu/Debian) | rpm package<br>(Fedora/CentOS) | pkgbuild package<br>(Arch) | brew package<br>(MacOS) |
1717
|-----------------------------------------------------------------------|----------------------------------|---------------------------------|-------------------------|----------------------|
@@ -22,6 +22,15 @@ For any of this to work a number of **system libraries** (mostly for processing
2222

2323
The `sf` package maintainers provide a good explanation how to install these: <https://r-spatial.github.io/sf/#installing>
2424

25+
Finally, mobest uses the [**`laGP` R package**](https://doi.org/10.32614/CRAN.package.laGP) for its core interpolation mechanism. `laGP` gets automatically installed together with mobest (with the code above). It uses the [BLAS](https://www.netlib.org/blas/) system library for fast matrix computations. If `mobest::locate()` runs only single-threaded, so not multi-threaded, and consequently very slowly, then your BLAS installation may be borked. You can use the following simple test to confirm the issue in R:
26+
27+
```r
28+
A <- matrix(rnorm(6000^2), 6000, 6000)
29+
system.time(A %*% A)
30+
```
31+
32+
If this does not run in parallel, then you should probably switch to another BLAS implementation. Run `extSoftVersion()` to see which BLAS library you're currently using in R.
33+
2534
## Create an apptainer image to run mobest
2635

2736
If installing system libraries is not possible (for example because you don't have root access) or desirable, then mobest can also be run through a virtualization layer. One option is the high performance computing container system [**apptainer**](https://apptainer.org) (formerly ["singularity"](https://apptainer.org/news/community-announcement-20211130)). To do this you can follow these steps:

0 commit comments

Comments
 (0)