summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Hernandez <xhernandez@datalab.es>2017-02-20 09:29:19 +0100
committerShyamsundar Ranganathan <srangana@redhat.com>2017-02-20 09:13:37 -0500
commit664807589341f1627328f80d9bc930bccbaaa2d4 (patch)
tree3639fb05dc6d4de60781755098f041c390b6a461
parent2451aa00dabb6ed1198f7eef63c0f635c33096fb (diff)
doc: Release notes for disperse
Change-Id: Ib7f586dc1a2c79180d18a737f476757e170f8a2e BUG: 1417735 Signed-off-by: Xavier Hernandez <xhernandez@datalab.es> Reviewed-on: https://review.gluster.org/16685 CentOS-regression: Gluster Build System <jenkins@build.gluster.org> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> Smoke: Gluster Build System <jenkins@build.gluster.org> Reviewed-by: Shyamsundar Ranganathan <srangana@redhat.com>
-rw-r--r--doc/release-notes/3.10.0.md47
1 files changed, 47 insertions, 0 deletions
diff --git a/doc/release-notes/3.10.0.md b/doc/release-notes/3.10.0.md
index b08dd273d0e..0de25b2574d 100644
--- a/doc/release-notes/3.10.0.md
+++ b/doc/release-notes/3.10.0.md
@@ -197,6 +197,53 @@ The above option is on by default.
*Known Issues:*
+### Added support for CPU extensions in disperse computations
+*Notes for users:*
+To improve disperse computations, a new way of generating dynamic code
+targeting specific CPU extensions like SSE and AVX on Intel processors is
+implemented. The available extensions are detected on run time. This can
+roughly double encoding and decoding speeds (or halve CPU usage).
+
+This change is 100% compatible with the old method. No change is needed if
+an existing volume is upgraded.
+
+You can control which extensions to use or disable them with the following
+command:
+
+```bash
+# gluster volume set <volname> disperse.cpu-extensions <type>
+```
+
+Valid <type> values are:
+
+* none: Completely disable dynamic code generation
+* auto: Automatically detect available extensions and use the best one
+* x64: Use dynamic code generation using standard 64 bits instructions
+* sse: Use dynamic code generation using SSE extensions (128 bits)
+* avx: Use dynamic code generation using AVX extensions (256 bits)
+
+The default value is 'auto'. If a value is specified that is not detected on
+run-time, it will automatically fallback to the next available option.
+
+*Limitations:*
+
+*Known Issues:*
+To solve a conflict between the dynamic code generator and SELinux, it
+has been necessary to create a dynamic file on runtime in the directory
+/usr/libexec/glusterfs. This directory only exists if the server package
+is installed. On nodes with only the client package installed, this directory
+won't exist and the dynamic code won't be used.
+
+It also needs root privileges to create the file there, so any gfapi
+application not running as root won't be able to use dynamic code generation.
+
+In these cases, disperse volumes will continue working normally but using
+the old implementation (equivalent to setting disperse.cpu-extensions to none).
+
+More information and a discussion on how to solve this can be found here:
+
+https://bugzilla.redhat.com/1421649
+
## Bugs addressed
Bugs addressed since release-3.9 are listed below.