This README's main purpose is to instruct on how to use and run the miner; for more information relating to the miner - supported platforms, supported coins, developer shares for the various configuration, performance for various hardware platforms, plans for the future, temperature on the back side of the moon, or anything else, please refer to either one of the three links below:
Basic Usage is
./<binaryName> <args> , with binary name and arguments as follows:
Depending on your architecture, pick:
luk-phi : for mining on 'bootable' x200 Xeon Phi nodes
luk-mpss-knl : For MPSS offload to x200 Phi Cards (7220 or 7240), on "regular" KNL card rigs with a regular CPU (Xeon, Core, Celeron, etc)
luk-phi-mpss-knl : For MPSS offload to x200 Phi Cards (7220 or 7240), on special builds where even the host system uses a Xeon Phi CPU (upon special request)
Note that cpu, knc, knc-native, and knc-mpss have been disabled and are no longer supported.
The miner understands the following arguments:
--algo <alg> | -a <alg> : mining algorithm to use (see below)
--host <hostname> : hostname for the pool to use
--port <port>: port of the pool to use
--user <username>: username to use on the specified pool
--pass <password>: passwrod to use on the specified pool (usually 'x')
--nicehash|-nh: enable nicehash-mode
--no-fail-on-malloc: Do not fatally terminate upon failed huge-page memory allocation. By default the miner fatally teminates to "gently remind you" to turn on huge-page support for your system. If this is not possible, use this flag to silently ignore this error (though you will get lower hashrate).
--donate <host> <port> <user> <percent>: Donate the given percentage of your hash rate to the given user name / wallet name, on the given host:port pool.
-l|--log-file <logfile> : Specify a file name where logging outputs are to go.
--simplified-logging : Enables a (additional) simplified logging method in which all logs look like a simple "LOG:field=value" that is easier to parse by automated monitoring tools.
--status-port <port> : Opens a TCP port at which it serves the latest status logs
The miner currently supports only
haven: I do have interal code for ether and turtle, but these are not nearly as profitable (if at all), so will not release those.
As such, use
-a <algo> with
xnhaven: 'cryptonight haven', as used by haven coin
Example: Running the x200 Xeon Phi miner for mining haven on
./luk-phi -a xnhaven --host pool.hashvault.pro --port 80 --user hvxxwLQB2wC1dmdSzw1fyTiMUhPa438YxgrZZPsv1Tkj5tgMLpN58SDikUGfBmkJ7RXXTRAzmYALa9vMe5P55L1m3aGHQpLWcM
Example: Running with x200 KNL PCI cards (7220A, 7240P) using MPSS offload (for haven):
./luk-mpss-knl -a xnhaven --host pool.hashvault.pro --port 80 --user hvxxwLQB2wC1dmdSzw1fyTiMUhPa438YxgrZZPsv1Tkj5tgMLpN58SDikUGfBmkJ7RXXTRAzmYALa9vMe5P55L1m3aGHQpLWcM
LukMiner comes with multiple different pre-compiled binaries; typially because either a given platofrm requires a binary that isn't compatible with other platforms (say,
-knc-native for knights corner devices won't run on a regular CPU; or x200 Phi binaries won't run on x100 Phi cards, etc); or because a binary requires additional dependencies that not everybody might have (e.g., the
-mpss binaries requires you to have a working install of the intel MPSS stack, which many machines do not have).
As such, you first have to choose the right binary from the following list:
luk-cpu : For regular CPUs: Intel Core, Intel Xeon, Intel Celeron, AMD Opteron, AMD FX, etcpp. Pretty much everything that has an x86 compatible instruction set. This binary is intentionally without any form of GPU mining, thus running even on older systems without (or with broken) GPU drivers.
luk-phi : For bootable x200 "Knights Landing" (or "Knights Mill") Xeon Phis (ie, typically the Asrock or Exxact machines that the blog talked about.
luk-mpss-knl: For MPSS offloading to the newer, x200 "Knights Landing" cards (7220 and 7240).
All all these three "offload" binaries also contain the plain cpu driver, so unless you turn CPU mining off explicitly it will automatically run on all GPUs/Phis and on the CPU.
One general source of confusion is which version of Xeon Phis are supported by this miner. In particular there are two very different architectures Intel has made over the years, and unfortunately, most people get confused as to which one is which. So, to clean that up: Despite a large number of different model numbers (7210, 7220A, 7240P, 7250, 7120, 5130, etcpp), the only thing that actually counts is the second of the digits, also commonly denominated as the
x200 series (ie, 7120 and 31S1p are both x100, 7220 and 7210 are x200).
x200Knights Landing / KNLs (7210, 7250, 7220, etc)
Everything that has a "2" in the second digit (ie, 7210, 7220, etc) is a (newer-generation)
"Knights Landing" (or abbreviated, KNL) Xeon Phis. These are newer generation, and are fully supported by lukMiner. KNLs usually come as "regular" CPUs (ie, mounted directly on a motherboard); those are the 7210, 7250, 7290, etc., and are used with the
In addition to these 'host mounted' KNLs there are also few (very rare) PCI cards of KNLs; those are the 7220As ('active' PCI card with its own fan), and the 7220P and 7240s('passive', without fan - supposed to be used in a rack-mounted server blade with good passive airflow). Both of those are supposed to be used with the
luk-mpss-knl binary (which will offload the device code from the linux host), but even that will only work with the right version of linux, the right drivers, etcpp.
x100Knights Corner / KNCs (5130, 7120, 31S1P, etc)
KNCs only come in PCI card form factor; and every such card that has a "1" as second digit in the model name is a KNC. The first digit (31xx vs 51xx vs vs 71xx etc) doesn't much matter - these enode core count, memory size, etc (same as core i3 vs i5 vs i7 on a desktop CPU); as long as there's a '1' in second digit its a KNC. KNCs are very outdated by now, and probably not profitable any more - but due to a lot(!) of inquiries I did re-activate a version of the KNC backend for this release... but you better not expect to get rich with that.
If power cost is no concern, you can still use lukMiner with KNCs using the
luk-mpss-knl binary (assuming you have a CentOS 7.3 version with Intel MPSS 3.8 installed). Alternatively, under windows you can install MPSS 3.8, copy the luk-knc-devicecode binary to the mic0 device, and then start this binary there using some windows ssh tools such as putty ... people have done that, but I'm not a windows guy, so won't be able to help with that. For reference, on haven a KNC will do something between 250 and 300 H/s - which as said above is probably not profitable unless your power is basically free.
Haven on a 7120 (61 cores, 1.2GHz, 16GB, 300W, active) : ~300 H/s
Haven on a 31S1P (57 cores, 1.1GHz, 8GB, 300W, passive) : 240-250 H/s
Haven on a 5110P (60 cores, 1GHz, 8GB, 225W, passive) : 240-250 H/s