Bitcoin Forum
December 12, 2024, 11:52:32 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2] 3 »  All
  Print  
Author Topic: HF - Tool to set voltages  (Read 8964 times)
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 10, 2014, 08:03:01 PM
 #21

You are right, the change just overwrite the default voltage used by the board and issue a reset. The python script is doing exactly the same so from my point of view both methods (python script or modified cgminer) are at same risk level.
 
I added a separate change to enable it only for devices with 4 dies so it is ready for a pull request upstream. I'll wait to get confirmation that solution works for others and after that I'll see if I create a pull request. 

I'm not sure if the python solution works on windows.

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
MrTeal
Legendary
*
Offline Offline

Activity: 1274
Merit: 1004


View Profile
June 10, 2014, 08:13:35 PM
 #22

You are right, the change just overwrite the default voltage used by the board and issue a reset. The python script is doing exactly the same so from my point of view both methods (python script or modified cgminer) are at same risk level.
 
I added a separate change to enable it only for devices with 4 dies so it is ready for a pull request upstream. I'll wait to get confirmation that solution works for others and after that I'll see if I create a pull request. 

I'm not sure if the python solution works on windows.
I started getting python set up a on Windows box, but got pulled away for higher priority things. I believe it should, but python on Windows with pyusb 1.0.x is not a fun thing to set up.
Not discounting your work either, I think it's great. I just want to make sure that everyone is aware that this would be a replacement (especially under Windows or say a rPi) for the Python script, and not something that you would run every time you start cgminer.
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 10, 2014, 08:49:16 PM
 #23

BTW, to run the hf-tool on Gentoo Linux you just need to install python3 and pyusb using:

Code:
emerge dev-lang/python:3.3 dev-python/pyusb

then add the udev rules as described in the OP and run the tool
Code:
./hftool.py -r

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
r00t$
Member
**
Offline Offline

Activity: 117
Merit: 10



View Profile
June 11, 2014, 04:04:58 PM
 #24

For us Windows people, do you plan to release a Windows build of your edited version of cgminer?

I might be able to work through the read me to setup and build, but my Linux skills are sub-par.
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 11, 2014, 05:16:28 PM
Last edit: June 11, 2014, 07:49:10 PM by JakeTri
 #25

For us Windows people, do you plan to release a Windows build of your edited version of cgminer?

I might be able to work through the read me to setup and build, but my Linux skills are sub-par.

I do not plan to release any Windows or Linux build of cgminer.

You can follow the standard windows building instructions for cgminer from windows-build.txt file.

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
gateway (OP)
Hero Member
*****
Offline Offline

Activity: 552
Merit: 500


View Profile
June 11, 2014, 08:59:30 PM
 #26

@JakeTri

How do you plan to address if a person has more than one board on their system, and what about sierras that are changed, granted this is more for habaneros that don't have the chain up or down.

python on windows.. blah Smiley hahaha
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 11, 2014, 10:40:46 PM
 #27

How do you plan to address if a person has more than one board on their system, and what about sierras that are changed, granted this is more for habaneros that don't have the chain up or down.

For now the "new" settings are applied only if board have 4 dies ... that should cover habaneros and yoli.

I think the change to cgminer can be expanded to support chained boards (like sierras) but I don't have any way to test it. For chained boards it would be tricky to find a way to provide the settings (voltage and clock value/offset) for individual dies in the command line.

cgminer already support individual (per board) settings based on board name (set with cgminer using --hfa-name) when multiple boards are connected to one system.

Here is the command line that I used on my system where I have connected 2 habaneros (one is named "pepper1" and the other one is "pepper2"):

Code:
cgminer --hfa-options "pepper1:925:950:920:950:950:0:-50:0:0,pepper2:950:930:960:970:970:-50:0:0:0"

Similar hftool command line for the system with "pepper1" connected would be

Code:
./hftool.py -w 0:950@925,1:920@875,2:950@925,3:950@925

and for the second system with "pepper2"

Code:
./hftool.py -w 0:930@900,1:960@950,2:970@950,3:970@950

And to use hftool I have to use 2 systems instead of one Smiley

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
gateway (OP)
Hero Member
*****
Offline Offline

Activity: 552
Merit: 500


View Profile
June 11, 2014, 11:20:14 PM
 #28

How do you plan to address if a person has more than one board on their system, and what about sierras that are changed, granted this is more for habaneros that don't have the chain up or down.

For now the "new" settings are applied only if board have 4 dies ... that should cover habaneros and yoli.

I think the change to cgminer can be expanded to support chained boards (like sierras) but I don't have any way to test it. For chained boards it would be tricky to find a way to provide the settings (voltage and clock value/offset) for individual dies in the command line.

cgminer already support individual (per board) settings based on board name (set with cgminer using --hfa-name) when multiple boards are connected to one system.

Here is the command line that I used on my system where I have connected 2 habaneros (one is named "pepper1" and the other one is "pepper2"):

Code:
cgminer --hfa-options "pepper1:925:950:920:950:950:0:-50:0:0,pepper2:950:930:960:970:970:-50:0:0:0"

Similar hftool command line for the system with "pepper1" connected would be

Code:
./hftool.py -w 0:950@925,1:920@875,2:950@925,3:950@925

and for the second system with "pepper2"

Code:
./hftool.py -w 0:930@900,1:960@950,2:970@950,3:970@950

And to use hftool I have to use 2 systems instead of one Smiley
Cool, well I say send it over to con so he can pull it in, prob should add something to a readme and maybe a warning, experimental feature for now.. this will give windows users maybe the ability to change voltages, lets just hope they dont make it 1000mV, I have no idea what might happen..
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 11, 2014, 11:59:33 PM
 #29

Cool, well I say send it over to con so he can pull it in, prob should add something to a readme and maybe a warning, experimental feature for now.. this will give windows users maybe the ability to change voltages, lets just hope they dont make it 1000mV, I have no idea what might happen..

Change send to con https://github.com/ckolivas/cgminer/pull/609

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
gateway (OP)
Hero Member
*****
Offline Offline

Activity: 552
Merit: 500


View Profile
June 12, 2014, 12:05:41 AM
 #30

Maybe im tired today but what does the -50 mean?

Code:
cgminer --hfa-options "hab1:950:970:940:970:970:0:-50:0:0"

Also maybe a small change but easier to read would be

name:die/s:mV@freq

so to do all dies it would be

hab1:*:930@875

?
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 12, 2014, 12:23:45 AM
Last edit: June 12, 2014, 01:36:45 AM by JakeTri
 #31

Maybe im tired today but what does the -50 mean?

Code:
cgminer --hfa-options "hab1:950:970:940:970:970:0:-50:0:0"

Also maybe a small change but easier to read would be

name:die/s:mV@freq

so to do all dies it would be

hab1:*:930@875

?

I'm trying to keep backward compatibility with existing option so I have to start with "name:clock".

You need to set all the 9 values only if you need different clock/voltage for each die.
To set same clock/voltage for all dies you just need "name:freq:mV".

Your example with the default freq/voltage would be:

hab1:875:930

For my boards one die is about 10 degree hotter (I guess I need to re-seat again the water pump) so I try to keep it at lower clock and lower voltage.

The first number after "name" is the "clock" (same as stock cgminer) -> 950Mhz in my example.
After the "base clock" next 4 values are voltage values (for each die) -> 970, 940, 970, 970
After the 4 voltage values you can add 4 "clock offset" (from base clock) for each die -> 0, -50, 0 , 0 that means the following clocks 950, 900, 950, 950 (second die use 50Mhz lower clock)

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
xjack
Hero Member
*****
Offline Offline

Activity: 539
Merit: 500



View Profile
June 15, 2014, 08:56:41 PM
 #32

JakeTri, any word or feedback on your pull request?

Has anyone compiled this fork that can comment on any successes, or problems (other than the board reset aand hotplug that is noted)?

xjack - 1xjackDMgJCLn1LDtbgh51DYw6uRgeHVb
Reputation thread - https://bitcointalk.org/index.php?topic=482124.0
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 15, 2014, 09:44:40 PM
Last edit: June 15, 2014, 10:05:44 PM by JakeTri
 #33

JakeTri, any word or feedback on your pull request?

Has anyone compiled this fork that can comment on any successes, or problems (other than the board reset and hotplug that is noted)?

Edit: My pull request was merged to cgminer today.

I would like to get comments on successes (or failures) from anyone who tried it but nothing yet.

On a side note I notice another issue/limitation related to the clock offsets part of my change.
If you use more than one clock offset then only the offset from the die with higher index is used. All other dies use the base clock. I have not spend much time on this issue but so far I think this is caused by the firmware interface that allow only frequency to be send to the board. It seems that all dies not selected to use that frequency are set to the default frequency for the board.

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
-ck
Legendary
*
Offline Offline

Activity: 4312
Merit: 1649


Ruu \o/


View Profile WWW
June 16, 2014, 12:50:08 AM
 #34

I extensively audited the code and have reverted it sorry, but have given you plenty of comments as to what needs to be fixed if you wish to resubmit.

Developer/maintainer for cgminer, ckpool/ckproxy, and the -ck kernel
2% Fee Solo mining at solo.ckpool.org
-ck
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 16, 2014, 01:39:27 AM
 #35

I extensively audited the code and have reverted it sorry, but have given you plenty of comments as to what needs to be fixed if you wish to resubmit.

Thank you for considering the change in the first place!

I agree that change need more work so I'll rework the change and resubmit.

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
padrino
Legendary
*
Offline Offline

Activity: 1428
Merit: 1000


https://www.bitworks.io


View Profile WWW
June 17, 2014, 05:04:15 PM
 #36

I extensively audited the code and have reverted it sorry, but have given you plenty of comments as to what needs to be fixed if you wish to resubmit.

Thank you for considering the change in the first place!

I agree that change need more work so I'll rework the change and resubmit.

Very interested in seeing how this progresses and interested in picking it up this week in whatever form it is in for some work I am doing, be sure to drop a BTC address, a donation is definitely coming your way..

1CPi7VRihoF396gyYYcs2AdTEF8KQG2BCR
https://www.bitworks.io
xjack
Hero Member
*****
Offline Offline

Activity: 539
Merit: 500



View Profile
June 17, 2014, 05:41:06 PM
 #37

I can confirm JakeTri method works fine with a two-board setup on latest cgminer 4.3.4 built from git. (Prior to the code being reverted).

I can't comment on the default hash rate jaketri notes above due to a preexisting issue.  For some reason on my Ubuntu 12.0.4 install, setting hfa-hash-clock to 1 forces all dies to the lowest speed configured per card.

I just want to make sure that everyone is aware that this would be a replacement (especially under Windows or say a rPi) for the Python script, and not something that you would run every time you start cgminer.

MrTeal, can you comment on why someone wouldn't want to run this every time they start cgminer?

xjack - 1xjackDMgJCLn1LDtbgh51DYw6uRgeHVb
Reputation thread - https://bitcointalk.org/index.php?topic=482124.0
gateway (OP)
Hero Member
*****
Offline Offline

Activity: 552
Merit: 500


View Profile
June 17, 2014, 05:49:53 PM
 #38

I can confirm JakeTri method works fine with a two-board setup on latest cgminer 4.3.4 built from git. (Prior to the code being reverted).

I can't comment on the default hash rate jaketri notes above due to a preexisting issue.  For some reason on my Ubuntu 12.0.4 install, setting hfa-hash-clock to 1 forces all dies to the lowest speed configured per card.

I just want to make sure that everyone is aware that this would be a replacement (especially under Windows or say a rPi) for the Python script, and not something that you would run every time you start cgminer.

MrTeal, can you comment on why someone wouldn't want to run this every time they start cgminer?

When you say lowest speed, that would be the speed that was set with the hf-tool.. so if you set your volts to lets say 940, and freq to 900, --hfa-hash-clock 1 as *we* understand it would then run it at 900Mhz.. I could be wrong and I haven't had enough coffee yet to wake up my brain cells.

Its proba a good idea to stick with the hf-tool for a bit until Jake can work on the part of the code, with the tool you just have to set it once so every time you restart cgminer or so you do not have to set this and we are not 100% sure if their is any fallout or issues doing it with cgminer writing to the flash all the time.

xjack
Hero Member
*****
Offline Offline

Activity: 539
Merit: 500



View Profile
June 17, 2014, 06:04:25 PM
 #39

I can confirm JakeTri method works fine with a two-board setup on latest cgminer 4.3.4 built from git. (Prior to the code being reverted).

I can't comment on the default hash rate jaketri notes above due to a preexisting issue.  For some reason on my Ubuntu 12.0.4 install, setting hfa-hash-clock to 1 forces all dies to the lowest speed configured per card.

I just want to make sure that everyone is aware that this would be a replacement (especially under Windows or say a rPi) for the Python script, and not something that you would run every time you start cgminer.

MrTeal, can you comment on why someone wouldn't want to run this every time they start cgminer?

When you say lowest speed, that would be the speed that was set with the hf-tool.. so if you set your volts to lets say 940, and freq to 900, --hfa-hash-clock 1 as *we* understand it would then run it at 900Mhz.. I could be wrong and I haven't had enough coffee yet to wake up my brain cells.

Its proba a good idea to stick with the hf-tool for a bit until Jake can work on the part of the code, with the tool you just have to set it once so every time you restart cgminer or so you do not have to set this and we are not 100% sure if their is any fallout or issues doing it with cgminer writing to the flash all the time.

When I say preexisting issue and lowest speed, I'm referring to per die tuning.  I get the same result whether I set the speeds with the jaketri method or hf-tool.  When I start cgminer with the hfa-hash-clock to 1, here's what I get with these settings.

.980@950/.980@950/.975@925/.975@925 = all dies hash at 925.
.970@925/.980@950/.950@900/.970@925 = all dies hash at 900.

I'm stumped, and taking the controller offline to upgrade ubuntu is a last resort for me.

xjack - 1xjackDMgJCLn1LDtbgh51DYw6uRgeHVb
Reputation thread - https://bitcointalk.org/index.php?topic=482124.0
JakeTri
Full Member
***
Offline Offline

Activity: 154
Merit: 100


View Profile
June 17, 2014, 06:18:12 PM
 #40

I can confirm JakeTri method works fine with a two-board setup on latest cgminer 4.3.4 built from git. (Prior to the code being reverted).

I can't comment on the default hash rate jaketri notes above due to a preexisting issue.  For some reason on my Ubuntu 12.0.4 install, setting hfa-hash-clock to 1 forces all dies to the lowest speed configured per card.

I just want to make sure that everyone is aware that this would be a replacement (especially under Windows or say a rPi) for the Python script, and not something that you would run every time you start cgminer.

MrTeal, can you comment on why someone wouldn't want to run this every time they start cgminer?

When you say lowest speed, that would be the speed that was set with the hf-tool.. so if you set your volts to lets say 940, and freq to 900, --hfa-hash-clock 1 as *we* understand it would then run it at 900Mhz.. I could be wrong and I haven't had enough coffee yet to wake up my brain cells.

Its proba a good idea to stick with the hf-tool for a bit until Jake can work on the part of the code, with the tool you just have to set it once so every time you restart cgminer or so you do not have to set this and we are not 100% sure if their is any fallout or issues doing it with cgminer writing to the flash all the time.

It is very easy to check if the updated settings are written to flash:

Set the value to something different that default (for Habanero default is 875MHz @ 930 mV) and power cycle the board by powering down the PSU and also disconnect the USB. After powering up the board start mining using --hfa-hash-clock 1 and see what settings are used.

If you get back to default values 875MHz @ 930 mV then you can safely assume that settings are not saved to flash.
If your custom settings are preserved than settings are saved to flash and you need to set them only once for the board.

I'll try to do this easy check later today.

A simplified version of my voltage adjustment was merged yesterday into cgminer. This version set same voltage for all cores/dies and use following new syntax for --hfa-options:

name:clock@voltage,name2:clock2@voltage1, ....

BTC donations always welcome: 1JakeTriwbahMYp1rSfJbTn7Afd1w62p2q
Pages: « 1 [2] 3 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!