CYPER
|
|
December 21, 2013, 03:00:49 PM |
|
I'm trying to get into /etc/init.d but it won't let me. Permissions are drwxr-xr-x (755) — Everyone can read the directory, but its contents can only be changed by the user.
I type su which gives me no error, and still I get this:
root@Jupiter-6:/etc# cd /init.d sh: cd: can't cd to /init.d root@Jupiter-6:/etc#
I am no Unix guru, so can you please tell me what is wrong?
This is an October 8VRM machine - I want to open the cgminer.sh file and see if it is the same as the one on October 4VRM.
Maybe I should install sudo?
|
|
|
|
r1senfa17h
|
|
December 21, 2013, 03:17:36 PM |
|
So guys, is it riskier to try it on a 8VRM October Jupiter, or shall I try it first on a 4VRM October one?
From reading this thread no one has been able to get 8VRM boards to work? ? I have an early 8VRM Saturn and I couldn't get it to work with an upgrade module either. I also only get 264GH on it as each chip has some individual cores that are constantly flipping between enable/disable, but at least no DIE 0 issues... I have 2 x 4-VRM modules and 4 x 8-VRM modules in my Jupiter and the 8-VRM modules actually overclock better for me. I get the lowest HW errors using 231, which is a huge increase. Make sure you don't change anything in the advanced tab after restarting cgminer or else it will revert to stock clock speed.
|
1N3o5Kyvb4iECiJ3WKScKY8xTVXxf1hMvA
|
|
|
keyzersoze
|
|
December 21, 2013, 03:46:07 PM |
|
Is there a sed command that goes higher than 7%?
|
|
|
|
CYPER
|
|
December 21, 2013, 04:04:37 PM |
|
Is there a sed command that goes higher than 7%?
No, because the next value in line is different: 201 It can probably be done with 2 sed commands or you can just edit the zzz.sh manually. Line 61, find this string: cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) 800Mhz - cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) 825Mhz - cmd=$(printf "0x86,0x%02X,0x02,0x01" $c) 850Mhz - cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) Please use your own judgement as I cannot 100% guarantee this code is correct. Wait for someone to confirm.
|
|
|
|
CYPER
|
|
December 21, 2013, 04:07:45 PM |
|
Btw why I can't find the strings for tuning each chip/die individually in either cgminer.sh or zzz.sh? This is all that is inside: done done
for p in 0 1 2 3 4 5 ; do i2cset -y 2 0x71 1 $((p+1)) good_flag=0 ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x85,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi if [ -n "$bad_ports" ] ; then for p in $bad_ports ; do root@Jupiter-6:/config# /config/zzz.sh restart Restarting Cgminer daemon: cgminer. root@Jupiter-6:/config# screen -r [detached] root@Jupiter-6:/config# vi /etc/init.d/cgminer.sh #!/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/cgminer NAME=cgminer DESC="Cgminer daemon"
set -e
test -x "$DAEMON" || exit 0
do_start() { # Stop SPI poller spi_ena=0 i2cset -y 2 0x71 2 $spi_ena
good_ports="" bad_ports=""
# CLear faults in megadlynx's for b in 3 4 5 6 7 8 ; do for d in 0 1 2 3 4 5 6 7 ; do i2cset -y $b 0x1$d 3 >/dev/null 2>&1 || true done done
for p in 0 1 2 3 4 5 ; do i2cset -y 2 0x71 1 $((p+1)) good_flag=0 ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then root@Jupiter-6:/config# screen -r [detached] root@Jupiter-6:/config# vi /config/zzz.sh fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x85,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi if [ -n "$bad_ports" ] ; then for p in $bad_ports ; do # Disable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# disable all cores i=0 - /config/zzz.sh 61/131 46%
|
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 21, 2013, 05:01:51 PM |
|
OK, I get what each variable means and how to manipulate it, I'm just not sure the proper way to insert the code into cgminer.sh in order to implement it. Could you give us a sample of working code with a little more reference code on each end to help us newbs through this? I guess the correct term is syntax. I understand the code (kinda) I just need to know the proper syntax so that I can insert my own version into cgminer.sh.
Thanks!
A newer better code example is here https://bitcointalk.org/index.php?topic=313978.msg4010530#msg4010530What you quoted was from earlier in the process and only addresses one die. Thanks a ton! I was able to tune my two die-0 boards so that the other dies on those boards don't freak out. Before this nonsense I was getting 480Ghs at the pool, now I am seeing 590 Ghs. I suspect a Jupiter with 16 good dies should easily get to 635 Ghs.
|
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 21, 2013, 05:26:04 PM |
|
See the code I inserted? (how could you miss it?!) that's how you change asic by asic, die by die. The code I inserted here will takes both slot 0 and slot 5 on the controller board and set adjust die-0 to below factory specs while running dies 1-2-3 at 211. The very first time you see the "x086" register, that sets the overall system clock. Inserting the sloppy code AFTER that line (up to four times, or six if you have six modules) will then modify different dies on different slots. I have added two sections on my Jupiter cgminer.sh file, one for slot 0 ($p -eq 0) and a section for slot 5 ($p -eq 5) since those are my two die-0 boards and my other boards run fine without adjustment. Simply cut and paste the same code from below (insert each new next section of code after "fi <br> fi" for each ASIC board you need to adjust individually. Btw why I can't find the strings for tuning each chip/die individually in either cgminer.sh or zzz.sh? This is all that is inside: done done
for p in 0 1 2 3 4 5 ; do i2cset -y 2 0x71 1 $((p+1)) good_flag=0 ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) if [ $p -eq 0 ] then if [ $c -eq 0 ] then cmd=$(printf "0x86,0x%02X,0x01,0xB1" $c) fi if [ $c -eq 1 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 2 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 3 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi fi
if [ $p -eq 5 ] then if [ $c -eq 0 ] then cmd=$(printf "0x86,0x%02X,0x01,0xB1" $c) fi if [ $c -eq 1 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 2 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 3 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi fi
spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x85,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi if [ -n "$bad_ports" ] ; then for p in $bad_ports ; do root@Jupiter-6:/config# /config/zzz.sh restart Restarting Cgminer daemon: cgminer. root@Jupiter-6:/config# screen -r [detached] root@Jupiter-6:/config# vi /etc/init.d/cgminer.sh #!/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/bin/cgminer NAME=cgminer DESC="Cgminer daemon"
set -e
test -x "$DAEMON" || exit 0
do_start() { # Stop SPI poller spi_ena=0 i2cset -y 2 0x71 2 $spi_ena
good_ports="" bad_ports=""
# CLear faults in megadlynx's for b in 3 4 5 6 7 8 ; do for d in 0 1 2 3 4 5 6 7 ; do i2cset -y $b 0x1$d 3 >/dev/null 2>&1 || true done done
for p in 0 1 2 3 4 5 ; do i2cset -y 2 0x71 1 $((p+1)) good_flag=0 ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,3,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then root@Jupiter-6:/config# screen -r [detached] root@Jupiter-6:/config# vi /config/zzz.sh fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,2,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,1,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi ar="$(spi-test -s 50000 -OHC -D /dev/spidev1.0 0x80,0,0,0,0,0,0,0 | tail -c 13)" if [ "x$ar" = "x00 30 A0 01" ] ; then good_flag=1 fi
if [ "$good_flag" = "1" ] ; then good_ports=$good_ports" $p" else bad_ports=$bad_ports" $p" fi done
if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x85,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi if [ -n "$bad_ports" ] ; then for p in $bad_ports ; do # Disable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done
# disable all cores i=0 - /config/zzz.sh 61/131 46%
|
|
|
|
CYPER
|
|
December 21, 2013, 06:05:28 PM |
|
I think I managed to make it work. Please have a look at my code and tell me if it is OK: This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jFIt works, so I assume it is all good. I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning.
|
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 21, 2013, 06:56:34 PM |
|
I think I managed to make it work. Please have a look at my code and tell me if it is OK: This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jFIt works, so I assume it is all good. I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning. Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial! Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
|
|
|
|
CYPER
|
|
December 21, 2013, 07:12:06 PM |
|
I think I managed to make it work. Please have a look at my code and tell me if it is OK: This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jFIt works, so I assume it is all good. I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning. Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial! Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) True that. I will refrain from making it easy for the average joe then. Btw what are your observations in regards to unhappy dies? One of my miners clocked with 201 is showing this: https://i.imgur.com/NSl59Iz.pngShall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC?
|
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 21, 2013, 07:30:58 PM Last edit: December 21, 2013, 09:23:14 PM by the-skeptic |
|
201 isn't that fast. The only time I've seen cgminer spit out errors like that was with voltage problems. I leave the SPI voltage at 1.95v and all the dies at -.1121v then fine tune the dies by turning the clock speeds down below factory on the bad dies and cranking them up on the good dies using cgminer.sh.
I leave my advanced tab untouched, with 1.95v and all the stock settings. I have been doing all tuning through the cgminer.sh clock speeds and having great results. CGminer 3.8.2 says I am getting 100GHs+ over factory, with about 125W extra consumed. Not terribly efficient (tell that to BFL!), but it pays for itself handsomely. What would I pay for a 100GHs miner on fleecebay right now? $4000 if I were lucky?
"Hey Mom, I just found $4000 worth of hashing!," I exclaimed.
"I thought I told you to stop smoking that stuff in the house!" she scolded me.
|
|
|
|
ElGabo
|
|
December 22, 2013, 10:48:02 AM |
|
Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial! Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) Sorry but a bit off topic Skeptic I think we're not enemies here. We're the small guys with a few machines trying to make some profit. We could help each other. This waht is this forum for. Our enemies are Asicminer and this shit now in Iceland and all the big mining farms. End off topic
|
" I'm waiting for my punishment, I know it's on my way So cut, cut, cut me up and fuck, fuck, fuck me up"
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 22, 2013, 04:24:27 PM |
|
And the guy in Iceland isn't going to overclock his rigs? </snark>
I've never been impressed with big farms. They do extremely well for a short period of time, but then difficulty and technology catch up quickly. ASICMiner went from being the big dog in the room to being a drop in the bucket. Big farms mean big money investors who don't want to hear about having to re-invest in more equipment, or learn about difficulty increases and exchange rates, they want more money each week, and every week.
"What do you mean the difficulty went from 900 Million to 1.2 Billion and the exchange dropped from $1200 to $650?!?! Where's my damn money?!"
You and I can much more easily absorb the week to week changes of bitcoin, where large farms have angry investors that want more money, not less money each week.
As far as helping people overclock their KNC rigs, it's probably a wash. So few people have the skills to follow really simple command line instructions, I figure an overclocking guide will brick as many machines as it overclocks! What percentage of the average public has ever used a non-gui based text editor? Try to explain vi to them!
Next, throw some cryptic pseudo-MS-DOS (I know it's the other way around) shit like manually copying files and changing directories. Did you know the slashes / \ go the opposite directions in windows and unix? And in Unix directories can have a . in the middle of it's name? Holy crap, that alone is gonna screw half the people right there.
So you changed my mind, PLEASE WRITE AN OVERCLOCKING GUIDE. Gonna fuck some shit up, yes we are.
-Dana
|
|
|
|
isimme
Member
Offline
Activity: 78
Merit: 10
|
|
December 22, 2013, 05:28:46 PM |
|
I highly appreciate the efforts of tolip_wen and beyond words sent some BTC to his address: 13362fxFAdrhagmCvSmFy4WoHrNRPG2V57 I encourage all to contribute something as tolip_wen has sacrificed mining time developing these tweaks and the least we can do is give back some of our oc bonus we have because of him.
|
If I was able to help you in anyway, tips are appreciated: 1A1RcqRKdApT4ViLmZcdDBES8rov3zjMYp
|
|
|
isimme
Member
Offline
Activity: 78
Merit: 10
|
|
December 22, 2013, 05:48:59 PM |
|
I think I managed to make it work. Please have a look at my code and tell me if it is OK: This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jFIt works, so I assume it is all good. I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning. Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial! Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) True that. I will refrain from making it easy for the average joe then. Btw what are your observations in regards to unhappy dies? One of my miners clocked with 201 is showing this: https://i.imgur.com/NSl59Iz.pngShall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC? @CYPER Please DO write a very detailed tutorial for people who are not sure what they are doing? I made a contribution to tolip_wen for his shared work and will do the same for you and as well encourage others to as well. None of us would be here without some help from someone else at some point. Thanks
|
If I was able to help you in anyway, tips are appreciated: 1A1RcqRKdApT4ViLmZcdDBES8rov3zjMYp
|
|
|
CYPER
|
|
December 22, 2013, 06:06:55 PM |
|
I think I managed to make it work. Please have a look at my code and tell me if it is OK: This code is for overclocking each individual die on each board to 850Mhz, so 16 total individual settings for boards at position 0, 1, 2, 3: http://pastebin.com/dSWrP4jFIt works, so I assume it is all good. I think I understand it better now, so I will probably write a very detailed tutorial tomorrow for people who are not sure what they are doing. But first I will try to switch to BFGMiner to better fine tuning. Looks good. But please, don't help add a couple hundred THs to the network by being the hero and writing an overclocking tutorial! Anyway, you can change each individual die to whatever clock speed you want with your code. It's great for people who have issues with bad boards, but simply changing the preceeding 0x86 register will cover 95% of the people who have no bad dies without over complicating things: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) True that. I will refrain from making it easy for the average joe then. Btw what are your observations in regards to unhappy dies? One of my miners clocked with 201 is showing this: https://i.imgur.com/NSl59Iz.pngShall I increase the voltage at the Advanced tab, then /config/zzz.sh restart or try first with more/less OC? @CYPER Please DO write a very detailed tutorial for people who are not sure what they are doing? I made a contribution to tolip_wen for his shared work and will do the same for you and as well encourage others to as well. None of us would be here without some help from someone else at some point. Thanks I would rather help individual people in person like ElGabo did, than write a tutorial Find me on Skype and I can help when I am free.
|
|
|
|
CYPER
|
|
December 22, 2013, 06:48:19 PM |
|
As far as helping people overclock their KNC rigs, it's probably a wash. So few people have the skills to follow really simple command line instructions, I figure an overclocking guide will brick as many machines as it overclocks! What percentage of the average public has ever used a non-gui based text editor? Try to explain vi to them!
Next, throw some cryptic pseudo-MS-DOS (I know it's the other way around) shit like manually copying files and changing directories. Did you know the slashes / \ go the opposite directions in windows and unix? And in Unix directories can have a . in the middle of it's name? Holy crap, that alone is gonna screw half the people right there.
So you changed my mind, PLEASE WRITE AN OVERCLOCKING GUIDE. Gonna fuck some shit up, yes we are.
-Dana
Good points. I am no Linux guru, but back in 2011 when I was GPU mining I managed to run a headless Ubuntu rig with no prior unix experience. Most of it is having good computer skills in general and using Google. Until today I've never used vi, but again using Google I got all the required information: hint use xxdd to delete a specific number of lines - example 85dd to delete 85 lines.
|
|
|
|
merv77
|
|
December 22, 2013, 07:35:11 PM |
|
here's an idea. if someone with the knowledge could backup/dump the firmware on a working miner (or use downloadable firmware version) to see if you can successfully revive/restore a bricked miner. Then write a detailed (dumb proof) tutorial on how to restore the bricked miner (really it's restoring a beaglebone, not a miner). then a detailed tutorial on overclocking can be written and used by anyone willing to take the risk to try. Who's has the knowledge and is up for the task? I'm sure there be a few of us happy to donate if this were to happen. no? I would
|
|
|
|
the-skeptic
Member
Offline
Activity: 91
Merit: 10
|
|
December 22, 2013, 07:39:08 PM |
|
Good points. I am no Linux guru, but back in 2011 when I was GPU mining I managed to run a headless Ubuntu rig with no prior unix experience. Most of it is having good computer skills in general and using Google. Until today I've never used vi, but again using Google I got all the required information: hint use xxdd to delete a specific number of lines - example 85dd to delete 85 lines.
Until you gotta explain: "Oh, actually, hit escape, then type : , Then type 85dd" You're dealing with a ton of people who have never done any gpu or cpu mining, when it comes to KNC owners. The promise of the plug-n-play 400GHs miner lured plenty of newbs into the mix. I think you're smart to help people one-on-one, since each person is going to be running a different desktop OS to access the miner, and that can have a huge impact on how you do things. A one-size-fits-all overclocking system is gonna lead to a lot of people wishing they had never learned what SSH was. On another topic: What's the rumor mill say about Jupiters opening up for sale again? I got some more BTC I wanna spend.
|
|
|
|
complang
Newbie
Offline
Activity: 32
Merit: 0
|
|
December 22, 2013, 09:57:10 PM |
|
I've labbed around with this modification and a 8VRM November Saturn - 99-E FW. It did not blew up and it certenly had an impact on the hashrate. I tried differend combos, everyone resulting in a lower hashrate than OEM config. This is the OEM conf: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi And this is cgminer screen from OE conf: (340+ Gh/s) https://dl.dropboxusercontent.com/u/39955703/bc/OEM_cgminer.PNGThis is the changes: if [ -n "$good_ports" ] ; then for p in $good_ports ; do # Re-enable PLL i2cset -y 2 0x71 1 $((p+1)) for c in 0 1 2 3 ; do cmd=$(printf "0x84,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x86,0x%02X,0x02,0x11" $c)
if [ $p -eq 0 ] then if [ $c -eq 0 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 1 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 2 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 3 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi fi
if [ $p -eq 4 ] then if [ $c -eq 0 ] then cmd=$(printf "0x86,0x%02X,0x01,0xF1" $c) fi if [ $c -eq 1 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 2 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi if [ $c -eq 3 ] then cmd=$(printf "0x86,0x%02X,0x02,0x11" $c) fi fi
spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null cmd=$(printf "0x85,0x%02X,0,0" $c) spi-test -s 50000 -OHC -D /dev/spidev1.0 $cmd >/dev/null done # re-enable all cores i=0 while [[ $i -lt 192 ]] ; do i2cset -y 2 0x2$p $i 1 i=$((i+1)) done spi_ena=$(( spi_ena | (1 << $p) )) done fi The best combo I've come up with is: All cores on p0 = 211 + cores on p4 = 231 This settings go more or less straight to 333Gh/s and stays ULTRA stable there. Not seen anything like this before. Just som HWs in the beginning, and some singles after that. https://dl.dropboxusercontent.com/u/39955703/bc/211%2B231.PNGIt affects power usage very little, if anything at all. Temps are the same. If using 211 is will go to 300Gh/s Looked through the thread and it seems like someone was using 1F1, what does this corresponds to? Don't wanna try more right now, loosing to much hash rate when labbing around with this
|
|
|
|
|