Create CPU.md

This commit is contained in:
xmrig 2019-07-20 23:16:23 +07:00 committed by GitHub
parent d1705a7f74
commit 83f0f2bcad
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

56
doc/CPU.md Normal file
View file

@ -0,0 +1,56 @@
# CPU backend
All CPU related settings contains in one `cpu` object in config file, CPU backend allow specify multiple profiles and allow switch between them without restrictions. Default auto-configuration create reasonable minimum of profiles which cover all supported algorithms.
### Example
Example below demonstrate all primary ideas of flexible profiles configuration:
* `"rx/wow"` Exact match to algorithm `rx/wow`, defined 4 threads without CPU affinity.
* `"cn"` Default failback profile for all `cn/*` algorithms, defined 2 threads with CPU affinity, another failback profiles is `cn-lite`, `cn-heavy` and `rx`.
* `"cn-lite"` Default failback profile for all `cn-lite/*` algorithms, defined 2 double threads with CPU affinity.
* `"custom-profile"` Custom user defined profile.
* `"*"` Failback profile for all unhandled by other profiles algorithms.
* `"cn/r"` Exact match, alias to profile `custom-profile`.
* `"cn/0"` Exact match, disabled algorithm.
```json
{
"cpu": {
"enabled": true,
"huge-pages": true,
"hw-aes": null,
"priority": null,
"asm": true,
"rx/wow": [
-1,
-1,
-1,
-1,
],
"cn": [
0,
2
],
"cn-lite": [
{
"intensity": 2,
"affinity": 0
},
{
"intensity": 2,
"affinity": 2
}
],
"custom-profile": [
0,
2,
],
"*": [
-1
],
"cn/r": "custom-profile",
"cn/0": false
}
}
```