From 5904e18d40410af37f329d04f431904806cd7f4e Mon Sep 17 00:00:00 2001 From: "Field G. Van Zee" Date: Mon, 18 Mar 2019 13:22:55 -0500 Subject: [PATCH] Updates to docs/Multithreading.md. Details: - Made extra explicit the fact that: (a) multithreading in BLIS is disabled by default; and (b) even with multithreading enabled, the user must specify multithreading at runtime in order to observe parallelism. Thanks to M. Zhou for suggesting these clarifications in #292. - Also made explicit that only the environment variable and global runtime API methods are available when using the BLAS API. If the user wishes to use the local runtime API (specify multithreading on a per-call basis), one of the native BLIS APIs must be used. --- docs/Multithreading.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/Multithreading.md b/docs/Multithreading.md index 79cde20c1..d58cfd75a 100644 --- a/docs/Multithreading.md +++ b/docs/Multithreading.md @@ -31,6 +31,12 @@ To summarize: In order to observe multithreaded parallelism within a BLIS operat 1. Enable multithreading at configure-time. This is discussed in the [next section](docs/Multithreading.md#enabling-multithreading). 2. Specify multithreading at runtime. This is also discussed [later on](docs/Multithreading.md#specifying-multithreading). +**IMPORTANT**: Multithreading in BLIS is disabled by default. Furthermore, even when multithreading is enabled, BLIS will default to single-threaded execution at runtime. In order to both *allow* and *invoke* parallelism from within BLIS operations, you must both *enable* multithreading at configure-time and *specify* multithreading at runtime. + +To summarize: In order to observe multithreaded parallelism within a BLIS operation, you must do *both* of the following: +1. Enable multithreading at configure-time. This is discussed in the [next section](docs/Multithreading.md#enabling-multithreading). +2. Specify multithreading at runtime. This is also dicussed [later on](docs/Multithreading.md#specifying-multithreading). + # Enabling multithreading BLIS disables multithreading by default. In order to allow multithreaded parallelism from BLIS, you must first enable multithreading explicitly at configure-time.