Updated to latest cast XMR version on February 7, 2017

This guide describes how to mine CryptoNight/CryptoNote based crypto currencies like Monero (XMR), Bytecoin (BCN), DigitalNote (XDN) and Intense (ITNS) at highest mining rates with the AMD Radeon RX Vega 56/64 GPUs.

CryptoNight is the Proof-Of-Work (POW) hash algorithm used by many CryptoNote protocol based currencies to sign the blockchain transactions. The CryptoNight algorithm is designed to use a lot of memory and a lot of memory read/write operations. The idea is that it should have no big advantage to run the algorithm on number crunchers like GPUs or dedicated ASICs and perform equally well on general purpose CPUs.

Now the AMD Radeon RX Vega 56/64 GPUs has entered the field. Their new memory interface based on HBM2 memory delivers higher memory throughputs also in random access workloads which makes them the currently fastest and most efficient devices available to crunch CryptoNight hashes.

For comparison:

  • Intel Core i9-7900X (10 cores, 3.3 GHz): ~470 CryptoNight Hashes/s
  • AMD Ryzen Threadripper 1950X (16 cores, 3.4 GHz): ~1080 CryptoNight Hashes/s
  • Nividia Geforce GTX-1080TI: ~900 CryptoNight Hashes/s

The AMD Radeon RX Vega can crunch more than 1900 CryptoNight hashes per second with a power consumption of 150 watts.

With some more overclocking the RX Vega breaks the 2 KHash/s barrier with a power consumption of 250 watts.

Compare the price tags of the devices and it’s easy to calculate which gives the most bang for the buck.

How to setup a Radeon RX Vega 56/64 for optimal CryptoNight mining is described in the next steps.

The Miner Software: Cast XMR

We developed special CryptoNight mining software ‘Cast XMR’ for RX Vega GPUs. It utilizes OpenCL 2.0 and hand optimized low level code to take full advantage of the Vega architecture.

Read all about the latest version of Cast XMR here.

Cast XMR 0.8.5 for Windows (64 bit)

To run Cast XMR the typical miner command line has to be entered:

cast_xmr -S [pool server] -u [username or wallet address]

With the default Radeon Vega driver (at the time of writting driver version 17.9.2) and default ‘balance’ settings of AMD Global WattMan you will get about 1050 Hash/s. Which is already higher then with any other CryptoNight mining software.

cast xmr default driver

But to really get the Vega going some further steps can be done.

The AMD Blochchain Compute Driver

AMD released a special driver for Radeon GPUs which is called the ReLive Edition Beta for Blockchain Compute Driver Version the current version is 17.30.1029. It is called ‘beta’ but does the job for Vega 64 and Vega 56 GPUs.

The purpose of the driver is to optimize the card for compute workloads like machine learning and yes POW hashing for blockchains. What it exactly does is only know to the AMD engineers, a guess is that it dedicates more memory bandwith to the compute units and takes it away from the GPU rendering paths.

When installing do a ‘Clean Install’ and select to install the ‘Local Driver (17.30)’ otherwise you will probably end up with the wrong version of the driver.

Be aware for gaming the original driver has to be installed otherwise you will have really low framerates.

After installing the Blockhain Compute driver and firing up Cast XMR it will detect that the special driver is installed and use a further optimized kernel. Which will result in:

cast xmr blockchain driver default setting


cast xmr blockchain driver bug

If you get less then 1500 Hash/s you probably have to do following step:

Workaround: Toggle the HBCC Memory Segment

One anoying bug of the Blockchain driver seems to be that sometimes after a reboot it does not deliver full performance. A fix for it (if you know a better one, please let me know) is to toggle the “HBCC Memory Segment” option in the Radeon Settings from ‘disabled’ to any other setting or the other way around and press ‘Apply’. Close the mining app before doing so, otherwise you will get a furious crash!

cast xmr blockchain driver workaround

The settings will close and the driver seems to be reinitialized, after that in most cases it results in the correct hashrate. It also seems not to matter if HBCC Memory Segment is disabled or turned on. Though disabled would be the more logical state as for mining the HBCC feature is not needed.

GPU Core, Memory and Fan Settings

Now it is time to tweak the clocks to adjust the Vega GPU to the special mining workload. Go the Global WattMan section in the AMD Radeon Settings, flick the Performance Profile to “Custom” and adjust the values.

First make sure to adjust the fan for better cooling. Switch the “Temperature” switch to “Manual” and enter as target temperature 70. If the temperature goes above 70° the card starts throttling the clocks to protect from overheating and the hash rates will decrease dramatically. Cooler is always better as it reduce power consumption and protects the GPU.

The basic idea for overclocking is to increase the ‘Memory Clock’, reduce ‘GPU Clock’ as low as possible without throtteling the hash rate, reduce the ‘Power Limit’ as far as possible to prevent overheating and reduce power consumption but also not to stall the memory clock and thereby the hash rate.

We found following settings to be sweet spots, but try for yourself. The cooling conditions have probably a high influence on your optimal settings.

Vega 64 Hash Rates

1900 Hash/s with 200 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 1025 MHz
  • Power Limit: -23%

2000 Hash/s with 250 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 1095 MHz
  • Power Limit: 0

2050 Hash/s with 280 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 1105 MHz
  • Power Limit: +20%

Vega 56 Hash Rates

1900 Hash/s with 150 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 945 MHz
  • Power Limit: -22%

2000 Hash/s with 200 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 965 MHz
  • Power Limit: 0

2050 Hash/s with 225 watts power consumption

  • Core Frequency: -10%
  • Memory Clock: 990 MHz
  • Power Limit: +12%
cast xmr vega at 200 watts power consumption

For CryptoNight Mining Vega 56 or Vega 64?

After some testing it seems that the Vega 56 and Vega 64 are at least equal fast at CryptoNight hashing. Maybe because the memory part is nearly the same and that much compute is not really needed.

Both can peak perform more then 2050 Hashes/s.

But the Vega 56 achieves the same hash rate with about 50 watt less power consumption although or because the memory clock is 100 Mhz lower then on a Vega 64.

The Vega 64 is by far the more fiery card which means it gets hot really fast. With better cooling (like with the liquid cooled model) the Vega 64 maybe could run at higher memory rates and perform even better. But for now it always seems to throttle down itself after a few seconds to protect from overheating and gets very unstable at memory clocks above 1100 MHz.

With the current price difference and lower power consumption the RX Vega 56 is definitly the efficiency king at CryptoNight hashing.

Hash faster with Grandmaster.

Updated on February 1st, 2018 to version 0.8.5

Here is ‘Cast XMR’ the high performance CryptoNight miner for CryptoNote based crypto currencies like Monero (XMR), Bytecoin (BCN), DigitalNote (XDN) and many more.

Cast XMR is specially optimized for the Radeon RX Vega series of GPUs, reaching hash rates of more then 2000 CryptoNight Hashes/s on an single RX Vega 56 or Vega 64.

cast xmr

Hash faster and try it for yourself:

Cast XMR 0.8.5 for Windows (64 bit)


  • Full support for CryptoNight/CryptoNote based currencies:
  • Fastest miner for AMD Radeon RX Vega GPU series
  • Radeon RX Vega 64
    • Stock driver (Crimson 17.10.2) and settings: 1180 Hash/s
    • Blockchain driver and 1025 MHz mem clock: 1930 Hash/s
  • Radeon RX Vega 56
    • Stock driver (Crimson 17.10.2) and settings: 1150 Hash/s
    • Blockchain driver and 945 MHz mem clock: 1970! Hash/s
  • Radeon RX 480/RX 580
    • Stock driver (Crimson 17.10.2) and settings: 640 Hash/s
    • Blockchain driver and 2315 MHz mem clock: 810 Hash/s
  • Radeon RX 470/RX 570
    • Stock driver (Crimson 17.11.4) and settings: 640 Hash/s
    • Blockchain driver and 2250 MHz mem clock: 830 Hash/s
  • Multiple GPU support
  • Monitor temperature and fan speed of each GPU
  • Full pool support
  • Nicehasher support
  • Remote http access for statistics in JSON format
  • only 1.5% dev fee


Change History

Cast XMR Version 0.8.5 (2018/2/1)

  • 1% performance gain for Vega Frontier Edition with Blockchain driver (fastest GPU around)
  • 1% performance improvement with current stock driver (18.1.1) for RX Vega 56/64 (40% to go to reach Blockchain driver)
  • fix for random blocking console output
  • GPU now always logs with its device id not the order they are listed in the -G argument
  • --log option to log output to a file
  • remote access includes CORS support in HTTP header

Cast XMR Version 0.8.1 (2017/12/15)

  • Fix for OpenCL automatic platform detection for Crimson driver 17.12.1 (Adrenalin). Blockchain driver is still way more performant on Vegas though

Cast XMR Version 0.8 (2017/12/14)

  • kernel optimizations result in subtle performance improvements
  • --fastjobswitch option (experimental) to force fast switching to new jobs. When enabled the GPUs will switch to the new job within less then 100ms. This improves the effective hash rate by 1 to 5% as nearly no GPU performance will be wasted on calculating outdated shares anymore. The drawback is a slightly lower displayed hashrate as while switching no hashes are calculated.
  • improved support for more then 8 GPUs
  • support for Radeon RX 470/RX 570 (Polaris) added
  • --forcecompute option to force kernel for compute mode on Polaris (RX470/570/480/580) GPUs. In the Radeon Settings GPU Workload has to be switched to ‘Compute’. This option is available in Crimson 17.10.2 (or later) driver and reaches nearly the same performance on Polaris based GPUs as with the Blockchain driver.
  • openCL platform is auto detected if --opencl is not specified
  • --nonicehash option to disable nicehash support
  • nicehash support will automatically disabled if more then 8 GPUs are used. Otherwise search space could be exhausted to early and the GPUs search in overlapping nonce ranges.

Cast XMR Version 0.7 (2017/11/29)

  • network and job status added to current statistics
  • remote access to get current status at in JSON format (enable with --remoteaccess)
  • command line option to specify number of reconnects to pool (default 100) before giving up (set with --reconnects n). To realise a simple failover to another pool set it to a lower value and add a second configuration to batch file
  • fix for nicehash to support upto 8 GPUs (before only 4 were possible)

Cast XMR Version 0.6 (2017/10/27)

  • improved queue sync which results in an 0.1% higher average hash rate
  • experimental support for Radeon RX 480/580 GPUs added
  • pressing ‘s’ key prints the current statistics
  • count outdated and invalid shares separate
  • fixed random crash when quitting app
  • bugfix: invalid command line arguments did hang app

Cast XMR Version 0.5 (2017/10/19)

  • support for multiple Vega GPUs. Specify multiple GPUs comma separated with the -G switch like “-G 0,1,2,3”
  • monitor temperature and fan speed for each GPU
  • subtle performance improvements in core

Cast XMR Version 0.4 (2017/10/13)

  • performance optimzations result in 1 - 2% higher hash rates
  • reduced dev fee to 1.5%

Cast XMR Version 0.3 (2017/10/10)

  • performance optimzations result in 5 - 10% higher hash rates
  • breaking the 2 KHashes/s barrier with working overclocking settings for RX Vega 64 and RX Vega 56

Cast XMR Version 0.2 (2017/09/27)

  • performance improvement result in 1% higher hashrates
  • Improved support for RX Vega 56 (now goes faster then a Vega 64 !?)
  • Detection if Blockchain driver is installed
  • Fix for Sikka and Intense pools

Cast XMR Version 0.1 (2017/09/22)

  • Initial Release

How To

cast_xmr has a command line interface. For a minimal configuration run:

cast_xmr -S [pool server] -u [username or wallet address]

To select which GPU to use the -G switch, e.g. for using the 2nd card use:

cast_xmr -S [pool server] -u [username or wallet address] -G 1

To select multiple GPU to use the -G switch and list comma separated the GPUs which should be used, e.g. for using the 1st and 3rd card use:

cast_xmr -S [pool server] -u [username or wallet address] -G 0,2

In case you have multiple OpenCL implementation installed or mixed GPUs (Nvidia, Intel, AMD), the correct OpenCL implemenation can be selected with the “–opencl” switch:

cast_xmr -S [pool server] -u [username or wallet address] --opencl 1 -G 0

For a complete list of configuration options run:

cast_xmr --help

Read here how to get the best mining performance with a Radeon RX Vega 56/64 GPU

A Linux version to follow somewhere in time when useable Linux OpenCL drivers are available …

This blog will be about high performance massive parallel GPU computing.

The fastest Monero and Ethereum mining software on middle earth and beyond.

High end graphic cards, OpenCL/CUDA development, machine learning and alike.

… more at the turn of the tide.