ethereum-mining / ethminer

Ethereum miner with OpenCL, CUDA and stratum support
GNU General Public License v3.0
5.97k stars 2.28k forks source link

ROCm 3.5 - No OpenCL platforms found #2003

Open antimatterizer opened 4 years ago

antimatterizer commented 4 years ago

Hey! New to ethminer, so please forgive my ignorance. Trying to get it up and running on my hashcat box. Searching some of the issues, I see people mentioning ROCm working, but everything I try ends up with No OpenCL platforms found.

clinfo looks great and hashcat works with OpenCL on two AMD gfx900 cards. I built ethminer from the cloned git, and everything seems to have gone properly. Version listed is ethminer 0.19.0-alpha.0-9+commit.3c62579b

Should this work? Am I missing something?

Thanks!

evilbulgarian commented 4 years ago

I seem to be running into similar issue, I am unable to get ethminer to recognize my AMD RX570 4GB card with rocm 3.5.1.

ethminer: ethminer 0.19.0-alpha.0 Build: linux/release/gnu

Id Pci Id Type Name CUDA SM CL Total Memory Cl Max Alloc Cl Max W.Grp


0 03:00.0 Gpu GeForce GTX 1070 Yes 6.1 Yes 7.93 GB 1.98 GB 1024.00 B 1 04:00.0 Gpu GeForce GTX 1070 Yes 6.1 Yes 7.93 GB 1.98 GB 1024.00 B

clinfo: vladi@vladi-TB250-BTC:~/bin$ clinfo Number of platforms 2 Platform Name NVIDIA CUDA Platform Vendor NVIDIA Corporation Platform Version OpenCL 1.2 CUDA 10.2.185 Platform Profile FULL_PROFILE Platform Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_fp64 cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics Platform Extensions function suffix NV

Platform Name AMD Accelerated Parallel Processing Platform Vendor Advanced Micro Devices, Inc. Platform Version OpenCL 2.0 AMD-APP (3137.0) Platform Profile FULL_PROFILE Platform Extensions cl_khr_icd cl_amd_event_callback Platform Extensions function suffix AMD

Platform Name NVIDIA CUDA Number of devices 2 Device Name GeForce GTX 1070 Device Vendor NVIDIA Corporation Device Vendor ID 0x10de Device Version OpenCL 1.2 CUDA Driver Version 440.100 Device OpenCL C Version OpenCL C 1.2 Device Type GPU Device Topology (NV) PCI-E, 03:00.0 Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 15 Max clock frequency 1683MHz Compute Capability (NV) 6.1 Device Partition (core) Max number of sub-devices 1 Supported partition types None Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 1024x1024x64 Max work group size 1024 Preferred work group size multiple 32 Warp size (NV) 32 Preferred / native vector sizes
char 1 / 1
short 1 / 1
int 1 / 1
long 1 / 1
half 0 / 0 (n/a) float 1 / 1
double 1 / 1 (cl_khr_fp64) Half-precision Floating-point support (n/a) Single-precision Floating-point support (core) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Correctly-rounded divide and sqrt operations Yes Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 8513978368 (7.929GiB) Error Correction support No Max memory allocation 2128494592 (1.982GiB) Unified memory for Host and Device No Integrated memory (NV) No Minimum alignment for any data type 128 bytes Alignment of base address 4096 bits (512 bytes) Global Memory cache type Read/Write Global Memory cache size 737280 (720KiB) Global Memory cache line size 128 bytes Image support Yes Max number of samplers per kernel 32 Max size for 1D images from buffer 268435456 pixels Max 1D or 2D image array size 2048 images Max 2D image size 16384x32768 pixels Max 3D image size 16384x16384x16384 pixels Max number of read image args 256 Max number of write image args 16 Local memory type Local Local memory size 49152 (48KiB) Registers per block (NV) 65536 Max number of constant args 9 Max constant buffer size 65536 (64KiB) Max size of kernel argument 4352 (4.25KiB) Queue properties
Out-of-order execution Yes Profiling Yes Prefer user sync for interop No Profiling timer resolution 1000ns Execution capabilities
Run OpenCL kernels Yes Run native kernels No Kernel execution timeout (NV) Yes Concurrent copy and kernel execution (NV) Yes Number of async copy engines 2 printf() buffer size 1048576 (1024KiB) Built-in kernels (n/a) Device Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_fp64 cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics

Device Name GeForce GTX 1070 Device Vendor NVIDIA Corporation Device Vendor ID 0x10de Device Version OpenCL 1.2 CUDA Driver Version 440.100 Device OpenCL C Version OpenCL C 1.2 Device Type GPU Device Topology (NV) PCI-E, 04:00.0 Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 15 Max clock frequency 1784MHz Compute Capability (NV) 6.1 Device Partition (core) Max number of sub-devices 1 Supported partition types None Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 1024x1024x64 Max work group size 1024 Preferred work group size multiple 32 Warp size (NV) 32 Preferred / native vector sizes
char 1 / 1
short 1 / 1
int 1 / 1
long 1 / 1
half 0 / 0 (n/a) float 1 / 1
double 1 / 1 (cl_khr_fp64) Half-precision Floating-point support (n/a) Single-precision Floating-point support (core) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Correctly-rounded divide and sqrt operations Yes Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 8513978368 (7.929GiB) Error Correction support No Max memory allocation 2128494592 (1.982GiB) Unified memory for Host and Device No Integrated memory (NV) No Minimum alignment for any data type 128 bytes Alignment of base address 4096 bits (512 bytes) Global Memory cache type Read/Write Global Memory cache size 737280 (720KiB) Global Memory cache line size 128 bytes Image support Yes Max number of samplers per kernel 32 Max size for 1D images from buffer 268435456 pixels Max 1D or 2D image array size 2048 images Max 2D image size 16384x32768 pixels Max 3D image size 16384x16384x16384 pixels Max number of read image args 256 Max number of write image args 16 Local memory type Local Local memory size 49152 (48KiB) Registers per block (NV) 65536 Max number of constant args 9 Max constant buffer size 65536 (64KiB) Max size of kernel argument 4352 (4.25KiB) Queue properties
Out-of-order execution Yes Profiling Yes Prefer user sync for interop No Profiling timer resolution 1000ns Execution capabilities
Run OpenCL kernels Yes Run native kernels No Kernel execution timeout (NV) No Concurrent copy and kernel execution (NV) Yes Number of async copy engines 2 printf() buffer size 1048576 (1024KiB) Built-in kernels (n/a) Device Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_fp64 cl_khr_byte_addressable_store cl_khr_icd cl_khr_gl_sharing cl_nv_compiler_options cl_nv_device_attribute_query cl_nv_pragma_unroll cl_nv_copy_opts cl_nv_create_buffer cl_khr_int64_base_atomics cl_khr_int64_extended_atomics

Platform Name AMD Accelerated Parallel Processing Number of devices 1 Device Name gfx803 Device Vendor Advanced Micro Devices, Inc. Device Vendor ID 0x1002 Device Version OpenCL 1.2 Driver Version 3137.0 (HSA1.1,LC) Device OpenCL C Version OpenCL C 2.0 Device Type GPU Device Board Name (AMD) Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] Device Topology (AMD) PCI-E, 01:00.0 Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 32 SIMD per compute unit (AMD) 4 SIMD width (AMD) 16 SIMD instruction width (AMD) 1 Max clock frequency 1244MHz Graphics IP (AMD) 8.3 Device Partition (core) Max number of sub-devices 32 Supported partition types None Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 1024x1024x1024 Max work group size 256 Preferred work group size (AMD) 256 Max work group size (AMD) 1024 Preferred work group size multiple 64 Wavefront width (AMD) 64 Preferred / native vector sizes
char 4 / 4
short 2 / 2
int 1 / 1
long 1 / 1
half 1 / 1 (cl_khr_fp16) float 1 / 1
double 1 / 1 (cl_khr_fp64) Half-precision Floating-point support (cl_khr_fp16) Denormals No Infinity and NANs No Round to nearest No Round to zero No Round to infinity No IEEE754-2008 fused multiply-add No Support is emulated in software No Single-precision Floating-point support (core) Denormals No Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Correctly-rounded divide and sqrt operations Yes Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 4294967296 (4GiB) Global free memory (AMD) 4194304 (4GiB) Global memory channels (AMD) 8 Global memory banks per channel (AMD) 4 Global memory bank width (AMD) 256 bytes Error Correction support No Max memory allocation 3650722201 (3.4GiB) Unified memory for Host and Device No Minimum alignment for any data type 128 bytes Alignment of base address 1024 bits (128 bytes) Global Memory cache type Read/Write Global Memory cache size 16384 (16KiB) Global Memory cache line size 64 bytes Image support Yes Max number of samplers per kernel 26591 Max size for 1D images from buffer 65536 pixels Max 1D or 2D image array size 2048 images Base address alignment for 2D image buffers 256 bytes Pitch alignment for 2D image buffers 256 pixels Max 2D image size 16384x16384 pixels Max 3D image size 2048x2048x2048 pixels Max number of read image args 128 Max number of write image args 8 Local memory type Local Local memory size 65536 (64KiB) Local memory syze per CU (AMD) 65536 (64KiB) Local memory banks (AMD) 32 Max number of constant args 8 Max constant buffer size 3650722201 (3.4GiB) Preferred constant buffer size (AMD) 16384 (16KiB) Max size of kernel argument 1024 Queue properties
Out-of-order execution No Profiling Yes Prefer user sync for interop Yes Number of P2P devices (AMD) 0 P2P devices (AMD) <printDeviceInfo:147: get number of CL_DEVICE_P2P_DEVICES_AMD : error -30> Profiling timer resolution 1ns Profiling timer offset since Epoch (AMD) 0ns (Wed Dec 31 19:00:00 1969) Execution capabilities
Run OpenCL kernels Yes Run native kernels No Thread trace supported (AMD) No Number of async queues (AMD) 8 Max real-time compute queues (AMD) 8 Max real-time compute units (AMD) 32 printf() buffer size 4194304 (4MiB) Built-in kernels (n/a) Device Extensions cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program

NULL platform behavior clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform clCreateContext(NULL, ...) [default] No platform clCreateContext(NULL, ...) [other] Success [NV] clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) Invalid device type for platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No platform

rocminfo: vladi@vladi-TB250-BTC:~/bin$ /opt/rocm-3.5.1/bin/rocminfo ROCk module is loaded Able to open /dev/kfd read-write =====================
HSA System Attributes
=====================
Runtime Version: 1.1 System Timestamp Freq.: 1000.000000MHz Sig. Max Wait Duration: 18446744073709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count) Machine Model: LARGE
System Endianness: LITTLE

==========
HSA Agents
==========


Agent 1


Name: Intel(R) Celeron(R) CPU G3930 @ 2.90GHz Uuid: CPU-XX
Marketing Name: Intel(R) Celeron(R) CPU G3930 @ 2.90GHz Vendor Name: CPU
Feature: None specified
Profile: FULL_PROFILE
Float Round Mode: NEAR
Max Queue Number: 0(0x0)
Queue Min Size: 0(0x0)
Queue Max Size: 0(0x0)
Queue Type: MULTI
Node: 0
Device Type: CPU
Cache Info:
L1: 32768(0x8000) KB
Chip ID: 0(0x0)
Cacheline Size: 64(0x40)
Max Clock Freq. (MHz): 2900
BDFID: 0
Internal Node ID: 0
Compute Unit: 2
SIMDs per CU: 0
Shader Engines: 0
Shader Arrs. per Eng.: 0
WatchPts on Addr. Ranges:1
Features: None Pool Info:
Pool 1
Segment: GLOBAL; FLAGS: KERNARG, FINE GRAINED Size: 8080500(0x7b4c74) KB
Allocatable: TRUE
Alloc Granule: 4KB
Alloc Alignment: 4KB
Accessible by all: TRUE
Pool 2
Segment: GLOBAL; FLAGS: COARSE GRAINED
Size: 8080500(0x7b4c74) KB
Allocatable: TRUE
Alloc Granule: 4KB
Alloc Alignment: 4KB
Accessible by all: TRUE
ISA Info:
N/A


Agent 2


Name: gfx803
Uuid: GPU-XX
Marketing Name: Ellesmere [Radeon RX 470/480/570/570X/580/580X/590] Vendor Name: AMD
Feature: KERNEL_DISPATCH
Profile: BASE_PROFILE
Float Round Mode: NEAR
Max Queue Number: 128(0x80)
Queue Min Size: 4096(0x1000)
Queue Max Size: 131072(0x20000)
Queue Type: MULTI
Node: 1
Device Type: GPU
Cache Info:
L1: 16(0x10) KB
Chip ID: 26591(0x67df)
Cacheline Size: 64(0x40)
Max Clock Freq. (MHz): 1244
BDFID: 256
Internal Node ID: 1
Compute Unit: 32
SIMDs per CU: 4
Shader Engines: 4
Shader Arrs. per Eng.: 1
WatchPts on Addr. Ranges:4
Features: KERNEL_DISPATCH Fast F16 Operation: FALSE
Wavefront Size: 64(0x40)
Workgroup Max Size: 1024(0x400)
Workgroup Max Size per Dimension: x 1024(0x400)
y 1024(0x400)
z 1024(0x400)
Max Waves Per CU: 40(0x28)
Max Work-item Per CU: 2560(0xa00)
Grid Max Size: 4294967295(0xffffffff)
Grid Max Size per Dimension: x 4294967295(0xffffffff)
y 4294967295(0xffffffff)
z 4294967295(0xffffffff)
Max fbarriers/Workgrp: 32
Pool Info:
Pool 1
Segment: GLOBAL; FLAGS: COARSE GRAINED
Size: 4194304(0x400000) KB
Allocatable: TRUE
Alloc Granule: 4KB
Alloc Alignment: 4KB
Accessible by all: FALSE
Pool 2
Segment: GROUP
Size: 64(0x40) KB
Allocatable: FALSE
Alloc Granule: 0KB
Alloc Alignment: 0KB
Accessible by all: FALSE
ISA Info:
ISA 1
Name: amdgcn-amd-amdhsa--gfx803
Machine Models: HSA_MACHINE_MODEL_LARGE
Profiles: HSA_PROFILE_BASE
Default Rounding Mode: NEAR
Default Rounding Mode: NEAR
Fast f16: TRUE
Workgroup Max Size: 1024(0x400)
Workgroup Max Size per Dimension: x 1024(0x400)
y 1024(0x400)
z 1024(0x400)
Grid Max Size: 4294967295(0xffffffff)
Grid Max Size per Dimension: x 4294967295(0xffffffff)
y 4294967295(0xffffffff)
z 4294967295(0xffffffff)
FBarrier Max Size: 32
Done

Josevora commented 4 years ago

Do you still have this issue? Try to manually add the path to the ocl from ROCm on the txt file from cmake in the main directory of the github repo after cloning... That helped me. Sorry for not providing examples, I'm on cellphone...

antimatterizer commented 4 years ago

Awesome!

I’ll try this.

On Wed, Sep 2, 2020 at 16:19 Josevora notifications@github.com wrote:

Do you still have this issue?

Try to manually add the path to the ocl from ROCm on the txt file from cmake in the main directory of the github repo after cloning... That helped me. Sorry for not providing examples, I'm on cellphone...

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-686015345, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4IJY6AXDJ4MHLDDFYPLSD2ZHVANCNFSM4OU4VD4Q .

antimatterizer commented 4 years ago

Could you possibly provide a bit more information on the text file you're referencing? I'm happy to do the legwork from there. I've picked through, and I'm not seeing anything that looks appropriate.

Thanks!

On Wed, Sep 2, 2020 at 4:19 PM Josevora notifications@github.com wrote:

Do you still have this issue? Try to manually add the path to the ocl from ROCm on the txt file from cmake in the main directory of the github repo after cloning... That helped me. Sorry for not providing examples, I'm on cellphone...

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-686015345, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4IJY6AXDJ4MHLDDFYPLSD2ZHVANCNFSM4OU4VD4Q .

ianzur commented 4 years ago

After building from source I receive this error. (I tried: v0.19.0-3+commit.bc628f6c, v0.18.0)

I have tried to edit the value to the location of opencl during cmake, hunter overrides what I specify? actual location: /opt/rocm/opencl hunters location: /home/$USER/.hunter/_Base/4b894e1/fdb8df4/cb395ce/Install/lib/cmake/OpenCL

$ ethminer/ethminer --list-devices

ethminer 0.19.0-3+commit.bc628f6c
Build: linux/release/gnu

No OpenCL platforms found
Error: No usable mining devices found
clinfo ``` $ clinfo Number of platforms 1 Platform Name AMD Accelerated Parallel Processing Platform Vendor Advanced Micro Devices, Inc. Platform Version OpenCL 2.0 AMD-APP (3182.0) Platform Profile FULL_PROFILE Platform Extensions cl_khr_icd cl_amd_event_callback Platform Extensions function suffix AMD Platform Name AMD Accelerated Parallel Processing Number of devices 1 Device Name gfx900 Device Vendor Advanced Micro Devices, Inc. Device Vendor ID 0x1002 Device Version OpenCL 2.0 Driver Version 3182.0 (HSA1.1,LC) Device OpenCL C Version OpenCL C 2.0 Device Type GPU Device Board Name (AMD) Device 6863 Device Topology (AMD) PCI-E, 2b:00.0 Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 64 SIMD per compute unit (AMD) 4 SIMD width (AMD) 16 SIMD instruction width (AMD) 1 Max clock frequency 1600MHz Graphics IP (AMD) 9.0 Device Partition (core) Max number of sub-devices 64 Supported partition types None Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 1024x1024x1024 Max work group size 256 Preferred work group size (AMD) 256 Max work group size (AMD) 1024 Preferred work group size multiple 64 Wavefront width (AMD) 64 Preferred / native vector sizes char 4 / 4 short 2 / 2 int 1 / 1 long 1 / 1 half 1 / 1 (cl_khr_fp16) float 1 / 1 double 1 / 1 (cl_khr_fp64) Half-precision Floating-point support (cl_khr_fp16) Denormals No Infinity and NANs No Round to nearest No Round to zero No Round to infinity No IEEE754-2008 fused multiply-add No Support is emulated in software No Single-precision Floating-point support (core) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Correctly-rounded divide and sqrt operations Yes Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 17163091968 (15.98GiB) Global free memory (AMD) 16760832 (15.98GiB) Global memory channels (AMD) 64 Global memory banks per channel (AMD) 4 Global memory bank width (AMD) 256 bytes Error Correction support No Max memory allocation 14588628172 (13.59GiB) Unified memory for Host and Device No Shared Virtual Memory (SVM) capabilities (core) Coarse-grained buffer sharing Yes Fine-grained buffer sharing Yes Fine-grained system sharing No Atomics No Minimum alignment for any data type 128 bytes Alignment of base address 1024 bits (128 bytes) Preferred alignment for atomics SVM 0 bytes Global 0 bytes Local 0 bytes Max size for global variable 14588628172 (13.59GiB) Preferred total size of global vars 17163091968 (15.98GiB) Global Memory cache type Read/Write Global Memory cache size 16384 (16KiB) Global Memory cache line size 64 bytes Image support Yes Max number of samplers per kernel 26723 Max size for 1D images from buffer 65536 pixels Max 1D or 2D image array size 2048 images Base address alignment for 2D image buffers 256 bytes Pitch alignment for 2D image buffers 256 pixels Max 2D image size 16384x16384 pixels Max 3D image size 2048x2048x2048 pixels Max number of read image args 128 Max number of write image args 8 Max number of read/write image args 64 Max number of pipe args 16 Max active pipe reservations 16 Max pipe packet size 1703726284 (1.587GiB) Local memory type Local Local memory size 65536 (64KiB) Local memory syze per CU (AMD) 65536 (64KiB) Local memory banks (AMD) 32 Max number of constant args 8 Max constant buffer size 14588628172 (13.59GiB) Preferred constant buffer size (AMD) 16384 (16KiB) Max size of kernel argument 1024 Queue properties (on host) Out-of-order execution No Profiling Yes Queue properties (on device) Out-of-order execution Yes Profiling Yes Preferred size 262144 (256KiB) Max size 8388608 (8MiB) Max queues on device 1 Max events on device 1024 Prefer user sync for interop Yes Number of P2P devices (AMD) 0 P2P devices (AMD) Profiling timer resolution 1ns Profiling timer offset since Epoch (AMD) 0ns (Wed Dec 31 18:00:00 1969) Execution capabilities Run OpenCL kernels Yes Run native kernels No Thread trace supported (AMD) No Number of async queues (AMD) 8 Max real-time compute queues (AMD) 8 Max real-time compute units (AMD) 64 printf() buffer size 4194304 (4MiB) Built-in kernels (n/a) Device Extensions cl_khr_fp64 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_3d_image_writes cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_gl_sharing cl_amd_device_attribute_query cl_amd_media_ops cl_amd_media_ops2 cl_khr_image2d_from_buffer cl_khr_subgroups cl_khr_depth_images cl_amd_copy_buffer_p2p cl_amd_assembly_program NULL platform behavior clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform clCreateContext(NULL, ...) [default] No platform clCreateContext(NULL, ...) [other] Success [AMD] clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1) Platform Name AMD Accelerated Parallel Processing Device Name gfx900 clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1) Platform Name AMD Accelerated Parallel Processing Device Name gfx900 clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1) Platform Name AMD Accelerated Parallel Processing Device Name gfx900 ```
rocminfo ``` $ rocminfo ROCk module is loaded Able to open /dev/kfd read-write ===================== HSA System Attributes ===================== Runtime Version: 1.1 System Timestamp Freq.: 1000.000000MHz Sig. Max Wait Duration: 18446744073709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count) Machine Model: LARGE System Endianness: LITTLE ========== HSA Agents ========== ******* Agent 1 ******* Name: AMD Ryzen 7 3800X 8-Core Processor Uuid: CPU-XX Marketing Name: AMD Ryzen 7 3800X 8-Core Processor Vendor Name: CPU Feature: None specified Profile: FULL_PROFILE Float Round Mode: NEAR Max Queue Number: 0(0x0) Queue Min Size: 0(0x0) Queue Max Size: 0(0x0) Queue Type: MULTI Node: 0 Device Type: CPU Cache Info: L1: 32768(0x8000) KB Chip ID: 0(0x0) Cacheline Size: 64(0x40) Max Clock Freq. (MHz): 0 BDFID: 0 Internal Node ID: 0 Compute Unit: 16 SIMDs per CU: 0 Shader Engines: 0 Shader Arrs. per Eng.: 0 WatchPts on Addr. Ranges:1 Features: None Pool Info: Pool 1 Segment: GLOBAL; FLAGS: KERNARG, FINE GRAINED Size: 32952728(0x1f6d198) KB Allocatable: TRUE Alloc Granule: 4KB Alloc Alignment: 4KB Accessible by all: TRUE Pool 2 Segment: GLOBAL; FLAGS: COARSE GRAINED Size: 32952728(0x1f6d198) KB Allocatable: TRUE Alloc Granule: 4KB Alloc Alignment: 4KB Accessible by all: TRUE ISA Info: N/A ******* Agent 2 ******* Name: gfx900 Uuid: GPU-0214fe94c6a64924 Marketing Name: Device 6863 Vendor Name: AMD Feature: KERNEL_DISPATCH Profile: BASE_PROFILE Float Round Mode: NEAR Max Queue Number: 128(0x80) Queue Min Size: 4096(0x1000) Queue Max Size: 131072(0x20000) Queue Type: MULTI Node: 1 Device Type: GPU Cache Info: L1: 16(0x10) KB Chip ID: 26723(0x6863) Cacheline Size: 64(0x40) Max Clock Freq. (MHz): 1600 BDFID: 11008 Internal Node ID: 1 Compute Unit: 64 SIMDs per CU: 4 Shader Engines: 4 Shader Arrs. per Eng.: 1 WatchPts on Addr. Ranges:4 Features: KERNEL_DISPATCH Fast F16 Operation: FALSE Wavefront Size: 64(0x40) Workgroup Max Size: 1024(0x400) Workgroup Max Size per Dimension: x 1024(0x400) y 1024(0x400) z 1024(0x400) Max Waves Per CU: 40(0x28) Max Work-item Per CU: 2560(0xa00) Grid Max Size: 4294967295(0xffffffff) Grid Max Size per Dimension: x 4294967295(0xffffffff) y 4294967295(0xffffffff) z 4294967295(0xffffffff) Max fbarriers/Workgrp: 32 Pool Info: Pool 1 Segment: GLOBAL; FLAGS: COARSE GRAINED Size: 16760832(0xffc000) KB Allocatable: TRUE Alloc Granule: 4KB Alloc Alignment: 4KB Accessible by all: FALSE Pool 2 Segment: GROUP Size: 64(0x40) KB Allocatable: FALSE Alloc Granule: 0KB Alloc Alignment: 0KB Accessible by all: FALSE ISA Info: ISA 1 Name: amdgcn-amd-amdhsa--gfx900 Machine Models: HSA_MACHINE_MODEL_LARGE Profiles: HSA_PROFILE_BASE Default Rounding Mode: NEAR Default Rounding Mode: NEAR Fast f16: TRUE Workgroup Max Size: 1024(0x400) Workgroup Max Size per Dimension: x 1024(0x400) y 1024(0x400) z 1024(0x400) Grid Max Size: 4294967295(0xffffffff) Grid Max Size per Dimension: x 4294967295(0xffffffff) y 4294967295(0xffffffff) z 4294967295(0xffffffff) FBarrier Max Size: 32 *** Done *** ```
sysinfo OS: Debian 10 buster Kernel: x86_64 Linux 4.19.0-10-amd64 CPU: AMD Ryzen 7 3800X GPU: AMD/ATI Vega 10 XTX [Radeon Vega Frontier Edition]
Josevora commented 4 years ago

CMakeLists.txt

but I just found out there is no direct reference to the ocl path on that file...

I have some time now, will try to install rocm and figure that out, but I'm running on a different GPU... If First I get the same error then I'm able to fix it, I'll provide details!

Josevora commented 4 years ago

@ianzur did you install rocm-opencl-dev ? maybe you guys are only missing the ocl all together!

ianzur commented 4 years ago

I wish, it is installed on my machine. I believe it is included in the rocm-dkms meta-package.

rocm-opencl-dev/Ubuntu 16.04,now 2.0.0.293-rocm-rel-3.7-20-3f18143 amd64 [installed,automatic]
  OpenCL: Open Computing Language on ROCclr
Josevora commented 4 years ago

DONE!

I've installed ROCm 3.7, and I've got the same output: "No Opencl Platforms Found" Then i did something a little bit UGLY, that worked:

I Went to: /opt/rocm/opencl and ran this command: sudo cp -r * / that copied the content of the folder to the main folders where Ethminer is looking for the OpenCL files!! Built and Compiled again and VOILÁ! WORKING!

Tell me if it worked for you guys!

antimatterizer commented 4 years ago

This did indeed work. In the name of cleanliness and also curiosity, I dove into this a bit and found that only copying the contents of /opt/rocm/opencl/lib to /lib is necessary.

Thanks!

On Wed, Sep 9, 2020 at 11:05 AM Josevora notifications@github.com wrote:

DONE!

I've installed ROCm 3.7, and I've got the same output: "No Opencl Platforms Found" Then i did something a little bit UGLY, that worked:

I Went to: /opt/rocm/opencl and ran this command: sudo cp -r * / that copied the content of the folder to the main folders where Ethminer is looking for the OpenCL files!! Built and Compiled again and VOILÁ! WORKING!

Tell me if it worked for you guys!

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-689660905, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4ILNRJOFGV6FSUSSKRDSE6RTVANCNFSM4OU4VD4Q .

ianzur commented 4 years ago

I assumed your method (@Josevora ) would work, but I didn't like the ugly...

I hacked on the ethminer/libethash-cl/CMakeLists.txt file, and was able to get cmake to find my installed OpenCL at /opt/rocm/lib/libOpenCL.so

  1. Remove the OpenCL hunter had downloaded? cmake was still finding this version first after my hacking. rm ~/.hunter/_Base/4b894e1/fdb8df4/cb395ce/Install/lib/libOpenCL*
  2. libethash-cl/CMakeLists.txt line 27: remove call to hunter_add_package(OpenCL)
  3. libethash-cl/CMakeLists.txt line 28: find_package(OpenCL CONFIG REQUIRED) -> find_package(OpenCL REQUIRED)
    git diff
@@ -24,8 +24,8 @@ if(APPLE)
        # On macOS use system OpenCL library.
        find_package(OpenCL REQUIRED)
 else()
-       hunter_add_package(OpenCL)
-       find_package(OpenCL CONFIG REQUIRED)
+       # hunter_add_package(OpenCL)
+       find_package(OpenCL REQUIRED)
 endif()

 include_directories(${CMAKE_CURRENT_BINARY_DIR})

  1. build like normal
Now the device is recognized by ethminer :heart_eyes: ``` $ ethminer/ethminer --list-devices ethminer 0.18.0 Build: linux/release/gnu Id Pci Id Type Name CL Total Memory Cl Max Alloc Cl Max W.Grp --- --------- ---- ----------------------------- ---- ------------ ------------ ------------ 0 2b:00.0 Gpu gfx900 Yes 15.98 GB 15.98 GB 256.00 B ```
However my gpu is returning a segfault :disappointed: ``` $ ethminer/ethminer -G -M 0 ethminer 0.18.0 Build: linux/release/gnu i 14:10:58 ethminer Selected pool localhost:0 i 14:10:58 ethminer Established connection to localhost:0 i 14:10:58 ethminer Spinning up miners... cl 14:10:58 cl-0 Using PciId : 2b:00.0 gfx900 OpenCL 2.0 Memory : 15.98 GB i 14:10:58 cl-0 Adjusting CL work multiplier for 64 CUs. Adjusted work multiplier: 116,509 i 14:10:58 sim Epoch : -1 Difficulty : 4.29 Gh i 14:10:58 sim Job: 06c8293b… block 0 localhost:0 SIGSEGV encountered ... stack trace: backtrace() returned 7 addresses ethminer/ethminer(+0x95a20) [0x55a4a1b8fa20] /lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7fe993b46840] ethminer/ethminer(+0x33d4c2) [0x55a4a1e374c2] ethminer/ethminer(+0x122ec7) [0x55a4a1c1cec7] ethminer/ethminer(+0x3e5fcf) [0x55a4a1edffcf] /lib/x86_64-linux-gnu/libpthread.so.0(+0x7fa3) [0x7fe993e74fa3] /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7fe993c084cf] ```

Edit: Actually only segfaults if I specify -M 0. Benchmark runs fine with any other uint?

ianzur commented 4 years ago

For an official solution we should to add a build flag for ROCm to rely on cmake to find system OpenCL library similar to the soln for Mac.

PLAN:

I'll link a PR late tonight.

hackmod commented 4 years ago

I assumed your method (@Josevora ) would work, but I didn't like the ugly...

...

Now the device is recognized by ethminer 😍 However my gpu is returning a segfault 😞


$ ethminer/ethminer -G -M 0

ethminer 0.18.0
Build: linux/release/gnu

 i 14:10:58 ethminer Selected pool localhost:0
 i 14:10:58 ethminer Established connection to localhost:0
 i 14:10:58 ethminer Spinning up miners...
cl 14:10:58 cl-0     Using PciId : 2b:00.0 gfx900 OpenCL 2.0  Memory : 15.98 GB
 i 14:10:58 cl-0     Adjusting CL work multiplier for 64 CUs. Adjusted work multiplier: 116,509
 i 14:10:58 sim      Epoch : -1 Difficulty : 4.29 Gh
 i 14:10:58 sim      Job: 06c8293b… block 0 localhost:0
SIGSEGV encountered ...
stack trace:
backtrace() returned 7 addresses
ethminer/ethminer(+0x95a20) [0x55a4a1b8fa20]
/lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7fe993b46840]
ethminer/ethminer(+0x33d4c2) [0x55a4a1e374c2]
ethminer/ethminer(+0x122ec7) [0x55a4a1c1cec7]
ethminer/ethminer(+0x3e5fcf) [0x55a4a1edffcf]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x7fa3) [0x7fe993e74fa3]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7fe993c084cf]

Edit: Actually only segfaults if I specify -M 0. Benchmark runs fine with any other uint?

I guess this is epoch zero bug.

you can try again with -M 1 benchmark option.

antimatterizer commented 4 years ago

Cleaned the /.hunter directory and rebuilt from Git using the necessary flag. Works great. Thanks!

On Fri, Sep 11, 2020 at 7:32 AM HackyMiner notifications@github.com wrote:

I assumed your method (@Josevora https://github.com/Josevora ) would work, but I didn't like the ugly...

...

Now the device is recognized by ethminer 😍 However my gpu is returning a segfault 😞

$ ethminer/ethminer -G -M 0

ethminer 0.18.0

Build: linux/release/gnu

i 14:10:58 ethminer Selected pool localhost:0

i 14:10:58 ethminer Established connection to localhost:0

i 14:10:58 ethminer Spinning up miners...

cl 14:10:58 cl-0 Using PciId : 2b:00.0 gfx900 OpenCL 2.0 Memory : 15.98 GB

i 14:10:58 cl-0 Adjusting CL work multiplier for 64 CUs. Adjusted work multiplier: 116,509

i 14:10:58 sim Epoch : -1 Difficulty : 4.29 Gh

i 14:10:58 sim Job: 06c8293b… block 0 localhost:0

SIGSEGV encountered ...

stack trace:

backtrace() returned 7 addresses

ethminer/ethminer(+0x95a20) [0x55a4a1b8fa20]

/lib/x86_64-linux-gnu/libc.so.6(+0x37840) [0x7fe993b46840]

ethminer/ethminer(+0x33d4c2) [0x55a4a1e374c2]

ethminer/ethminer(+0x122ec7) [0x55a4a1c1cec7]

ethminer/ethminer(+0x3e5fcf) [0x55a4a1edffcf]

/lib/x86_64-linux-gnu/libpthread.so.0(+0x7fa3) [0x7fe993e74fa3]

/lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7fe993c084cf]

Edit: Actually only segfaults if I specify -M 0. Benchmark runs fine with any other uint?

I guess this is epoch zero bug.

you can try again with -M 1 benchmark option.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-691066275, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4IKTYOCNE2WAUZZLHALSFIKFPANCNFSM4OU4VD4Q .

darena67 commented 4 years ago

Got it to compile and now recognize the rocm GL device, but the performance is not as good as the legacy amd driver. Looks like that might be related to the inability to load ./kernels/ethash_gfx803_lws192.bin. I guess the kernels are not compatible with rocm? Anyone else seeing this?

https://github.com/ethereum-mining/ethminer/issues/1827

antimatterizer commented 4 years ago

Similar messages on rigs with Vega 56s and RX580. Can't speak for performance versus AMDGPU, as I haven't tested it. Logs from Vega below, RX580s are the same.

cl 13:22:33 cl-1 OpenCL kernel cl 13:22:33 cl-0 OpenCL kernel i 13:22:33 ethminer Job: 7698b80a… block 10874707 us1.ethermine.org [ 172.65.218.238:5555] i 13:22:33 ethminer Job: fc94d61b… block 10874707 us1.ethermine.org [ 172.65.218.238:5555] cl 13:22:33 cl-1 Loading binary kernel /usr/local/bin/kernels/ethash_gfx900_lws128_exit.bin cl 13:22:34 cl-0 Loading binary kernel /usr/local/bin/kernels/ethash_gfx900_lws128_exit.bin X 13:22:34 cl-1 Build failed! Info:Error: runtime metadata section not present in ELF program binary Error: Cannot Global Var Sizes

X 13:22:34 cl-1 /usr/local/bin/kernels/ethash_gfx900_lws128_exit.bin X 13:22:34 cl-1 Falling back to OpenCL kernel... cl 13:22:34 cl-1 Creating DAG buffer, size: 3.83 GB, free: 4.16 GB X 13:22:34 cl-0 Build failed! Info:Error: runtime metadata section not present in ELF program binary Error: Cannot Global Var Sizes

X 13:22:34 cl-0 /usr/local/bin/kernels/ethash_gfx900_lws128_exit.bin X 13:22:34 cl-0 Falling back to OpenCL kernel...

On Wed, Sep 16, 2020 at 12:08 PM darena67 notifications@github.com wrote:

Got it to compile and now recognize the rocm GL device, but the performance is not as good as the legacy amd driver. Looks like that might be related to the inability to load ./kernels/ethash_gfx803_lws192.bin. I guess the kernels are not compatible with rocm? Anyone else seeing this?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-693540121, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4IOFZQ52VQAWFX4ZQDTSGDWHRANCNFSM4OU4VD4Q .

ianzur commented 4 years ago

@antimatterizer @darena67, I am seeing the same with Vega 64.

I haven't tested speed against amdgpu drivers either.

 i 11:29:59 ethminer Spinning up miners...
cl 11:29:59 cl-0     Using Device : 2b:00.0 gfx900 OpenCL 2.0  Memory : 15.98 GB (17163091968 B)
 i 11:29:59 cl-0     Adjusting CL work multiplier for 64 CUs. Adjusted work multiplier: 116,509
 i 11:29:59 ethminer Epoch : 362 Difficulty : 4.00 Gh
 i 11:29:59 ethminer Job: 333d60cb… block 10880797 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]
cl 11:30:00 cl-0     Generating split DAG + Light (total): 3.83 GB
 i 11:30:00 ethminer Job: d6efc3be… block 10880798 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]
 i 11:30:01 ethminer Job: 6642ac5c… block 10880798 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]
cl 11:30:01 cl-0     OpenCL kernel
cl 11:30:01 cl-0     Loading binary kernel /home/irz0002/Projects/ethminer-ianzur/build/ethminer/kernels/ethash_gfx900_lws128_exit.bin
 X 11:30:01 cl-0     Failed to load binary kernel: /home/irz0002/Projects/ethminer-ianzur/build/ethminer/kernels/ethash_gfx900_lws128_exit.bin
 X 11:30:01 cl-0     Falling back to OpenCL kernel...
antimatterizer commented 3 years ago

Following up on this -- I was interested in checking hashrates of the RX580 rig, so I spun up NiceHashOS. This uses the AMDGPU drivers and gets ~22Mh per device even at lowest power level. Ethminer in Ubuntu get's about ~14. Rejecting the kernels definitely has a performance hit. I'm not concerned, as I was just tinkering on my hashcat rigs, but I thought the information might be helpful if others are interested.

On Thu, Sep 17, 2020 at 11:38 AM ianzur notifications@github.com wrote:

@antimatterizer https://github.com/antimatterizer @darena67 https://github.com/darena67, I am seeing the same with Vega 64.

I haven't tested speed against amdgpu drivers either.

i 11:29:59 ethminer Spinning up miners...

cl 11:29:59 cl-0 Using Device : 2b:00.0 gfx900 OpenCL 2.0 Memory : 15.98 GB (17163091968 B)

i 11:29:59 cl-0 Adjusting CL work multiplier for 64 CUs. Adjusted work multiplier: 116,509

i 11:29:59 ethminer Epoch : 362 Difficulty : 4.00 Gh

i 11:29:59 ethminer Job: 333d60cb… block 10880797 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]

cl 11:30:00 cl-0 Generating split DAG + Light (total): 3.83 GB

i 11:30:00 ethminer Job: d6efc3be… block 10880798 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]

i 11:30:01 ethminer Job: 6642ac5c… block 10880798 us2.ethermine.org [[2606:4700:90:0:5f75:d2fd:8cfe:d849]:5555]

cl 11:30:01 cl-0 OpenCL kernel

cl 11:30:01 cl-0 Loading binary kernel /home/irz0002/Projects/ethminer-ianzur/build/ethminer/kernels/ethash_gfx900_lws128_exit.bin

X 11:30:01 cl-0 Failed to load binary kernel: /home/irz0002/Projects/ethminer-ianzur/build/ethminer/kernels/ethash_gfx900_lws128_exit.bin

X 11:30:01 cl-0 Falling back to OpenCL kernel...

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-694355625, or unsubscribe https://github.com/notifications/unsubscribe-auth/AOKU4IKRXHMF7FNX3QK6R33SGI3QHANCNFSM4OU4VD4Q .

mask8 commented 3 years ago

with rocm-2.9 I was not getting good luck with solutions above, but I managed to compile it by cmake options:

cmake .. -DETHASHCUDA=OFF -DETHASHCL=ON -DUSE_SYS_OPENCL=ON -DAPICORE=ON -DOpenCL_INCLUDE_DIR=/opt/rocm/opencl/include -DOpenCL_LIBRARY=/opt/rocm-3.9.0/opencl/lib/libOpenCL.so.1.2
CPATH=/opt/rocm/opencl/include cmake --build .
herandol commented 3 years ago

Thanks for the commands @mask8 it is working well for me.

ekuznetsov139 commented 3 years ago

No need to mess with cmake. Just do

LD_LIBRARY_PATH=/opt/rocm/opencl/lib ethminer ...

trougnouf commented 3 years ago

I haven't tried going back to the "official" AMD driver, but now that they use rocr I guess they would both behave the same way (cmake flag needed, unable to load the binary kernel, worse performance).

Has anyone tested AMD >= 20.45 driver?

edit: tested, same performance and same runtime metadata section not present in ELF program binary error with opencl-amd 20.45 (Driver version 3188.4) and rocm-opencl-runtime (Driver version 3212.0)

edit: performance shown in ethminer console goes from around 22 on rocm to 37 on amd 20.40. Not confirmed on the pool yet (and I may not get an accurate figure because I started mining yesterday and I have a mixed AMD Vega 56 / Nvidia GTX 1070 machine. The Nvidia card has a reported 25 MH/s).

edit: performance shown by the pool is much better with the open-source rocm driver

DeeDeeRanged commented 3 years ago

Running Debian bullseye/testing Ryzen 5 3600 also have a mixed rif. Primary videocard is a GTX 1070 26Mh/s reported ethminer and a RX 580 24.8Mh/srunning with teamredminer. I have installed the 20.50 drivers AMDGPU-Pro Opencl drivers only. Installed OpenCL drivers with the following command: amdgpu-install --opencl=legacy --headless --no-dkms I cannot get the RX 580 to work with ethminer 0.18.0.

ethminer 0.18.0 Build: linux/release/gnu

i 19:58:05 ethminer Configured pool eu1.ethermine.org:5555 i 19:58:05 ethminer Selected pool eu1.ethermine.org:5555 i 19:58:05 ethminer Stratum mode : Eth-Proxy compatible i 19:58:05 ethminer Established connection to eu1.ethermine.org [172.65.207.106:5555] i 19:58:05 ethminer Spinning up miners... cl 19:58:05 cl-0 OpenCL OpenCL 1.1 Mesa 20.3.4 not supported, but platform Clover might work nevertheless. USE AT OWN RISK! cl 19:58:05 cl-0 Using PciId : Radeon RX 580 Series (POLARIS10, DRM 3.40.0, 5.10.0-4-amd64, LLVM 11.0.1) OpenCL 1.1 Mesa 20.3.4 Memory : 8.00 GB cl 19:58:05 cl-1 Using PciId : 04:00.0 Ellesmere OpenCL 1.2 AMD-APP (3224.4) Memory : 7.99 GB i 19:58:05 ethminer Epoch : 403 Difficulty : 4.00 Gh i 19:58:05 ethminer Job: ab0e4897… block 12090377 eu1.ethermine.org [172.65.207.106:5555] cl 19:58:07 cl-1 Generating DAG + Light : 4.21 GB cl 19:58:07 cl-0 Generating DAG + Light : 4.21 GB cl 19:58:07 cl-0 OpenCL kernel cl 19:58:07 cl-1 OpenCL kernel X 19:58:07 cl-0 OpenCL kernel build log: input.cl:321:9: error: implicit declaration of function 'amd_bitalign' is invalid in OpenCL input.cl:180:9: note: expanded from macro 'KECCAK_PROCESS' input.cl:99:60: note: expanded from macro 'KECCAKF_1600_RND' input.cl:87:24: note: expanded from macro 'ROTL64_1' input.cl:433:5: error: implicit declaration of function 'amd_bitalign' is invalid in OpenCL input.cl:180:9: note: expanded from macro 'KECCAK_PROCESS' input.cl:99:60: note: expanded from macro 'KECCAKF_1600_RND' input.cl:87:24: note: expanded from macro 'ROTL64_1'

X 19:58:07 cl-0 OpenCL kernel build error (-11): clBuildProgram SIGSEGV encountered ... stack trace: backtrace() returned 7 addresses /home/filip/Mining/ethminer/bin/ethminer() [0x422af9] /lib/x86_64-linux-gnu/libc.so.6(+0x3bd60) [0x7f86afa4ed60] /home/filip/Mining/ethminer/bin/ethminer() [0x6e0a61] /home/filip/Mining/ethminer/bin/ethminer() [0x4baff6] /home/filip/Mining/ethminer/bin/ethminer() [0x773aaf] /lib/x86_64-linux-gnu/libpthread.so.0(+0x8ea7) [0x7f86afd3eea7] /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7f86afb10def] SIGSEGV encountered ... stack trace: backtrace() returned 7 addresses /home/filip/Mining/ethminer/bin/ethminer() [0x422af9] /lib/x86_64-linux-gnu/libc.so.6(+0x3bd60) [0x7f86afa4ed60] /home/filip/Mining/ethminer/bin/ethminer() [0x419e58] /home/filip/Mining/ethminer/bin/ethminer() [0x429f59] /home/filip/Mining/ethminer/bin/ethminer() [0x773aaf] /lib/x86_64-linux-gnu/libpthread.so.0(+0x8ea7) [0x7f86afd3eea7] /lib/x86_64-linux-gnu/libc.so.6(clone+0x3f) [0x7f86afb10def]

The RX 580 doesn't work with phoenixminer either only teamredminer works.

Cannot install rocr as the 20.50 driver cannot build on 5.10.0-4 kernel it's 5.9 or lower.

mishan commented 3 years ago

@DeeDeeRanged

Running Debian bullseye/testing Ryzen 5 3600 also have a mixed rif. Primary videocard is a GTX 1070 26Mh/s reported ethminer and a RX 580 24.8Mh/srunning with teamredminer. I have installed the 20.50 drivers AMDGPU-Pro Opencl drivers only. Installed OpenCL drivers with the following command: amdgpu-install --opencl=legacy --headless --no-dkms I cannot get the RX 580 to work with ethminer 0.18.0.

Did you try compiling ethminer? See https://github.com/ethereum-mining/ethminer/issues/2003#issuecomment-729335031

mishan commented 3 years ago

I got it working with a Dockerfile I wrote. However, I do see the failed to load binary kernel error, so maybe it can do better if I get it to use AMD's ROCm library.

Here it is, maybe someone can tweak it. Note that cmake / hunter fail to download boost 1.66.0 so you need to provide the file (see section marked with XXX) =\ This Dockerfile will actually compile ethminer from source as part of the build process. It's a pattern I've developed

https://gist.github.com/mishan/b4311705edd307fdbd6e1600a01a7d2c