Debian Ethereum geth GPU mining

Материал из poiuty wiki
Перейти к: навигация, поиск

На debian 8 - долго собирать ethminer (cpp), по-этому будем копать на geth. Устанавливаем пакеты.

apt-get update 
apt-get upgrade
apt-get dist-upgrade
apt-get install linux-headers-`uname -r` xdm xorg screen libncurses5-dev libcurl4-openssl-dev bzip2 zip make git build-essential screen libcurl4-openssl-dev pkg-config libtool libncurses5-dev autoconf amd-opencl-dev opencl-headers
apt-get purge xserver-xorg-video-radeon
reboot

Редактируем /etc/X11/xdm/xdm-config

DisplayManager*authorize:   false

Скачиваем драйвер и устанавливаем его.

unzip radeon-crimson-15.11-15.30.1025.zip 
cd fglrx-15.30.1025/
./amd-driver-installer-15.30.1025-x86.x86_64.run 
aticonfig --adapter=all --initial -f
sync
reboot

Проверим, что драйвер работает.

export DISPLAY=:0
aticonfig --adapter=all --odgt

Adapter 0 - Supported device 6810
            Sensor 0: Temperature - 38.00 C

Устанавливаем SDK APP.

tar -xf AMD-APP-SDK-v2.9-lnx64.tgz 
sh Install-AMD-APP.sh 
reboot

Для компиляции geth нам нужен golang 1.5 => забираем его из backports.

apt-get -t jessie-backports install golang

Создаем пользователя, скачиваем geth и компилируем.

adduser --disabled-login ethereum
git clone https://github.com/ethereum/go-ethereum.git
cd go-ethereum
export GO_OPENCL=true
make geth
cp ./build/bin/geth /usr/bin/geth

Проверяем, что geth взаимодействует с видеокартой.

geth gpuinfo
=============================================
============ OpenCL Device Info =============
=============================================
Platform id              0
Platform Name            AMD Accelerated Parallel Processing
Platform Vendor          Advanced Micro Devices, Inc.
Platform Version         OpenCL 1.2 AMD-APP (1526.3)
Platform Extensions      cl_khr_icd cl_amd_event_callback cl_amd_offline_devices 
Platform Profile         FULL_PROFILE

Device OpenCL id         0
Device id for mining     0
Device Name              Pitcairn
Vendor                   Advanced Micro Devices, Inc.
Version                  OpenCL 1.2 AMD-APP (1526.3)
Driver version           1526.3 (VM)
Address bits             32
Max clock freq           1100
Global mem size          811597824
Max constant buffer size 65536
Max mem alloc size       442761216
Max compute units        20
Max work group size      256
Max work item sizes      [256 256 256]
=============================================
Found 1 devices. Benchmark first GPU:       geth gpubench 0

Запускаем майнинг.

geth -mine -minergpus '0' -autodag console

Проверяем нагрузку на видео карту.

# export DISPLAY=:0
# amdconfig --od-getclocks --adapter=all

Adapter 0 - Supported device 6810
                            Core (MHz)    Memory (MHz)
           Current Clocks :    1100           1400
             Current Peak :    1100           1400
  Configurable Peak Range : [300-1400]     [150-1625]
                 GPU load :    98%

В фоновом режиме можно запустить через screen. (пример как пользоваться screen + погуглите сами)

screen -dmS eth su - ethereum -c "geth -mine -minergpus "0" -autodag" > /dev/null 2>/dev/null &

В автозагрузку можно добавить через файл /etc/rc.local