| Version 19 (modified by , 6 years ago) ( diff ) |
|---|
Contents
Introduction
Zero Emission Heating is a research project which uses left-over processing power from old computer equipment to transform Green Energy (generated using Wind & Solar Power) to heat.
This yields to the following benefits:
- The 'high quality' energy has a dual purpose, instead of directly converting it to heat.
- Reuse of equipment is placed higher on the Waste Hierarchy ladder, than Recycling or Disposal.
- The computing power could be used for the common cause, by calculating for science projects using BOINC.
- The use of computers allows advanced smart management; for example only heat when prices are low or scale down heating (computation) to a lower level.
Approach
I have an old PC with additional GPU, how-ever running this at full capacity does not yield enough heat to fully heat my home, so I properly needs to be running multiple machines and find good solutions for the noise produced. This only works with Zero Emission Energy; I have solar panels mounted on the roof and bought a stake in wind-power to have power available from different sources.
Costs
Environment costs are a factor to consider when switching to full electric power. Yet what does it cost? Tarifs for The Netherlands are listed:
- 1kWh electricity costs 22ct (5ct w/o VAT)
- 1m3 natural gas costs 68ct (20ct w/o VAT)
1m3 natural gas produces roughly 37 MJ of heat, 1kWh electricity produces roughly 3.6MJ, thus you will need 10kWh electricity to produce the same amount of heat as 1m3 natural gas.
Thus the overall comparison yields:
- 10kWh electricity costs 220ct (50ct w/o VAT)
- 1m3 natural gas costs 68ct (20ct w/o VAT)
Heating with electricity in the Netherlands is 3.5 (2.5 w/o VAT) times more expensive than natural gas. How-ever since natural gas is 'deprecated' the prices are expected to rise steady where-as prices for electricity are going down. I consider this extra costs 'Environment Protection', which I believe should be factored into more decisions.
Why not use …
- Air source heat pump; They make quite some noise and annoy the neighbours.
- Geothermal heat pump; Large investment and not scalable without good planning and coordination with neighbourhood.
- District heating; Transporting excess heat requires a large infrastructure, spending the same amount on improving the electricity grid allows for more re-use possibilities.
Kickback
By using Gridcoin (GRC) you could get a small rebate of the costs required to run the equipment.
How-ever personally I do not favor this kind of 'kickback' mechanisms anymore. They have every different goal compared to the research targets. Which means time and effort needs to be spend to battle fraud, abuse and unfair load sharing instead of time used for research purposes. I have seen projects loosing quite some resource power since they did not make decisions which would please the large stakeholders of such coins. Science cannot be done with all kind of constrains, you either believe in the cause and are willing to support it. Attaching all kind of strings does not allow fundamental research to take place.
Challenges
It comes with the following challenges:
- Running (old) computers requires time & effort in order to keep them running.
- Spare parts needs to be around to be able to cope with failures.
- Drivers for old GPU hardware are sometimes hard to get to work.
Join the cause
Find 'Team Zero Emission Heating' in your favourite BOINC project and join the team to promote our effort.
Similar projects
- Start-up Nerdalize is using computing power to heat tap-water.
Test Setup 1
Hardware configuration:
- 3 x NVIDIA Quadro 4000
- Intel Quad Core
- 4GB DDR3 RAM
- 750W Crossair power supply
- PCI-Express 4 port riser board
- Intel motherboard
# Install Ubuntu 16.04 Server LTS amd64: <Out-Of-Scope> # Update system to latest version: $ sudo apt-get update $ sudo apt-get dist-upgrade $ sudo reboot # Unload nouveau driver (causes trouble during NVIDIA install): $ sudo rmmod nouveau # Install NVIDIA drivers legacy 390.87 drivers: $ sudo apt-get install build-essential $ chmod 755 NVIDIA-Linux-x86_64-390.87.run $ sudo ./NVIDIA-Linux-x86_64-390.87.run $ sudo update-initramfs -u $ sudo reboot # Install helper software for GPU testing: $ sudo apt-get install clinfo opencl-headers git $ git clone https://github.com/ihaque/memtestCL.git $ cd memtestCL/ $ make -f Makefiles/Makefile.linux64 # GPU testing and status utilities: $ ./memtestCL $ clinfo $ nvidia-smi # Install BOINC software: $ sudo apt-get install boinc-client boinctui $ sudo systemctl start boinc-client # Configure BOINC software: $ boinccmd --project_attach http://einstein.phys.uwm.edu/ <account_id> # Monitor BOINC software: $ boinctui
Test Setup 2
Hardware Setup:
- 2 x Radeon HD7870
- 550W Power Supply
- Dual-PCIe motherboard
# Install standard Ubuntu 14.04.05 LTS amd64 Server edition:
<Out-Of-Scope>
# Download fglrx binaries from:
https://www.amd.com/en/support/graphics/amd-radeon-hd/ati-radeon-hd-5000-series/ati-radeon-hd-5770
# Make system up2date:
$ sudo apt-get dist-upgrade
# Install and load compatible kernel:
$ sudo apt-get install linux-headers-3.19.0-80-generic linux-image-3.19.0-80-generic linux-image-extra-3.19.0-80-generic linux-tools-3.19.0-80-generic
$ sudo apt-get remove linux-headers-4.4* linux-image-4.4* linux-image-extra-4.4* linux-tools-4.4*
$ sudo reboot
# Install fglrx (headless) drivers:
$ sudo dpkg -i fglrx-core_15.201-0ubuntu1_amd64_UB_14.01.deb
$ sudo apt-get install -f ls
# Fix missing OpenCL symlink:
$ cd /usr/lib
$ sudo ln -s libOpenCL.so.1 libOpenCL.so
# Fix for segfault for e.g. on 2nd invocation of clinfo:
$ ar p fglrx_15.201-0ubuntu1_amd64_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
# Install helper software for GPU testing:
$ sudo apt-get install clinfo opencl-headers git
$ git clone https://github.com/ihaque/memtestCL.git
$ cd memtestCL/
$ make -f Makefiles/Makefile.linux64
# GPU testing and status utilities:
$ ./memtestCL
$ clinfo
$ nvidia-smi
# Install BOINC software:
$ sudo apt-get install boinc-client boinctui
$ sudo systemctl start boinc-client
# Configure BOINC software:
$ boinccmd --project_attach http://einstein.phys.uwm.edu/ <account_id>
# Monitor BOINC software:
$ boinctui
Findings
- GPU's with less than 2GB RAM are not supported by many BOINC projects anymore
- Software support for older videocards is lacking. AMD open source drivers do not support OpenCL, which is required for the computations. The NVIDIA drivers tends to be more easy to install.
- Motherboards, RAM and GPUs are somehow cheap to source, how-ever high-power PSUs are not cheaply available.
- Riser cards (used for crypto-mining) provide a cheap way to add extra GPUs to an system.
- Case mounting is a large problem. When using non-standards hardware layouts, I am basically stuck making custom (wooden) casings.
- Use SSD harddisk instead of old harddisk. You save 25 EUR, how-ever you gain quite some speed during install, booting and reliability.
- Noise is a issue. Where-as it is not a very big problem when heating a room when not around and/or noisy environment. Anywhere else poses some issues.
Repairing PSUs
Repairing PSUs is very hard. Since components are very tightly spaced there is no room to make repairs, without actually destroying or removing other components. Parts which are easy repairable on SMPS (Switch Mode Power Supply) units are capacitors, fuses and some bridges. How-ever if some has failed it normally cascade into failure of other components as well. If you cannot repair the PSU by replacing the visible broken parts, I would consider it a lost cause.
Repairing GPUs
Repairing GPUs has been an art. I like the view of Louis Rossmann on the matter. He quite rightfully(?) mentions the fact that it is often not broken solder connection on the outside, yet rather a loose connection on the inside. The inner-bond connections becomes loose due to the stress of the videocard from constantly cooling and heating. I have put this to practice, by sourcing broken GPUs and attempt to repair them. The GPUs I source do still have a working image (with artifacts). With 5 cards of multiple vendors repaired, I have a 100 percent success-rate.
The method I use:
- Strip videocard, remove cooler, cooling paste.
- Isolate working area and protect other sensitive parts from burning by putting capton tape on the PCB around the GPU.
- Using a hot-air station Slowly heat GPU to around 160 degree Celsius. Measure temperature using multiple temperature sensors. It takes roughly 10 minutes to reach this level. Make sure your hot-air station is set to around 160-180 degree Celsius. Do not be tempted to use higher temperatures since you will most likely damage/move parts if solder start to melt.
- Allow GPU to cool down by slowly removing the heat (e.g. 'cold' to 100 degree Celsius by setting the hot-air gun to 100 degree Celsius.
- Allow cooling to room temperature without the use of forced cooling.
- Re-apply cooling-paste; use some good stuff instead of the factory-crap. Also take into account less-is-more. The cooling-paste is only supposed to fill the microscopic small gaps of air between the copper-plating any other configuration will cause worst heat transfer and thus hotter electronics.
- Clean-up your stuff and try your card.
- Ensure cooling profile of the card is more stable e.g. let it run idle for a while before turning off the PC. Running an GPU at full-trottle and turning the system off, will cause a lot of stress on the electronics since it does not have time (no power = no cooling fans) to reach it 'happy' operation temperature, which is around 40-50 degree Celsius.
Misc =
rick@uheat:~$ lspci -k -s 01:00.0
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Juniper XT [Radeon HD 5770]
Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Juniper XT [Radeon HD 5770]
Kernel driver in use: radeon
Kernel modules: radeon
rick@uheat:~$ clinfo
Number of platforms 1
Platform Name Clover
Platform Vendor Mesa
Platform Version OpenCL 1.1 Mesa 18.0.5
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix MESA
Platform Name Clover
Number of devices 0
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Clover
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Clover
clCreateContext(NULL, ...) [default] No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform
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) No devices found in platform
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.11
ICD loader Profile OpenCL 2.1
DKMS make.log for
fglrx-core-15.201 for kernel 4.4.0-31-generic (x86_64)
Tue Sep 18 21:39:19 CEST 2018
/usr/sbin/dkms: line 73: cd: /var/lib/dkms/fglrx/15.201/build: No such file or directory
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.a .??* *.symvers
make -C /lib/modules/4.4.0-31-generic/build SUBDIRS=/var/lib/dkms/fglrx-core/15.201/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-4.4.0-31-generic'
CC [M] /var/lib/dkms/fglrx-core/15.201/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx-core/15.201/build/2.6.x/firegl_public.c:194:22: fatal error: asm/i387.h: No such file or directory
#include "asm/i387.h"
^
compilation terminated.
make[2]: *** [/var/lib/dkms/fglrx-core/15.201/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx-core/15.201/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-4.4.0-31-generic'
make: *** [kmod_build] Error 2
build failed with return value 2
# Install standard Ubuntu 14.04.05 LTS amd64 Server edition.
# Download fglrx binaries from:
https://www.amd.com/en/support/graphics/amd-radeon-hd/ati-radeon-hd-5000-series/ati-radeon-hd-5770
# [optional] Make system up2date
sudo apt-get dist-upgrade
# Install and load compatible kernel
sudo apt-get install linux-headers-3.19.0-80-generic linux-image-3.19.0-80-generic linux-image-extra-3.19.0-80-generic
sudo sed -i 's/GRUB_DEFAULT=0/GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 3.19.0-80-generic"/' /etc/default/grub
sudo update-grub
sudo reboot
# Install fglrx (headless) drivers
sudo dpkg -i fglrx-core_15.201-0ubuntu1_amd64_UB_14.01.deb
sudo apt-get install -f
# Fix for segfault for e.g. on 2nd invocation of clinfo:
ar p fglrx_15.201-0ubuntu1_i386_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
# Fix missing OpenCL symlink
(cd /tmp; ln -s libOpenCL.so.1 libOpenCL.so)
# Load module
modprobe fglrx
sudo apt-get install boinc-amd-opencl
rick@uheat:~$ boinccmd --lookup_account http://einstein.phys.uwm.edu/ info@rickvanderzwet.nl 'PlainText2018!E'
status: Success
poll status: operation in progress
poll status: operation in progress
poll status: operation in progress
account key: 7358bdde713819037b3d3406e9558c4c
rick@uheat:~$ boinccmd --project_attach http://einstein.phys.uwm.edu/ 7358bdde713819037b3d3406e9558c4c
sudo apt-get install boinctui
# Test if module is detected (sample output)
rick@uheat:~$ clinfo | head -10
Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 2.0 AMD-APP (1800.11)
Platform Name: AMD Accelerated Parallel Processing
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Name: AMD Accelerated Parallel Processing
Number of devices: 2
rick@uheat:~$ strings /lib/modules/3.19.0-80-generic/updates/dkms/fglrx.ko | grep amd_
depends=amd_iommu_v2
amd_iommu_free_device
amd_iommu_init_device
amd_iommu_unbind_pasid
amd_iommu_set_invalidate_ctx_cb
amd_iommu_enable_device_erratum
amd_iommu_device_info
amd_iommu_set_invalid_ppr_cb
amd_iommu_bind_pasid
amd_iommu_bind_pasid
amd_iommu_set_invalid_ppr_cb
amd_iommu_device_info
amd_iommu_enable_device_erratum
amd_iommu_set_invalidate_ctx_cb
amd_iommu_unbind_pasid
amd_iommu_init_device
amd_iommu_free_device
rick@uheat:~$ find /lib/modules | grep amd_iommu_v2
/lib/modules/4.4.0-31-generic/kernel/drivers/iommu/amd_iommu_v2.ko
/lib/modules/4.4.0-135-generic/kernel/drivers/iommu/amd_iommu_v2.ko
rick@uheat:~$ less /boot/config-
config-3.19.0-80-generic config-4.4.0-135-generic config-4.4.0-31-generic
rick@uheat:~$ less /boot/config-3.19.0-80-generic
rick@uheat:~$ sudo dpkg -S /lib/modules/4.4.0-135-generic/kernel/drivers/iommu/amd_iommu_v2.ko
linux-image-extra-4.4.0-135-generic: /lib/modules/4.4.0-135-generic/kernel/drivers/iommu/amd_iommu_v2.ko
rick@uheat:~$ clinfo
Number of platforms: 1
Platform Profile: FULL_PROFILE
Platform Version: OpenCL 2.0 AMD-APP (1800.11)
Platform Name: AMD Accelerated Parallel Processing
Platform Vendor: Advanced Micro Devices, Inc.
Platform Extensions: cl_khr_icd cl_amd_event_callback cl_amd_offline_devices
Platform Name: AMD Accelerated Parallel Processing
Number of devices: 2
Device Type: CL_DEVICE_TYPE_GPU
Vendor ID: 1002h
Board name:
Device Topology: PCI[ B#1, D#0, F#0 ]
Max compute units: 10
Max work items dimensions: 3
Max work items[0]: 256
Max work items[1]: 256
Max work items[2]: 256
Max work group size: 256
Preferred vector width char: 16
Preferred vector width short: 8
Preferred vector width int: 4
Preferred vector width long: 2
Preferred vector width float: 4
Preferred vector width double: 0
Native vector width char: 16
Native vector width short: 8
Native vector width int: 4
Native vector width long: 2
Native vector width float: 4
Native vector width double: 0
Max clock frequency: 850Mhz
Address bits: 32
Max memory allocation: 134217728
Image support: Yes
Max number of images read arguments: 128
Max number of images write arguments: 8
Max image 2D width: 16384
Max image 2D height: 16384
Max image 3D width: 2048
Max image 3D height: 2048
Max image 3D depth: 2048
Max samplers within kernel: 16
Max size of kernel argument: 1024
Alignment (bits) of base address: 2048
Minimum alignment (bytes) for any datatype: 128
Single precision floating point capability
Denorms: No
Quiet NaNs: Yes
Round to nearest even: Yes
Round to zero: Yes
Round to +ve and infinity: Yes
IEEE754-2008 fused multiply-add: Yes
Cache type: None
Cache line size: 0
Cache size: 0
Global memory size: 536870912
Constant buffer size: 65536
Max number of constant args: 8
Local memory type: Scratchpad
Local memory size: 32768
Max pipe arguments: 0
Max pipe active reservations: 0
Max pipe packet size: 0
Max global variable size: 0
Max global variable preferred total size: 0
Max read/write image args: 0
Max on device events: 0
Queue on device max size: 0
Max on device queues: 0
Queue on device preferred size: 0
SVM capabilities:
Coarse grain buffer: No
Fine grain buffer: No
Fine grain system: No
Atomics: No
Preferred platform atomic alignment: 0
Preferred global atomic alignment: 0
Preferred local atomic alignment: 0
Kernel Preferred work group size multiple: 64
Error correction support: 0
Unified memory for Host and Device: 0
Profiling timer resolution: 1
Device endianess: Little
Available: Yes
Compiler available: Yes
Execution capabilities:
Execute OpenCL kernels: Yes
Execute native function: No
Queue on Host properties:
Out-of-Order: No
Profiling : Yes
Queue on Device properties:
Out-of-Order: No
Profiling : No
Platform ID: 0x7f17343f3430
Name: Juniper
Vendor: Advanced Micro Devices, Inc.
Device OpenCL C version: OpenCL C 1.2
Driver version: 1800.11
Profile: FULL_PROFILE
Version: OpenCL 1.2 AMD-APP (1800.11)
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_3d_image_writes cl_khr_byte_addressable_store cl_khr_gl_sharing cl_ext_atomic_counters_32 cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_amd_image2d_from_buffer_read_only cl_khr_spir cl_khr_gl_event
Device Type: CL_DEVICE_TYPE_CPU
Vendor ID: 1002h
Board name:
Max compute units: 2
Max work items dimensions: 3
Max work items[0]: 1024
Max work items[1]: 1024
Max work items[2]: 1024
Max work group size: 1024
Preferred vector width char: 16
Preferred vector width short: 8
Preferred vector width int: 4
Preferred vector width long: 2
Preferred vector width float: 4
Preferred vector width double: 2
Native vector width char: 16
Native vector width short: 8
Native vector width int: 4
Native vector width long: 2
Native vector width float: 4
Native vector width double: 2
Max clock frequency: 1596Mhz
Address bits: 64
Max memory allocation: 1006837760
Image support: Yes
Max number of images read arguments: 128
Max number of images write arguments: 64
Max image 2D width: 8192
Max image 2D height: 8192
Max image 3D width: 2048
Max image 3D height: 2048
Max image 3D depth: 2048
Max samplers within kernel: 16
Max size of kernel argument: 4096
Alignment (bits) of base address: 1024
Minimum alignment (bytes) for any datatype: 128
Single precision floating point capability
Denorms: Yes
Quiet NaNs: Yes
Round to nearest even: Yes
Round to zero: Yes
Round to +ve and infinity: Yes
IEEE754-2008 fused multiply-add: Yes
Cache type: Read/Write
Cache line size: 64
Cache size: 32768
Global memory size: 1006837760
Constant buffer size: 65536
Max number of constant args: 8
Local memory type: Global
Local memory size: 32768
Max pipe arguments: 16
Max pipe active reservations: 16
Max pipe packet size: 1006837760
Max global variable size: 1006837760
Max global variable preferred total size: 1006837760
Max read/write image args: 64
Max on device events: 0
Queue on device max size: 0
Max on device queues: 0
Queue on device preferred size: 0
SVM capabilities:
Coarse grain buffer: No
Fine grain buffer: No
Fine grain system: No
Atomics: No
Preferred platform atomic alignment: 0
Preferred global atomic alignment: 0
Preferred local atomic alignment: 0
Kernel Preferred work group size multiple: 1
Error correction support: 0
Unified memory for Host and Device: 1
Profiling timer resolution: 1
Device endianess: Little
Available: Yes
Compiler available: Yes
Execution capabilities:
Execute OpenCL kernels: Yes
Execute native function: Yes
Queue on Host properties:
Out-of-Order: No
Profiling : Yes
Queue on Device properties:
Out-of-Order: No
Profiling : No
Platform ID: 0x7f17343f3430
Name: Intel(R) Core(TM)2 Duo CPU E7400 @ 2.80GHz
Vendor: GenuineIntel
Device OpenCL C version: OpenCL C 1.2
Driver version: 1800.11 (sse2)
Profile: FULL_PROFILE
Version: OpenCL 1.2 AMD-APP (1800.11)
Extensions: cl_khr_fp64 cl_amd_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_gl_sharing cl_ext_device_fission cl_amd_device_attribute_query cl_amd_vec3 cl_amd_printf cl_amd_media_ops cl_amd_media_ops2 cl_amd_popcnt cl_khr_spir cl_khr_gl_event
sudo apt-get install opencl-headers
https://laanwj.github.io/2016/05/06/opencl-ubuntu1604.html
wget https://laanwj.github.io/assets/2016/05/06/opencl-ubuntu1604/devices.c
gcc -o devices devices.c /usr/lib/libOpenCL.so.1 -std=c99
wget https://laanwj.github.io/assets/2016/05/06/opencl-ubuntu1604/hello.c
gcc -o hello hello.c /usr/lib/libOpenCL.so.1 -std=c99
https://software.intel.com/en-us/articles/caps-basic
[ 3967.208046] <6>[fglrx] Maximum main memory to use for locked dma buffers: 879 MBytes.
[ 3967.208335] <6>[fglrx] vendor: 1002 device: 68b8 revision: 0 count: 1
[ 3967.208891] <6>[fglrx] ioport: bar 4, base 0xe000, size: 0x100
[ 3967.209302] <6>[fglrx] Kernel PAT support is enabled
[ 3967.209323] <6>[fglrx] module loaded - fglrx 15.20.3 [Sep 8 2015] with 1 minors
[ 3984.154399] <6>[fglrx] Try to set gart size 737M failed, should be within 64M and 448M. Discard the setting.
[ 3984.160905] <6>[fglrx] Firegl kernel thread PID: 11464
[ 3984.160941] <6>[fglrx] Firegl kernel thread PID: 11465
[ 3984.160973] <6>[fglrx] Firegl kernel thread PID: 11466
[ 3984.161041] <6>[fglrx] IRQ 27 Enabled
[ 3984.188853] <6>[fglrx] Reserved FB block: Shared offset:0, size:1000000
[ 3984.188855] <6>[fglrx] Reserved FB block: Unshared offset:fb70000, size:2000
[ 3984.188857] <6>[fglrx] Reserved FB block: Unshared offset:fb72000, size:18e000
[ 3984.188858] <6>[fglrx] Reserved FB block: Unshared offset:3fff3000, size:d000
[ 4497.364558] devices[11555]: segfault at 108 ip 00007f261c74c58f sp 00007ffcd8e78f50 error 4 in libatiadlxx.so[7f261c717000+a9000]
rick@uheat:~$ gdb ./devices
GNU gdb (Ubuntu 7.7.1-0ubuntu5~14.04.3) 7.7.1
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./devices...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/rick/devices
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7e5f58f in ADL2_Send () from /usr/lib/libatiadlxx.so
https://community.amd.com/thread/191438
Max allocation limit: 254803968
Global mem size: 1019215872
Error allocating device memory: 268435456 bytes (error: -61)
g++ -std=c++0x main.cpp -o main.out -lOpenCL
./main.out
<suspend>
sudo rmmod nvidia_uvm && sudo modprobe nvidia_uvm
./main.out
===
Dag,
Ik heb interesse in de grafische kaart.
Ik zou graag de kaart willen overnemen voor de gestelde vraagprijs + verzendkosten.
Ik woon zelf in omgeving Leiden, dus versturen geniet mijn voorkeur.
Met vriendelijke groet,
Rick van der Zwet
===
https://scienceunited.org/wiki/PreferencesXml
http://boinc.berkeley.edu/wiki/Preferences#Computing
https://scienceunited.org/wiki/Client_configuration
Radeon HD 5570 ~ G3D 1708 ~ Collatz task avg ~ 3.5h
GT650M ~ G3D 1225 ~ 1.35 days
GT630 ~ G3D 746 ~ 8.5h
Radeon HD 7850 ~ ~ 1h
GeForce GTX 1070 Ti ~ ~ 15m
GeForce GTX 1070 ~ ~ 15m
i7-3630QM ~ CPU Mark 7586 ~ 15 min/task
Q8400 ~ CPU Mark 3173 ~ 23 min/task
PSU + Motherboard + CPU ~ 200 Watt per systeem
Radeon HD 5570 ~ TDP 61W
GT630 ~ TDP 50 W
- Nodig voor verwarmen woonkamer ~ 3kW
- Dit is ongeveer 50 low-spec GPUs
Prijs los systeem ~ 50 EUR ~ 500 EUR hardware.
Basis systeem ~ 100 EUR
PCI 1x to 4 SLOTS PCI-E 16X Extender ~ 15 EUR
Riser Card Adapter module 8@piece ~ 24 EUR
GPU low-grade 30@piece ~ 120 EUR
==============================================
TOTAL ~ 240 EUR
Total TDP ~ 400Watt
- CUDA Compute capability
- Performance versus power usage, versus money
Card ~ G3D || Price || TDP || EUR/W || G3D/W || G3D/EUR
--------------------------------------------------------------------------------
GeForce GTX 1080 Ti ~ 14061 || 850 EUR || 250W || 3.40 EUR || 56 G3D ||
GeForce GTX 1080 ~ 12309 || 550 EUR || 180W || 3.05 EUR || 68 G3D ||
Radeon RX 580 ~ 8404 || 200 EUR || 185W || 1.08 EUR || 45 G3D ||
GeForce GTX 1050 Ti ~ 5937 || 160 EUR || 75W || 2.13 EUR || 80 G3D ||
Radeon HD 7850 ~ 3838 || 50 EUR || 130W || 0.38 EUR || 29 G3D ||
Radeon HD 5570 ~ 1708 || ?? EUR || 61W || ?? EUR || 28 G3D ||
GeForce GT 650M ~ 1225 || ?? EUR || 45W || ?? EUR || 20 G3D ||
GeForce GT 630 ~ 746 || 30 EUR || 50W || 0.60 EUR || 15 G3D ||
http://www.timzaman.com/2012/05/opencv-gpu-cuda-performance-comparison/
https://www.techspot.com/article/1438-ethereum-mining-gpu-benchmark/
https://www.techradar.com/news/best-mining-gpu
GeForce GT 630 - CC2.1
https://developer.nvidia.com/opencl
===
^[[B^[[20~02-Oct-2018 22:34:17 [---] Fetching configuration file from https://www.grcpool.com/get_project_config.php
02-Oct-2018 22:34:18 [---] Contacting account manager at https://www.grcpool.com/
02-Oct-2018 22:34:20 [---] [unparsed_xml] AM_ACCOUNT: unrecognized no_rsc
Unrecognized XML tag '<no_rsc>' in AM_ACCOUNT::parse; skipping
outdated BOINC client
====
https://setiathome.berkeley.edu/forum_thread.php?id=74403
Command: # add-apt-repository ppa:costamagnagianfranco/boinc
Command: # apt-get update
Command: # apt-get install boinc-client
ATI - collatz_sieve ~ 3.5h
NVIDIA - collatz_sieve ~ 8h
Good overview of NVIDIA version naming:
https://forums.geforce.com/default/topic/946368/geforce-drivers/weird-glitchy-artifact-problem-please-help-/
NVIDIA memory check: https://developer.nvidia.com/CUDA-MEMCHECK
https://github.com/ihaque/memtestCL
dnf install opencl-headers g++
[ 40.952730] NVRM: GPU at PCI:0000:01:00: GPU-52b6f1af-58d9-a846-da29-d37b4411e133
[ 40.952736] NVRM: GPU Board Serial Number: 0322911063585
[ 40.952739] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 0, TPC 0): Out Of Range Register
[ 40.956484] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 0, TPC 0): Physical Multiple Warp Errors
[ 40.960277] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x504648=0x1000d 0x504650=0x4 0x504644=0x1beff2 0x50464c=0xf
[ 40.964129] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 0, TPC 1): Out Of Range Register
[ 40.967955] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 0, TPC 1): Physical Multiple Warp Errors
[ 40.971800] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x504e48=0x1000d 0x504e50=0x4 0x504e44=0x1beff2 0x504e4c=0xf
[ 40.975709] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 1, TPC 0): Out Of Range Register
[ 40.979632] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 1, TPC 0): Physical Multiple Warp Errors
[ 40.983574] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x50c648=0xd 0x50c650=0x4 0x50c644=0x1beff2 0x50c64c=0xf
[ 40.987562] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 1, TPC 1): Out Of Range Register
[ 40.991587] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 1, TPC 1): Physical Multiple Warp Errors
[ 40.995653] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x50ce48=0x1000d 0x50ce50=0x4 0x50ce44=0x1beff2 0x50ce4c=0xf
[ 40.999781] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 1, TPC 2): Out Of Range Register
[ 41.003915] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 1, TPC 2): Physical Multiple Warp Errors
[ 41.008119] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x50d648=0x1000d 0x50d650=0x4 0x50d644=0x1beff2 0x50d64c=0xf
[ 41.012369] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 2, TPC 0): Out Of Range Register
[ 41.016602] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 2, TPC 0): Physical Multiple Warp Errors
[ 41.020869] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x514648=0x1000d 0x514650=0x4 0x514644=0x1beff2 0x51464c=0xf
[ 41.025203] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 2, TPC 1): Out Of Range Register
[ 41.029537] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 2, TPC 1): Physical Multiple Warp Errors
[ 41.033881] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x514e48=0x1000d 0x514e50=0x4 0x514e44=0x1beff2 0x514e4c=0xf
[ 41.038261] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Warp Exception on (GPC 2, TPC 2): Out Of Range Register
[ 41.042632] NVRM: Xid (PCI:0000:01:00): 13, Graphics SM Global Exception on (GPC 2, TPC 2): Physical Multiple Warp Errors
[ 41.047026] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ESR 0x515648=0x1000d 0x515650=0x4 0x515644=0x1beff2 0x51564c=0xf
[ 41.051493] NVRM: Xid (PCI:0000:01:00): 13, Graphics Exception: ChID 0001, Class 000090c0, Offset 00001b0c, Data 00000000
[ 41.057410] NVRM: Xid (PCI:0000:01:00): 39, CCMDs 00000002 000090b5
https://www.nvidia.com/object/unix.html
https://github.com/mpentler/boinctui-extended
ncurses-devel expat-devel openssl-devel
autoconf
./configure --without-gnutls
1 apt-get update
2 sudo apt-get update
3 sudo apt-get upgrade
4 sudo apt-get dist-upgrade
5 sudo reboot
6 ifconfig -a
7 ls
8 cd .ssh/
9 ls
10 cat authorized_keys
11 vim authorized_keys
12 ls
13 cd
14 ls
15 chmod 755 NVIDIA-Linux-x86_64-390.87.run
16 sudo ./NVIDIA-Linux-x86_64-390.87.run
17 rmmod nouveau
18 sudo rmmod nouveau
19 sudo ./NVIDIA-Linux-x86_64-390.87.run
20 gcc
21 sudo apt-get install build-essential
22 sudo ./NVIDIA-Linux-x86_64-390.87.run
23 sudo reboot
24 nvidia-smi
25 sudo nvidia-smi
26 ls
27 lsmod
28 lsmod | grep nouveau
29 cat /etc/modprobe.d/nvidia-installer-disable-nouveau.conf
30 rmmod nouveau
31 sudo rmmod nouveau
32 ls
33 sudo modprobe nvidia
34 sudo nvidia-smi
35 top
36 ps au
37 ps aux
38 uname -a
39 lsb_release -a
40 sudo update-initramfs -u
41 history
39 lsb_release -a
40 sudo update-initramfs -u
41 history
42 sudo reboot
43 sudo nvidia-smi
44 sudo apt-get install boinc
45 sudo apt-cache search boinc
46 sudo apt-get install boinc-client
47 sudo apt-get install boinc-client boinctui
48 sudo clinfo
49 clinfo
50 sudo apt-get install clinfo
51 clinfo
52 ls
53 git clone https://github.com/ihaque/memtestCL.git
54 cd memtestCL/
55 ls
56 make -f Makefiles/Makefile.linux64
57 sudo apt-cache search opencl
58 sudo apt-cache search opencl-headers
59 sudo apt-get install opencl-headers
60 make -f Makefiles/Makefile.linux64
61 ls
62 ./memtestCL
63 systemctl
64 sudo systemctl start boinc-client
65 boinccmd --project_attach http://einstein.phys.uwm.edu/ 7358bdde713819037b3d3406e9558c4c
66 boinctui
67 sudo nvidia-smi
68 history
====
sudo dpkg -i fglrx-core*.deb
sudo apt-get install -f
1 sudo apt-get update
2 sudo apt-get dist-upgrade
3 sudo apt-cache search kernel
4 sudo apt-cache search kernel | less
5 sudo apt-cache search 3.19
6 sudo apt-cache search 3.19.0-80
7 sudo apt-get install linux-headers-3.19.0-80-generic
8 sudo apt-get install linux-image-3.19.0-80-generic
9 sudo apt-get install linux-image-extra-3.19.0-80-generic
10 sudo apt-get install linux-tools-3.19.0-80-generic
11 sudo reboot
12 dmesg
13 ifconfig -a
14 git clone https://github.com/ihaque/memtestCL.git
15 sudo apt-get install build-essential
16 sudo apt-get install git
17 git clone https://github.com/ihaque/memtestCL.git
18 sudo apt-get install opencl-headers
19 cd memtestCL/
20 make -f Makefiles/Makefile.linux64
21 sudo apt-cache search openCL
22 ls
23 cd /usr/lib
24 ls
25 ln -s libOpenCL.so.1 libOpenCL.so
26 sudo ln -s libOpenCL.so.1 libOpenCL.so
27 ls -alh
28 cd ~/memtestCL/
29 make -f Makefiles/Makefile.linux64
30 ./memtestCL
31 ls
32 gdb ./memtestCL
33 apt-get install gdb
34 sudo apt-get install gdb
35 history
rick@uheat-amd:~/memte
33 apt-get install gdb
34 sudo apt-get install gdb
35 history
36 ls
37 sudo history
38 history
39 gdb ./memtestCL
40 ls
41 clinfo
42 top
43 ps aux
44 uname
45 top
46 ps aux | grep flg
47 lsmod
48 lsmod | grep fglrx
49 cd
50 ls
51 ar p fglrx_15.201-0ubuntu1_i386_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
52 ar p fglrx-core_15.201-0ubuntu1_amd64_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
53 ar p fglrx_15.201-0ubuntu1_i386_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
54 ls
55 ar p fglrx_15.201-0ubuntu1_amd64_UB_14.01.deb data.tar.gz | sudo tar -C / -xzf - ./etc/ati/amdpcsdb.default
56 clinfo
57 ./memtestCL/memtestCL
58 history
# DHEP project
boinccmd --project_attach http://dhep.ga/boinc/ dad24ce8e9db0b9f0b03ce1fe9742096
https://einsteinathome.org/content/impossible-gpu-tasks-floating-point-received#comment-166880
Attachments (1)
-
gpu-fun-calculator.xlsx
(12.9 KB
) - added by 6 years ago.
Do calculating on power consumtion and performance together with price of card
Download all attachments as: .zip
