Bitcoin Forum
November 18, 2024, 01:26:44 PM *
News: Check out the artwork 1Dq created to commemorate this forum's 15th anniversary
 
   Home   Help Search Login Register More  
Pages: « 1 ... 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 [158] 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 ... 416 »
  Print  
Author Topic: [OS] nvOC easy-to-use Linux Nvidia Mining  (Read 418244 times)
VoskCoin
Sr. Member
****
Offline Offline

Activity: 1414
Merit: 487


YouTube.com/VoskCoin


View Profile WWW
September 01, 2017, 11:00:52 PM
 #3141

Hi Fullzero thanks for your effort - i am looking to load up v0019 soon on my 13x board.

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

You dont need reboot like windows but there is an option in 1bash
I have ubuntu servers running for over 3 months without restart

Code:
AUTO_REBOOT="NO"
 
    REBOOT_TIMEOUT_IN_MINUTES=1440  # once every 24 hours

change it to what you like

Should these rigs be rebooted ? Is that recommended or a waste of time basically

Check out my Crypto YouTube channel
https://www.youtube.com/VoskCoin
If you enjoy my content click Subscribe
Bibi187
Full Member
***
Offline Offline

Activity: 420
Merit: 106


https://steemit.com/@bibi187


View Profile WWW
September 01, 2017, 11:19:52 PM
 #3142

Hi Fullzero thanks for your effort - i am looking to load up v0019 soon on my 13x board.

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

You dont need reboot like windows but there is an option in 1bash
I have ubuntu servers running for over 3 months without restart

Code:
AUTO_REBOOT="NO"
 
    REBOOT_TIMEOUT_IN_MINUTES=1440  # once every 24 hours

change it to what you like

Should these rigs be rebooted ? Is that recommended or a waste of time basically

Linux dont need reboot, since i dont have issue for memory lost.
U can run your rig 24/24 7/7 365/365 with no problems at all.
We have two servers at my work running for 3 years and half without a simple reboot, actually we are afraid of doing a reboot Cheesy

DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
JudoFlash
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
September 01, 2017, 11:33:08 PM
 #3143

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.
rayd89
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
September 01, 2017, 11:47:47 PM
 #3144

So Claymore v10 just dropped

https://github.com/nicehash/NiceHashMinerLegacy/issues/255

What's the best way to upgrade claymore in NVOC v0019?
Bibi187
Full Member
***
Offline Offline

Activity: 420
Merit: 106


https://steemit.com/@bibi187


View Profile WWW
September 01, 2017, 11:54:50 PM
 #3145

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.

In windows is impossible cause your GPU number change after each reboot, in linux is another hand.
GPU number is linked from hardware so a basic GPU0 is your primary x16, GPU1 is the slot on top on x16 is u have one, and for all other u just follow build sequence.
M2 slot will always be last GPU number from top to down like pci port.

DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
JudoFlash
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
September 02, 2017, 01:35:07 AM
 #3146

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.

In windows is impossible cause your GPU number change after each reboot, in linux is another hand.
GPU number is linked from hardware so a basic GPU0 is your primary x16, GPU1 is the slot on top on x16 is u have one, and for all other u just follow build sequence.
M2 slot will always be last GPU number from top to down like pci port.

Thanks so much. Not 100% sure I follow; based on what you said, would it be like what I am showing in blue, red, or some other pattern I am not thinking of?

https://s26.postimg.org/xs6ehrze1/asrock_mobo.png
kk003
Member
**
Offline Offline

Activity: 117
Merit: 10


View Profile
September 02, 2017, 02:00:42 AM
 #3147

Here is a script to get notification from telegram. It has some comments expaining what it does and how.
Really the idea is that, only notify if a problem is detected and /or send a standar report.
At the moment the "error and report part" is not finish.. I am looking forward next week to finish that bit.
In the mean time it can be run from cron to send reports.
I don't have Nvoc installed but it should not be problematic to run the script over ubuntu.
I hope that many of you dare to deal with bash scripting and customize the script according to your needs so that I've written so many comments.
I am not a bash/linux guru but I'll be happy to help if I can.
Please read the comments on the script before you play with it and don't run it as root if possible.
Note that, I remove full path to commands in order to make it as much compatible as possible over different linux distros.
 
Code:
#!/bin/bash
# Telegram Info Script
# By BaliMiner et al...
# for nvOC by fullzero
# ref: http://bernaerts.dyndns.org/linux/75-debian/351-debian-send-telegram-notification
# and mod by kk003
# OS: Centos 7 (tested on ubuntu too)
# Script name: telegram-info.sh

# You can run the script from cron like this:
## $ crontab -e (press the "i" key to insert) add this line without the "##":
#
## 00 11 * * * /home/m1/telegram-info.sh >> /home/m1/telegram_rig.log
#
# Then press "ESC" key to scape the insertion mode, then ":" key, then "wq" to Write file and Quit
# The above line wil send you a report every day at 11AM
# You must save the script into root dir of user m1 (/home/m1) for the obove to work
# Don't forget to $ chmod 700 telegram-info.sh

# You must create a bot and get the Chatid + apikey.
# Fallow the link http://bernaerts.dyndns.org/linux/75-debian/351-debian-send-telegram-notification to do so
# and some goggling if you need it

# Data Telegram
CHATID=YOUR CHAT ID GOES HERE # Put here your chat ID
APIKEY="YOUR API KEY GOES HERE" # Put here your Api key

# Number of gpus I know for sure the sistem must have (change this to nº of gpus your system have)
NUMBER_GPUS_FOR_SURE=13

# String I search for to check if I am running claymore
KEY_CLAYMORE="ethdcrminer64" # Exec for Claumor 9.8. Other vesions may have a different name
# You must check if this entry is right for your
      # system to get the script runnin correctly

# If claymore is running use the provided data?
USE_CLAYMORE_STATICS="YES" # YES or NO

# Aliases
# Cos telegram cut off the lines I want to make them as short as possible
# Just add the gpu name such as is showed by nvidia-smi follow by the alias you want
# Fields must be space separated
MODELS=("GeForce GTX 1060 3GB" "GF1060_3G" "GeForce GTX 1060 6GB" "GF1060_6G")

# Query arguments for nvidia-smi
# You can get a complete list of the query arguments by issuing: nvidia-smi --help-query-gpu
# Add what you want here. Args must be coma separated
NVIDIA_SMI_QUERY_ARGUMENTS="index,gpu_name,gpu_bus_id,pstate,utilization.gpu,power.draw,temperature.gpu,fan.speed,clocks.mem,clocks.gr,memory.used"

# Error exit codes (or RETURN VALUE as nvidia call them) for nvidia-smi
# I'll treat them as an array so in couples; even value is the code number and odd value is the text that explains it
NVIDIA_SMI_RETURN_VALUE=(
    "0" "Success"
    "2" "A supplied argument or flag is invalid"
    "3" "The requested operation is not available on target device"
    "4" "The current user does not have permission to access this device or perform this operation"
    "6" "A query to find an object was unsuccessful"
    "8" "A device is external power cables are not properly attached"
    "9" "NVIDIA driver is not loaded"
    "10" "NVIDIA Kernel detected an interrupt issue with a GPU"
    "12" "NVML Shared Library couldn't be found or loaded"
    "13" "Local version of NVML doesn't implement this function"
    "14" "infoROM is corrupted"
    "15" "The GPU has fallen off the bus or has otherwise become inaccessible"
    "255" "Other error or internal driver error occurred"
)

LF=$'\n' # New line


function my_custom_mods ()
{

# I organize some things my way
# comment out the call to this function and you will get the standar output from nvidia-smi
###
# Beginning of block
###

# Save header and remove it from the csv file
CSV_HEADER=$(head -n 1 nvidia_smi_values.csv)     # Save the header of csv file
sed -i -e "1d" nvidia_smi_values.csv              # Remove the header (first line of file)

##### Changing the gpu's name for the alias (if I have it)
#
# First must check that elements in the array are a even number (Multiples of 2) and is not empty
MODELS_LENGTH=${#MODELS[@]} # Get number of elements

if [[ $MODELS_LENGTH -ne 0 ]]; then # Is not empty?

    if [[ $((MODELS_LENGTH%2)) -eq 0 ]]; then   # Number of elements is even?. If so I assume names and alias are well matched in array

        for ((INDEX_EVEN=0; INDEX_EVEN < $MODELS_LENGTH ; INDEX_EVEN=INDEX_EVEN+2)) # First element of array have index 0
        do                                                                          # Even elements are the gpu names, odd elements are alias

            NAME_GPU_IN_ARRAY=${MODELS[$INDEX_EVEN]}                                # Get the name of the gpu in array
            INDEX_ODD=$(($INDEX_EVEN + 1))                                          # +1 to get the alias index
            ALIAS_GPU_IN_ARRAY=${MODELS[$INDEX_ODD]}                                # Get the alias of the gpu in array

            # Find and replace gpu name if exists
            sed -i "s/${NAME_GPU_IN_ARRAY}/${ALIAS_GPU_IN_ARRAY}/g" nvidia_smi_values.csv

        done

    # I get this way out if number of elements in array are odd and I don't replace names for alias
    else
        echo "Number of elements in variable MODELS are odd and I don't replace gpu names for alias."
        echo "Check variable MODELS if you want to replace names for alias"
    fi

# I get this way out if array in variable MODELS is empty
else
    echo "Variable MODELS is empty and I don't replace gpu names for alias."
    echo "Check variable MODELS if you want to replace names for alias"
fi

##### END of Changing gpu's name by the alias (if I have it)


# I don't want any spaces but to align thing
sed -i 's/ //g' nvidia_smi_values.csv

# Get number of elements on NVIDIA_SMI_QUERY_ARGUMENTS variable
NVIDIA_SMI_QUERY_ARGUMENTS_LENGTH=$(echo $NVIDIA_SMI_QUERY_ARGUMENTS | sed 's/[^,]//g' | wc -c)

# Review all the elements in variable NVIDIA_SMI_QUERY_ARGUMENTS and do some mods about the output for some fields
for ((INDEX=1; INDEX <= $NVIDIA_SMI_QUERY_ARGUMENTS_LENGTH ; INDEX=INDEX+1)) # Gives me the column number
do

    NVIDIA_SMI_ARGUMENT=$(echo $NVIDIA_SMI_QUERY_ARGUMENTS | cut -d, -f $INDEX)    # Gives me the name of nvidia-smi argument on array

    #### Arrange the output for the "index" nvidia-smi argument
    #### I want to aling numbers <= 9 if I have more than 9 gpus so I add a space in front

    if [[ "$NVIDIA_SMI_ARGUMENT" == "index" && $GPU_COUNT -gt 10 ]]; then
LINES_TO_MODIFY=10

for ((L=1; L <= $LINES_TO_MODIFY ; L=L+1))
do
    OLD_VALUE=`sed -n -e "${L}p" nvidia_smi_values.csv | cut -d, -f$INDEX`      # Extraigo el dato original
    NEW_VALUE=" "$OLD_VALUE
    sed -i "$L"'s/^\(\([^,]*,\)\{'"$(($INDEX -1))"'\}\)[^,]*/\1'"$NEW_VALUE"'/' nvidia_smi_values.csv
done
    fi

    #### END of Arrange the output for the "index" nvidia-smi argument

    #### Arrange the output for the "pci.bus_id" nvidia-smi argument
    #### I don't want the "00000000:" at the beginning

    if [[ "$NVIDIA_SMI_ARGUMENT" == "gpu_bus_id" ]]; then
        LINES_TO_MODIFY=$GPU_COUNT

        for ((L=1; L <= $LINES_TO_MODIFY ; L=L+1))
        do
            OLD_VALUE=`sed -n -e "${L}p" nvidia_smi_values.csv | cut -d, -f$INDEX`      # Extraigo el dato original
            NEW_VALUE=$(echo "$OLD_VALUE" | sed "s/00000000://")
            sed -i "$L"'s/^\(\([^,]*,\)\{'"$(($INDEX -1))"'\}\)[^,]*/\1'"$NEW_VALUE"'/' nvidia_smi_values.csv
        done
    fi

    #### END of Arrange the output for the "index" nvidia-smi argument


    #### Arrange the output for the "utilization.gpu" nvidia-smi argument
    #### I want to aling values to the right and keep the "%"

    if [[ "$NVIDIA_SMI_ARGUMENT" == "utilization.gpu" ]]; then
LINES_TO_MODIFY=$GPU_COUNT

for ((L=1; L <= $LINES_TO_MODIFY ; L=L+1))
do
    OLD_VALUE=`sed -n -e "${L}p" nvidia_smi_values.csv | cut -d, -f$INDEX`      # Extraigo el dato original
    LEN=${#OLD_VALUE}

    case $LEN in

    2) NEW_VALUE="  "$OLD_VALUE
;;
    3) NEW_VALUE=" "$OLD_VALUE
;;
    *) NEW_VALUE=$OLD_VALUE
;;
    esac

    sed -i "$L"'s/^\(\([^,]*,\)\{'"$(($INDEX -1))"'\}\)[^,]*/\1'"$NEW_VALUE"'/' nvidia_smi_values.csv
done
    fi

    #### END of Arrange the output for the "utilization.gpu" nvidia-smi argument


    #### Arrange the output for the "temperature.gpu" nvidia-smi argument
    #### I want to aling values to the right and add the "ºC"

    if [[ "$NVIDIA_SMI_ARGUMENT" == "temperature.gpu" ]]; then
        LINES_TO_MODIFY=$GPU_COUNT

        for ((L=1; L <= $LINES_TO_MODIFY ; L=L+1))
        do
            OLD_VALUE=`sed -n -e "${L}p" nvidia_smi_values.csv | cut -d, -f$INDEX`      # Extraigo el dato original
            LEN=${#OLD_VALUE}
    CENTIGRADO="ºC"

        case $LEN in

    1)  NEW_VALUE="  "$OLD_VALUE$CENTIGRADO
;;
    2)  NEW_VALUE=" "$OLD_VALUE$CENTIGRADO
    ;;
    *)  NEW_VALUE=$OLD_VALUE$CENTIGRADO
    ;;
    esac

            sed -i "$L"'s/^\(\([^,]*,\)\{'"$(($INDEX -1))"'\}\)[^,]*/\1'"$NEW_VALUE"'/' nvidia_smi_values.csv
        done
    fi

    #### END of Arrange the output for the "temperature.gpu" nvidia-smi argument

done

# Insert the whole header line as the first one
sed -i "1s/^/$CSV_HEADER\n/" nvidia_smi_values.csv

###
# End of block with custom my mods
###

}


function claymore_statics ()
{
#### Arrange the output for claymore statics

if [[ "$USE_CLAYMORE_STATICS" == "YES" ]]; then

    # Check if claymore is running
    if  pgrep -x "$KEY_CLAYMORE" > /dev/null
    then
CLAYMORE_IS_RUNNING="YES"
echo
echo "It seems that Claymore is running!!"

#
# Don't know why http://localhost:3333 access forces claymore's output to show up a line like:
# "GPU #XX: GeForce GTX 1060 3GB, 3013 MB available, 9 compute units, capability: 6.1", one line x gpu in the system
# Get the latest total hashrates
LATEST_TOTAL_HASHRATES=`curl -s http://localhost:3333 | sed '/Total/!d; /Speed/!d;' | awk '{print $6}'`
echo -e "Latest Total Hashrates :\n$LATEST_TOTAL_HASHRATES" > latest_total_hashrates.txt

# Get the indivual gpus hashrates and remove some charaters and spaces I don't want
GPUS_HASHRATES=`curl -s http://localhost:3333 | sed '/ETH: GPU/!d' | awk 'NR == 3' | sed 's/[^GPU]*\(GPU.*\)/\1/' | sed 's/ M/M/g' | sed 's/ G/G/g'`
# Make the string with individual hashrates vertical replacing "," for new line "\n" and removing the "GPUX" part
echo $GPUS_HASHRATES | sed "s/,/\n/g" | sed 's/^[^ ]* //' > gpus_hashrate.txt

# Get total individual and rejected shares and for how long claymore is runing in one single string
# For 13 gpus should look something like this:
# Speed: 318.710 Mh/s, Total Shares: 15835(1233+1212+1226+1256+1216+1243+1228+1303+1220+1177+1237+1209+1222), Rejected: 0, Time: 55:32
#
SOME_GPUS_DATA_FROM_CLAYMORE=`curl -s http://localhost:3333 | sed '/ETH - Total/!d; /Speed/!d; /(/!d; /+/!d; s/[^Speed]*\(Speed.*\)/\1/;' | awk 'NR == 3'`

# Get the total shares
TOTAL_SHARES=$(echo $SOME_GPUS_DATA_FROM_CLAYMORE | cut -d"(" -f 1 | cut -d" " -f 6)

# Get the individual shares (I capture the values between the two parentheses)
# and replace the "+" signs for new line so I set the data vertical
echo $SOME_GPUS_DATA_FROM_CLAYMORE | sed 's/^.*(//; s/).*$//; s/+/\n/g' > individual_shares.txt

# Get the rejected shares and remove de ","
REJECTED_SHARES=$(echo $SOME_GPUS_DATA_FROM_CLAYMORE | cut -d" " -f 8 | sed 's/,//')

# How long claymore has been running?
TIME_CLAYMORE_IS_RUNNING=$(echo $SOME_GPUS_DATA_FROM_CLAYMORE | cut -d" " -f 10)

# Creating a vertical gpux list
# If the file exists and is not empty clear it
if [[ -s v_gpus.txt ]]; then
    > v_gpus.txt
fi

LINES_TO_ADD=$(($GPU_COUNT - 1))

      for ((L=0; L <= $LINES_TO_ADD ; L=L+1))
      do
case "$L" in

0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 )
echo "GPU $L" >> v_gpus.txt
;;
*)
echo "GPU$L" >> v_gpus.txt
;;
esac
      done


# Paste the whole vertical thing together
paste -d, v_gpus.txt individual_shares.txt gpus_hashrate.txt > claymore_statics.tmp

# Mount the header field for claymore statics
CLAYMOR_STATICS_HEADER="Index, Shares, Hashrate"

# Insert the whole header line as the first one
sed -i "1s/^/$CLAYMOR_STATICS_HEADER\n/" claymore_statics.tmp

# Insert a new line on top
sed -i "1s/^/\n/" claymore_statics.tmp

# Add the list of latest total hashrates and put it all togather
cat latest_total_hashrates.txt claymore_statics.tmp > claymore_statics.txt

# Insert the Title for claymore mining information
sed -i "1s/^/** Claymore mining  Information **\n/" claymore_statics.txt
sed -i "1s/^/\n/" claymore_statics.txt

# At the end of file add
echo " " >> claymore_statics.txt
echo "Total shares     :" $TOTAL_SHARES >> claymore_statics.txt
echo "Rejected shares  :" $REJECTED_SHARES >> claymore_statics.txt
echo "Claymore up time :" $TIME_CLAYMORE_IS_RUNNING >> claymore_statics.txt


    else
echo "Claymore does not seem to be running!!. Skiping this bit."
CLAYMORE_IS_RUNNING="NO"
    fi

fi

#### END of Arrange the output for claymore statics

}


function salida ()
{
END_TIME=`date "+%Y-%m-%d %H:%M:%S"`

echo "$MSG"
echo
echo "End time: " $END_TIME

echo
echo "**************************"
echo
exit
}

START_TIME=`date "+%Y-%m-%d %H:%M:%S"`
echo "Start time: " $START_TIME

# Is the script already running?. If so exit
echo -n "Process ID :"
if pidof -x $(basename $0); then
    for p in $(pidof -x $(basename $0)); do
        if [ $p -ne $$ ]; then
        echo "$0 already running. Exiting..."
            salida # exit
        fi
    done
fi

#
# Collect some info from the system
#

# Clear the file's content if exists and is not empty
if [[ -s system_data.txt ]]; then
    > system_data.txt
fi

# Title for system information
echo "** System information **" >> system_data.txt

# Hostname
echo -n "Hostname : " >> system_data.txt
hostname >> system_data.txt
# Ips
echo -n "Ips      : " >> system_data.txt
hostname -I >> system_data.txt
#
# Up since
echo -n "Up since : " >> system_data.txt
uptime -s >> system_data.txt
#
# Up time
echo -n "Up time  : " >> system_data.txt
uptime >> system_data.txt
#
# who is in the system
echo "Connected users : " >> system_data.txt
who >> system_data.txt

# Here I check if there is an open sesion on any display (like display 0). If not may be the x server is down
DISPLAY=$(who | grep "(:")

if [[ -z "$DISPLAY" ]]; then
    echo "Not a user on any Display. May be X server is NOT running" >> system_data.txt
fi

echo "" >> system_data.txt

#
# Number of gpus nvidia-smi reports
#
GPU_COUNT=$(nvidia-smi --query-gpu=count --format=csv,noheader,nounits | tail -1)

echo "System is reporting : $GPU_COUNT Gpus" >> system_data.txt
echo "System should have  : $NUMBER_GPUS_FOR_SURE Gpus" >> system_data.txt

if [[ $GPU_COUNT -ne $NUMBER_GPUS_FOR_SURE ]]; then
    echo "MAY BE A PROBLEM; we should have $NUMBER_GPUS_FOR_SURE GPUs but nvidia-smi only reports $GPU_COUNT" >> system_data.txt
fi

echo "" >> system_data.txt

# Get the gpus's info I am interested in
nvidia-smi --query-gpu=$NVIDIA_SMI_QUERY_ARGUMENTS --format=csv -f nvidia_smi_values.csv

# I organize some things my way. Just comment out the call to the function and/or
# delete the whole function if you don't like it and you will get the standar output from nvidia-smi
my_custom_mods # Comment out this line if you don't want my custom mods

# Insert the Title for nvidia-smi report
sed -i "1s/^/** Nvidia-smi Information **\n/" nvidia_smi_values.csv

# Peek up the claymore statics if configured so
claymore_statics

# Put the System info+nvidia-smi+mining info together
if [[ "$USE_CLAYMORE_STATICS" == "YES" && "$CLAYMORE_IS_RUNNING" == "YES" ]]; then
    cat system_data.txt nvidia_smi_values.csv claymore_statics.txt > report.txt
else
    cat system_data.txt nvidia_smi_values.csv > report.txt
fi

CONTENT=$(cat report.txt)

MSG="$CONTENT"


curl -s -X POST --output /dev/null https://api.telegram.org/bot${APIKEY}/sendMessage -d "text=${MSG}" -d chat_id=${CHATID}
CODE_CURL=$?

# Check if the mgs went out ok
if [[ $CODE_CURL -eq 0 ]]; then
    echo "Msg send ok!!"
else
    echo "Got a non zero exit code from curl : $CODE_CURL . The message has probably not reached its destination"
fi

salida # exit
 
Bibi187
Full Member
***
Offline Offline

Activity: 420
Merit: 106


https://steemit.com/@bibi187


View Profile WWW
September 02, 2017, 02:16:55 AM
 #3148

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.

In windows is impossible cause your GPU number change after each reboot, in linux is another hand.
GPU number is linked from hardware so a basic GPU0 is your primary x16, GPU1 is the slot on top on x16 is u have one, and for all other u just follow build sequence.
M2 slot will always be last GPU number from top to down like pci port.

Thanks so much. Not 100% sure I follow; based on what you said, would it be like what I am showing in blue, red, or some other pattern I am not thinking of?



For me it would be blue path Wink

DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
VoskCoin
Sr. Member
****
Offline Offline

Activity: 1414
Merit: 487


YouTube.com/VoskCoin


View Profile WWW
September 02, 2017, 02:31:55 AM
 #3149

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.

In windows is impossible cause your GPU number change after each reboot, in linux is another hand.
GPU number is linked from hardware so a basic GPU0 is your primary x16, GPU1 is the slot on top on x16 is u have one, and for all other u just follow build sequence.
M2 slot will always be last GPU number from top to down like pci port.

Thanks so much. Not 100% sure I follow; based on what you said, would it be like what I am showing in blue, red, or some other pattern I am not thinking of?



For me it would be blue path Wink
What's the max gpu nvOC can support ?

Check out my Crypto YouTube channel
https://www.youtube.com/VoskCoin
If you enjoy my content click Subscribe
Bibi187
Full Member
***
Offline Offline

Activity: 420
Merit: 106


https://steemit.com/@bibi187


View Profile WWW
September 02, 2017, 02:51:54 AM
Last edit: September 02, 2017, 03:16:03 AM by Bibi187
 #3150

For those using the ASRock H110 BTC+, is there an easy way I am missing to know which slot is assigned to which GPU#? I know the PCI-E 16x slot is GPU 0, but what is the naming convention for the others?
run
Code:
nvidia-smi
in guake terminal it will give you Bus-Id


Code:
lshw
will give you more details too

Thank you so much. I am not sure these commands quite get me what I am looking for, though I may be missing something.

In my setups I have 13 GTX 1060 GB cards. I am hoping for some way to figure out which one is 0, which is 1, 2, 3, etc. Not sure if those reports show any type of serial number that ties out to something on the card or otherwise, or if the physical slots always assign in a certain way when all full? Still realizing that 0 is the 16x slot, I am ultimately hoping to "catalog" my cards to keep track of how each overclocks.

In windows is impossible cause your GPU number change after each reboot, in linux is another hand.
GPU number is linked from hardware so a basic GPU0 is your primary x16, GPU1 is the slot on top on x16 is u have one, and for all other u just follow build sequence.
M2 slot will always be last GPU number from top to down like pci port.

Thanks so much. Not 100% sure I follow; based on what you said, would it be like what I am showing in blue, red, or some other pattern I am not thinking of?



For me it would be blue path Wink
What's the max gpu nvOC can support ?

I am not sure but actually 13 gpu, if u know a little about linux u prolly can edit 3main to handle more them 13 GPU.
Linux dont have about GPU limit like windows have.

DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
salfter
Hero Member
*****
Offline Offline

Activity: 651
Merit: 501


My PGP Key: 92C7689C


View Profile WWW
September 02, 2017, 04:32:29 AM
 #3151

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

Yes...it's called a cron job. 
Code:
man 5 crontab
for more details. 

That said, periodic reboots shouldn't be necessary if your hardware is up to snuff.  I had instability problems early on that I tried to work around in software.  They were caused by feeding a GPU through a Molex-connector cable from the power supply with too-thin wiring (probably only intended to power fans in this era of SATA storage), which led to the 12V rail dropping to 11.3V; GPUs were falling off the bus.  Moving that GPU to beefier cabling fixed that problem.

Tipjars: BTC 1TipsGocnz2N5qgAm9f7JLrsMqkb3oXe2 LTC LTipsVC7XaFy9M6Zaf1aGGe8w8xVUeWFvR | My Bitcoin Note Generator | Pool Auto-Switchers: zpool MiningPoolHub NiceHash
Bitgem Resources: Pool Explorer Paper Wallet
Dhodge87
Newbie
*
Offline Offline

Activity: 57
Merit: 0


View Profile
September 02, 2017, 05:37:57 AM
 #3152

So I can't get the terminal to mine.
It just keeps running in a loop loading the power settings and detecting the GPU's, where as in v18 it'd load the cuss cores it just restarts the initial detection phase over and over.

https://i.imgur.com/MaQzpZH.jpg
papampi
Full Member
***
Offline Offline

Activity: 686
Merit: 140


Linux FOREVER! Resistance is futile!!!


View Profile WWW
September 02, 2017, 05:57:13 AM
Last edit: February 04, 2018, 10:16:15 AM by papampi
 #3153

How to setup telegram for nvoc0019

First of all install Telegram, you can have it on almost all operating systems: Windows, Mac, Linux, Android, iOS, ...
Open your telegram and send /newbot to @BotFather
To send message to @botfather, click the search (magnifying glass) and search for @botfather, when found click start and send message /newbot
It will ask for name, send your desired bot name EX.  Mining Rigs Info
Then it ask for a username for your bot , send your desired unique username EX. papampi_mining_nvoc0019
it will give you an HTTP API token EX.     HTTP API: 408504581:AAHen-E4peZrlVhJx-GlnADyiVDgGiR4O8g
Put it in your 1bash  like this :
Code:
TELEGRAM_APIKEY="408504581:AAHen-E4peZrlVhJx-xxxxxxxxxxxxxxxxxxxx"
Now send /getid to @myidbot same search process for @botfather
Click start, then send /getid
It will give you a 8 digit number put it in 1bash :
Code:
 TELEGRAM_CHATID="9799345"
Click the Start in your new bot
Thats it.
You will get some info every 30 min. and alerts from watchdog
You can edit your telegram file and get more info
I will send my edited telegram for more info later today.

papampi
Full Member
***
Offline Offline

Activity: 686
Merit: 140


Linux FOREVER! Resistance is futile!!!


View Profile WWW
September 02, 2017, 06:11:20 AM
Last edit: September 02, 2017, 06:52:27 AM by papampi
 #3154

Telegram with some detailed info for ewbf

First you need to edit 3main to enable ewbf log, find the ewbf line and make it like this:

Code:
screen -dmS miner $HCD --eexit 3 --fee $EWBF_PERCENT --pec --server $ZEC_POOL --user $ZECADDR --pass z --port $ZEC_PORT  --log 2 --logfile ewbf.log;
Also its better to add ewbf.log to clear_logs file so it get cleared on every boot and dont give you old info on boot time.
Here is what I'm using for my telegram,
Code:
#!/bin/bash
# Telegram Info Script
# By BaliMiner et al...
# for nvOC by fullzero
# ref: http://bernaerts.dyndns.org/linux/75-debian/351-debian-send-telegram-notification
#

source ~/1bash

CHATID=$TELEGRAM_CHATID
APIKEY=$TELEGRAM_APIKEY
HASH_RATE=$(tail -n 30 ewbf.log |grep GPU0:| tail -n 1)
TOTAL_HASH_RATE=$(tail -n 30 ewbf.log |grep Total| tail -n 1)
SYSTEM_BOOT_TIME=$(uptime -s)
SYSTEM_UP_TIME=$(uptime -p)
GPU_COUNT=$(nvidia-smi -L | tail -n 1| cut -c 5 |awk '{ SUM += $1+1} ; { print SUM }')
MINER_UP_TIME=$(ps -p `pgrep miner` -o etime | grep -v ELAPSED)
GPU_UTILIZATIONS=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits)
TEMP=$(/usr/bin/nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader)
PD=$(/usr/bin/nvidia-smi --query-gpu=power.draw --format=csv,noheader)
FAN=$(/usr/bin/nvidia-smi --query-gpu=fan.speed --format=csv,noheader)
LF=$'\n'
MSG=" Worker: $WORKERNAME
System Boot Time: $SYSTEM_BOOT_TIME
System Up Time: $SYSTEM_UP_TIME
Miner Uptime: $MINER_UP_TIME
GPU Count: $GPU_COUNT
$TOTAL_HASH_RATE
$LF Hash Rate:
$HASH_RATE
$LF GPU Utilizations:
$GPU_UTILIZATIONS
$LF GPU Temps:
$TEMP
$LF GPU Fan Speeds:
$FAN
$LF Power Draws:
$PD"

/usr/bin/curl -s -X POST --output /dev/null https://api.telegram.org/bot${APIKEY}/sendMessage -d "text=${MSG}" -d chat_id=${CHATID}

You can test your telegram by runnung telegram command in guake or from ssh, no need to wait for it
Code:
./telegram


Edit it to your liking and share with us.


papampi
Full Member
***
Offline Offline

Activity: 686
Merit: 140


Linux FOREVER! Resistance is futile!!!


View Profile WWW
September 02, 2017, 06:34:53 AM
Last edit: September 02, 2017, 06:49:11 AM by papampi
 #3155

Hi fullzero
As I said before I have a weird problem with one of my rigs that some times it does not recognize a gpu at boot time and needs a reboot.
So is it possible to add some thing like this


Code:
#Check if the installed GPU numbers is the same as recognized GPU, 
#Dont enable this at first boot so you can check if every thing is ok and dont get reboot loops.
CHECK_GPU_NUMBERS="NO" # YES,NO
#
INSTALLED_GPU_NUMBERS=6

And in 3main check for the number and reboot if not the same ?

EDIT:

Dont add this, its a bad idea
It could cause a reboot loop if there is a problematic GPU

dbolivar
Member
**
Offline Offline

Activity: 119
Merit: 10


View Profile
September 02, 2017, 06:49:22 AM
 #3156

Hi Fullzero thanks for your effort - i am looking to load up v0019 soon on my 13x board.

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

You dont need reboot like windows but there is an option in 1bash
I have ubuntu servers running for over 3 months without restart

Code:
AUTO_REBOOT="NO"
 
    REBOOT_TIMEOUT_IN_MINUTES=1440  # once every 24 hours

change it to what you like

Should these rigs be rebooted ? Is that recommended or a waste of time basically

Linux dont need reboot, since i dont have issue for memory lost.
U can run your rig 24/24 7/7 365/365 with no problems at all.
We have two servers at my work running for 3 years and half without a simple reboot, actually we are afraid of doing a reboot Cheesy

The problem with never rebooting a Linux server has more to do with security, than with a technical need. There are many updates that require a reboot, the most obvious one being the Linux kernel itself (unless you use something like kexec or hot patching solutions, but even in these cases sometimes you need to reboot). Another case is when you update a service: you need to at least restart that service. Shared libraries updates is another critical situation: you need to reload *every* service that use these libraries, so they use the new versions.

I've been working with Linux for more than 15 years, and in some companies I've had to "struggle" with some people that kept saying "c'mon, Linux never needs a reboot!". Usually I just ran a vulnerability scanner on these servers and showed them the results. Smiley

Now for nvOC in particular, I'd say you don't need to schedule an automatic reboot through 1bash, but keep in mind the security updates: Ubuntu will usually tell you after applying some security updates when it needs a reboot.
papampi
Full Member
***
Offline Offline

Activity: 686
Merit: 140


Linux FOREVER! Resistance is futile!!!


View Profile WWW
September 02, 2017, 06:55:07 AM
 #3157

Hi Fullzero thanks for your effort - i am looking to load up v0019 soon on my 13x board.

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

You dont need reboot like windows but there is an option in 1bash
I have ubuntu servers running for over 3 months without restart

Code:
AUTO_REBOOT="NO"
 
    REBOOT_TIMEOUT_IN_MINUTES=1440  # once every 24 hours

change it to what you like

Should these rigs be rebooted ? Is that recommended or a waste of time basically

Linux dont need reboot, since i dont have issue for memory lost.
U can run your rig 24/24 7/7 365/365 with no problems at all.
We have two servers at my work running for 3 years and half without a simple reboot, actually we are afraid of doing a reboot Cheesy

The problem with never rebooting a Linux server has more to do with security, than with a technical need. There are many updates that require a reboot, the most obvious one being the Linux kernel itself (unless you use something like kexec or hot patching solutions, but even in these cases sometimes you need to reboot). Another case is when you update a service: you need to at least restart that service. Shared libraries updates is another critical situation: you need to reload *every* service that use these libraries, so they use the new versions.

I've been working with Linux for more than 15 years, and in some companies I've had to "struggle" with some people that kept saying "c'mon, Linux never needs a reboot!". Usually I just ran a vulnerability scanner on these servers and showed them the results. Smiley

Now for nvOC in particular, I'd say you don't need to schedule an automatic reboot through 1bash, but keep in mind the security updates: Ubuntu will usually tell you after applying some security updates when it needs a reboot.
Hands up.
Totally agree with you.

Bibi187
Full Member
***
Offline Offline

Activity: 420
Merit: 106


https://steemit.com/@bibi187


View Profile WWW
September 02, 2017, 07:09:19 AM
 #3158

Hi Fullzero thanks for your effort - i am looking to load up v0019 soon on my 13x board.

question for you - is there a way i can create a scheduled system restart ever 48 hours in ubuntu?

You dont need reboot like windows but there is an option in 1bash
I have ubuntu servers running for over 3 months without restart

Code:
AUTO_REBOOT="NO"
 
    REBOOT_TIMEOUT_IN_MINUTES=1440  # once every 24 hours

change it to what you like

Should these rigs be rebooted ? Is that recommended or a waste of time basically

Linux dont need reboot, since i dont have issue for memory lost.
U can run your rig 24/24 7/7 365/365 with no problems at all.
We have two servers at my work running for 3 years and half without a simple reboot, actually we are afraid of doing a reboot Cheesy

The problem with never rebooting a Linux server has more to do with security, than with a technical need. There are many updates that require a reboot, the most obvious one being the Linux kernel itself (unless you use something like kexec or hot patching solutions, but even in these cases sometimes you need to reboot). Another case is when you update a service: you need to at least restart that service. Shared libraries updates is another critical situation: you need to reload *every* service that use these libraries, so they use the new versions.

I've been working with Linux for more than 15 years, and in some companies I've had to "struggle" with some people that kept saying "c'mon, Linux never needs a reboot!". Usually I just ran a vulnerability scanner on these servers and showed them the results. Smiley

Now for nvOC in particular, I'd say you don't need to schedule an automatic reboot through 1bash, but keep in mind the security updates: Ubuntu will usually tell you after applying some security updates when it needs a reboot.
Hands up.
Totally agree with you.

Dont reboot not means, dont update ...
And if u use server in private network, where is the problem anyways ?

DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
papampi
Full Member
***
Offline Offline

Activity: 686
Merit: 140


Linux FOREVER! Resistance is futile!!!


View Profile WWW
September 02, 2017, 07:52:48 AM
 #3159

Easy solution with telegram notification if reboot needed for update:
Make a file to check if reboot is required:
nano reboot-required
Code:
#!/bin/bash
if [ -f /var/run/reboot-required ]; then
  echo 'yes'
else
echo 'No'
fi
Code:
chmod +x reboot-required

Add to your telegram file
Code:
REBOOT_REQUIRED=$(/home/m1/reboot-required)

and add to the MSG part of telegram :
Code:
Reboot Required: $REBOOT_REQUIRED


I'm Loving the Telegram Notification ... Wink

damNmad
Full Member
***
Offline Offline

Activity: 378
Merit: 104


nvOC forever


View Profile
September 02, 2017, 08:48:39 AM
 #3160

So Claymore v10 just dropped

https://github.com/nicehash/NiceHashMinerLegacy/issues/255

What's the best way to upgrade claymore in NVOC v0019?

Download the Linux version on rig from this link :

https://drive.google.com/drive/folders/0B69wv2iqszefdFZUV2toUG5HdlU

extract it (right click extract here)

Go to /home/m1/eth (can do it using GUI)

rename the 9_8 to 9_8_xx

copy the latest claymore folder from downloads and paste it in the above eth folder and rename it to 9_8.

It should work normally (this is the easiest work around, you don't need to edit any 1bash or 3main).

I've seen a little increase in dual mining lbc hashrates.


DeepOnion    ▬▬  Anonymous and Untraceable  ▬▬    ENJOY YOUR PRIVACY  •  JOIN DEEPONION
▐▐▐▐▐▐▐▐   ANN  Whitepaper  Facebook  Twitter  Telegram  Discord    ▌▌▌▌▌▌▌▌
Get $ONION  (✔Cryptopia  ✔KuCoin)  |  VoteCentral  Register NOW!  |  Download DeepOnion
Pages: « 1 ... 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 [158] 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 ... 416 »
  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!