summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrzegorz Hasse <grzegorz.hasse@gmail.com>2017-12-06 16:32:27 -0800
committerGrzegorz Hasse <grzegorz.hasse@gmail.com>2017-12-06 16:37:52 -0800
commitaa6a6040e34c0c081a7359cee890e23bf7ff383e (patch)
treed2ca05718a13d6cef6cabadace8ae53712f4cdc7
parent74d4b2d1c3e528a39253c8236f681d29580e001d (diff)
downloadxmr-stak-aa6a6040e34c0c081a7359cee890e23bf7ff383e.zip
xmr-stak-aa6a6040e34c0c081a7359cee890e23bf7ff383e.tar.gz
Update documentation for `low_power_mode`.
-rw-r--r--doc/tuning.md14
-rw-r--r--xmrstak/backend/cpu/config.tpl6
2 files changed, 18 insertions, 2 deletions
diff --git a/doc/tuning.md b/doc/tuning.md
index 8eeefcb..bb9a7e4 100644
--- a/doc/tuning.md
+++ b/doc/tuning.md
@@ -9,6 +9,8 @@
* [Add more GPUs](#add-more-gpus)
* [Increase Memory Pool](#increase-memory-pool)
* [Scratchpad Indexing](#scratchpad-indexing)
+* [CPU Backend](#cpu-backend)
+ * [Choose Value for `low_power_mode`](#choose-value-for-low_power_mode)
## NVIDIA Backend
@@ -87,3 +89,15 @@ export GPU_SINGLE_ALLOC_PERCENT=99
The layout of the hash scratchpad memory can be changed for each GPU with the option `strided_index` in `amd.txt`.
Try to change the value from the default `true` to `false`.
+
+## CPU Backend
+
+By default the CPU backend can be tuned in the config file `cpu.txt`
+
+### Choose Value for `low_power_mode`
+
+The optimal value for `low_power_mode` depends on the cache size of your CPU, and the number of threads.
+
+The `low_power_mode` can be set to a number between `1` to `5`. When set to a value `N` greater than `1`, this mode increases the single thread performance by `N` times, but also requires at least `2*N` MB of cache per thread. It can also be set to `false` or `true`. The value `false` is equivalent to `1`, and `true` is equivalent to `2`.
+
+This setting is particularly useful for CPUs with very large cache. For example the Intel Crystal Well Processors are equipped with 128MB L4 cache, enough to run 8 threads at an optimal `low_power_mode` value of `5`.
diff --git a/xmrstak/backend/cpu/config.tpl b/xmrstak/backend/cpu/config.tpl
index 990a31d..b21a22d 100644
--- a/xmrstak/backend/cpu/config.tpl
+++ b/xmrstak/backend/cpu/config.tpl
@@ -1,9 +1,11 @@
R"===(
/*
* Thread configuration for each thread. Make sure it matches the number above.
- * low_power_mode - This mode will double the cache usage, and double the single thread performance. It will
+ * low_power_mode - This can either be a boolean (true or false), or a number between 1 to 5. When set to true,
+ this mode will double the cache usage, and double the single thread performance. It will
* consume much less power (as less cores are working), but will max out at around 80-85% of
- * the maximum performance.
+ * the maximum performance. When set to a number N greater than 1, this mode will increase the
+ * cache usage and single thread performance by N times.
*
* no_prefetch - Some sytems can gain up to extra 5% here, but sometimes it will have no difference or make
* things slower.
OpenPOWER on IntegriCloud