Allgemeiner Plauderchat über das Thema DC Part II

Status
Für weitere Antworten geschlossen.
Es geschehen noch Zeichen und Wunder:
Ich habe 2 (in Worten: zwei) WUs HSTB erhalten. Aber immer nur eine auf einem PC, damit es nicht so auffällt.
Die schleusen die WUs so unheimlich heimlich durch.
 
Bis vor ein paar Wochen hatte ich auf einem Rechner fast Täglich HSTB bekommen, und als ich etwas mehr als 2 Jahre voll hatte war auf einmal schluss,
am Wochenende habe ich es mal mit einem zweiten Rechner zusätzlich probiert und bekam 5 stück, nachdem ich Gestern Abend noch ordendlich
MCM eingesammelt hatte habe ich es Heute Morgen mal mit 3 Rechner probiert und hatte Heute Nachmittag zusammen ca. 55 stück.

--- Update ---

MCM wurde bis April verlängert, das Projekt steht noch bei 97 Prozent.
 
Zuletzt bearbeitet:
Grrrr da will ich grade schwenken und TN hat keine WUs. >:|

gene_work_generator gene Deaktiviert
 
RYZEN NEWS
Der Abschied von Bulldozer, der zwar in Ansätzen ein interessantes Konzept hatte, in der Summe aber nicht überzeugen konnte, war in Anbetracht der heute gezeigten Leistung kein Fehler. Die SMT-Umsetzung gefällt uns sehr gut. Doch am Ende ist da wieder dieser Haken: Nicht ganz ausgereiftes BIOS und ein viel zu kurzer Testzeitraum. Über ersteres werden wir euch auf jeden Fall auf dem Laufenden halten und zu letzterem können wir nur sagen: Wir haben in der kurzen Zeit, die wir das Sample haben, eine Vielzahl von Messwerten aufgenommen, die wir noch nicht alle aufarbeiten konnten. Einige Detailbetrachtungen sind auch noch nicht abgeschlossen, und für die DCler unter euch: Einen BOINC-Test wird es auch noch geben!

DA freu ich Mich Drauf !!
 
Ich hab immer noch keine Ryzen bei typ. Boinc Projekten entdeckt (per google). Das gibt's doch gar nicht!?
Selbst Kabini war Wochen zuvor bereits auf diese Weise bekannt.
 
Na Jungs? Wer von euch rechnet hier heimlich vLHC@home für mich? :o ??? *suspect*

Ich habe definitiv noch nie vLHC gerechnet, weil ich immer zu faul war, dafür extra eine VM einzurichten....
und trotzdem habe ich plötzlich Credits dafür?

Anhang anzeigen 35370
 
Hier! Ich! *em_wink* Nee, bei mir siehts auch völlig Irre aus. Da scheint es irgendein Datenbankproblem zu geben!?
 
Gibt es schon RyZen-Ergebnisse in irgendeinem Projekt? Die ersten WUs müssten doch so langsam durch sein.
 
Hier! Ich! *em_wink* Nee, bei mir siehts auch völlig Irre aus. Da scheint es irgendein Datenbankproblem zu geben!?
Nö. Das wurde vorher angekündigt und steht auch so in den Projektnews. vLHC und LHC@home wurden zusammen gelegt. Das betrifft auch ATLAS, so dass alles, was zum CERN gehört, auf einem Server liegt.
 
Uuups. Wer lesen kann (und es auch tut) ist mal wieder klar im Vorteil.

Hoffentlich ist jetzt nicht alles mit VM verbunden und nur so zu rechnen. :-/
Ich gehe denn mal lesen...

--- Update ---

Hm, sind das dann meine transferierten Credits von sixtrack?
Vom Wert her käme das hin...

--- Update ---

O.K., ist eh so wenig, dass ich darüber nicht sinnieren muss.

Die schwarzen Löcher sind für mich nicht so interessant. Das wäre noch anders, wenn man eins finden und das dann behalten dürfte.
Sieht bestimmt schick aus im Bücherregal.
 
Das wird sich noch ändern. Die Anzeige ging ja immer weiter zurück.

Okt , Aug , Jun und jetzt Mai. April kommt bestimmt auch noch.
Wenn das schon alles wäre ,dann brauchen Die auch nicht mehr die Android Version fixen.
Und da isser auch schon, der April. Aber bisher sind ja "nur" 41% geschafft in bestenfalls der Hälfte der Zeit.
Grün schaff ich ja noch, aber mit Blau sieht es schlecht aus. Da müsste ich mir den Ryzen sofort kaufen und eine Weile durchlaufen lassen.
Wenns wärmer wird, könnte ich die GPU abschalten, dann wären es noch 2 Kerne mehr.

Auf Android kommen wenn überhaupt, immer nur Betas. Proben die etwa schon für Phase2 ? Denn für die kurze Zeit noch an einer Android-App herumzubasteln, wäre sonst leichte Ressourcenverschwendung.
 
Zuletzt bearbeitet:
Bei 41 % gehe ich auch davon aus das sich am April als Projektende noch was ändert, MCM wurde ja auch auf April geändert wenigstens habe ich hier letzte
Nacht die 50 Jahre geschafft, Gestern habe ich von HSTB wieder 50 Wus Bekommen.
 
04.03.2017 10:55:53 | Asteroids@home | [error] Error reported by file upload server: Server is out of disk space

Whut?
 
Ich kann aktuell bei Asteroids auch nix hoch- oder runterladen.

Gruß,
Ritschie
 
Deswegen hat TN-Grid auch vorerst die Arbeit eingestellt, denen geht auch der Speicherplatz aus, die Ergebnisse sind zu groß. :(
 
Ich hab meine Clienten für Goofyxgrid mal auf 4 x 200 erweitert. Ohne ein Erstellungs- und Steuerungsskript wäre das aber nicht so möglich gewesen.
Nun sind's an die 800k/d, doch erzeugt das keine erhöhte Speicher- oder CPU-Belegung.
 
Wie machst du das, parallele BOINC Instanzen?
 
Ich lege unter /var/opt/ durchnummerierte Boincverzeichnisse an. Der originale Klient und diese müssen nat. mit "--allow_multiple_clients" gestartet werden (/etc/default/boinc-client ändern). Ich hab das ganz bequem unter Debian gemacht.
Also ich nutze unter /etc/init.d/boinc-clientNUMMER modifizierte Initskripte (für jeden Klient eines) und kann die dann mit einer hochzählenden Schleife in separaten start,- stop- und vllt. Reload-Skripten kontrollieren. Denn bei 200 pro Rechner (gingen freilich fast beliebig noch mehr) geht's nicht anders.

Im Detail:
Also ich lege die Musterdateien /etc/init.d/boinc-client2, /etc/default/boinc-client2 (da braucht's nur die; ist im Grunde nur #BOINC_DIR="/var/lib/boinc-client auskommentiert) und /var/opt/boinc2 (mit Symlinks der Konfig. Dateien aus /etc/boinc-client/) an und kann dann mit dem create-client Skript die eingestellte Anzahl Klients erstellen.
Danach muss man neu starten, damit systemd die Initsripte irgendwie magisch aktivieren kann und dann mit dem Startsrkipt alle starten. Die goofyxgrid Konten erstellen sich automatisch und wenn nötig, kann man jeden Klienten mit der Host IP/Namen + Port ab 10002 (Nummer entspricht dann dem Boincclient) (z.B. 10200 für Klient #200) zugreifen.

Geht vllt. auch eleganter, aber es funktioniert.

create-client.sh
Code:
#!/bin/sh

BASEDIR=/var/opt
BOINCMIN=2
BOINCMAX=200
BOINC="boinc${BOINCMIN}"
COUNT=$BOINCMIN

cd $BASEDIR

while [ $COUNT -lt $(($BOINCMAX+1)) ]
do

BOINC="boinc${COUNT}"

#1 Boincverz. anlegen
#2 Verz. u Dateien kopieren
#3 Projekt Account anlegen
#4 chown boinc
#5 Initskript modifizieren, erstellen

if [ ! -d "${BOINC}"  ]
then

#1
cd $BASEDIR
mkdir $BOINC
cd $BOINC

#2
mkdir locale notices projects slots

cp -a ../boinc2/ca-bundle.crt .
cp -a ../boinc2/remote_hosts.cfg .
cp -a ../boinc2/cc_config.xml .
cp -a ../boinc2/gui_rpc_auth.cfg .

#3
echo "<account> 
    <master_url>http://goofyxgridathome.net/</master_url>
    <authenticator>SCHLÜSSEL</authenticator>
</account>" >account_goofyxgridathome.net.xml

cd $BASEDIR

#4
chown -R boinc.boinc $BOINC

#5
CLIENTNR="CLIENTNR=${COUNT}"
sed -e "s/^CLIENTNR=2/CLIENTNR=${COUNT}/" >/etc/init.d/boinc-client${COUNT}  </etc/init.d/boinc-client2

chmod 755 /etc/init.d/boinc-client${COUNT}


echo "${BOINC} wurde angelegt"

else

echo "${BOINC} existiert bereits!"

fi

COUNT=$(($COUNT+1))
done

/etc/init.d/boinc-client2
Code:
#! /bin/sh
### BEGIN INIT INFO
# Provides:          boinc boinc-client
# Required-Start:    $local_fs $remote_fs
# Required-Stop:     $local_fs $remote_fs
# Should-Start:      x11-common network-manager x-display-manager gdm kdm xdm wdm ldm sdm nodm dbus lightdm
# Should-Stop:       x11-common
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6

# Short-Description: BOINC core client
# Description:       core client for the BOINC distributed computing
#                    infrastructure
### END INIT INFO

# Debian init.d script for the BOINC core client
# Copyright © 2005, 2006, 2007, 2008
# Debian BOINC Maintainers <pkg-boinc-devel@lists.alioth.debian.org>
#
# This file is licensed under the terms of the GNU General Public License,
# Version 2 or any later version published by the Free Software Foundation.

set -e
. /lib/lsb/init-functions

# Default values for the variables that are also set in the defaults file.
ENABLED=0
SCHEDULE=0
CLIENTNR=2
BASEPORT=10000
HOSTNAME=server3_${CLIENTNR}
BOINC_USER=boinc
BOINC_DIR=/var/opt/boinc${CLIENTNR}
BOINC_CLIENT=/usr/bin/boinc
BOINC_OOM_ADJ=15

# nice levels
BOINC_NICE_CLIENT=10   
BOINC_NICE_APP_DEFAULT=19    # minimal
#BOINC_NICE_APP_GPU=5        # less than regular, not yet used

# ionice classes
BOINC_IONICE_CLIENT=3        # idle
#BOINC_IONICE_APP_DEFAULT=3  # idle, not yet used
#BOINC_IONICE_APP_GPU=2      # best effort, not yet used


# Source defaults file. Edit that file to configure this script.
if [ -e /etc/default/boinc-client2 ]; then
  . /etc/default/boinc-client2
fi

# Quit quietly, if $ENABLED is 0.
test "$ENABLED" != "0" || exit 0

if [ "$BOINC_CLIENT" = "/usr/bin/boinc" ]; then
  test -x "$BOINC_CLIENT" || exit 0
elif [ ! -x "$BOINC_CLIENT" ]; then
  log_failure_msg "BOINC client '$BOINC_CLIENT' does not exist or is not" \
    "executable."
  exit 5
fi

if [ ! -d "$BOINC_DIR" ]; then
  log_failure_msg "BOINC data directory '$BOINC_DIR' does not exist."
  exit 6
fi

if [ -z "$BOINC_USER" ]; then
  log_failure_msg "BOINC_USER variable is empty. Set it to a user to run" \
    "the BOINC core client."
  exit 6
fi

if [ ! -z "$BOINC_OPTS" ]; then
        (echo $BOINC_OPTS | grep -- '--daemon' 1>/dev/null) &&
                log_warning_msg "\`--daemon' option detected \
                        on /etc/default/boinc-client, this \
                        can cause problems on boinc. The option \
                        will be suppressed"
                BOINC_OPTS=`echo "$BOINC_OPTS" | sed 's/--daemon//g'`
fi

PIDFILE=/var/run/boinc${CLIENTNR}.pid
DESC="BOINC core client ${CLIENTNR}"
NAME="boinc${CLIENTNR}"
BOINC_OPTS="--check_all_logins --redirectio --gui_rpc_port $(expr ${BASEPORT} + ${CLIENTNR}) --dir $BOINC_DIR $BOINC_OPTS"

is_running()
{
  retval=1
  if [ -r $PIDFILE ]; then
    pid=`cat $PIDFILE` 
    if [ -e /proc/$pid ]; then
      procname=`/bin/ps h -p $pid`
      [ -n "$procname" ] && retval=0
    fi
  fi
  return $retval
}

start()
{
  log_begin_msg "Starting $DESC: $NAME"
  if is_running; then  
    log_progress_msg "already running"
  else
    if [ -n "$DISPLAY" -a -x /usr/bin/xhost ]; then
       # grant the boinc client to perform GPU computing
       xhost local:boinc || echo -n "xhost error ignored, GPU computing may not be possible"
    fi
    if [ -n "$VALGRIND_OPTIONS" ]; then
      start-stop-daemon --start --quiet --background --pidfile $PIDFILE \
         --make-pidfile --user $BOINC_USER --chuid $BOINC_USER \
         --chdir $BOINC_DIR --exec /usr/bin/valgrind -- $VALGRIND_OPTIONS $BOINC_CLIENT $BOINC_OPTS
    else
      start-stop-daemon --start --quiet --background --pidfile $PIDFILE \
         --make-pidfile --user $BOINC_USER --chuid $BOINC_USER \
         --chdir $BOINC_DIR --exec $BOINC_CLIENT -- $BOINC_OPTS
    fi
  fi
  log_end_msg 0

  if [ "$SCHEDULE" = "1" ]; then
    schedule
  fi
}

stop()
{
  log_begin_msg "Stopping $DESC: $NAME"
  if ! is_running; then
    log_progress_msg "not running"
  else
    start-stop-daemon --stop --quiet --oknodo --pidfile $PIDFILE \
      --user $BOINC_USER --exec $BOINC_CLIENT

                # Wait until really stopped - $pid is set from is_running
                # (waiting for max 60s (600 cycles at 100ms))
                i=0
                while kill -0 "$pid" 2> /dev/null;  do
                        if [ $i = '600' ]; then
                                break;
                        else
                                if [ $i = '0' ]; then
                                        echo -n " ... waiting "
                                elif [ $(($i%10)) = 0 ]; then
                                        echo -n "."
                                fi
                                i=$(($i+1))
                                sleep .1
                        fi
                done   
  fi

  rm -f "$BOINC_DIR/lockfile"
  rm -f $PIDFILE
  log_end_msg 0
}

chrt_many()
{
   POLICY="$1"
   PRIO="$2"
   NICE="$3"
   shift 3
   for i in "$@"; do   
     chrt -p $POLICY $PRIO $i || return
     # increasing compatibility with older versions of renice
     # in reaction to bug report #600134
     renice $NICE -p $i > /dev/null || renice -n $NICE -p $i
   done
}

schedule()
{
  log_begin_msg "Setting up scheduling for $DESC and children:"
  if ! is_running; then
    log_progress_msg "$NAME not running"
  else
    if [ ! -x "`which ionice 2>/dev/null`" ]; then
      log_progress_msg "ionice not found,"
    else
      if ionice -c $BOINC_IONICE_CLIENT -p $pid 2>/dev/null; then
        log_progress_msg "idle,"
      else
        log_progress_msg "ionice failed,"
      fi
    fi

    children=`ps --ppid $pid -o pid= | tr '\n' ' '`

    if [ ! -x "`which chrt 2>/dev/null`" ]; then
      log_progress_msg "chrt not found"
    else
      # BOINC client needs higher priority than scientific apps
      renice $BOINC_NICE_CLIENT -p $pid > /dev/null || renice -n $BOINC_NICE_CLIENT -p $pid
      # Apps receive minimal priority
      if [ -n "$children" ]; then
        (chrt_many --idle 0 $BOINC_NICE_APP_DEFAULT $children >/dev/null \
          && log_progress_msg "idleprio") || \
        (chrt_many --batch 0 $BOINC_NICE_APP_DEFAULT $children >/dev/null \
          && log_progress_msg "batch") || \
        (chrt_many --other 0 $BOINC_NICE_APP_DEFAULT $children >/dev/null \
          && log_progress_msg "normal") || \
        log_progress_msg "chrt failed"
      fi
    fi
    for BPID in ${pid} ${children}; do
      if [ -w /proc/${BPID}/oom_adj ]; then
        echo ${BOINC_OOM_AD} > /proc/${BPID}/oom_adj 2>/dev/null || true
      else
        echo "Could not write to /proc/${BPID}/oom_adj"
      fi
    done
  fi
  log_end_msg 0
}

status()
{
  STATUS="Status of $DESC:"
  if is_running; then  
    log_success_msg "$STATUS running"
    children=`ps --ppid $pid -o pid= | tr '\n' ' '`
    if [ -x "`which chrt 2>/dev/null`" ]; then
      log_success_msg "Scheduling of $DESC: $pid"
      chrt -p $pid

      if [ -n "$children" ]; then
        log_success_msg "Scheduling of $DESC's children: $children"
        for i in $children; do
          chrt -p $i   
        done
      fi
    fi
    log_success_msg "OOM killer status for $DESC:"
    for BPID in ${pid} ${children}; do
      echo -n "PID ${BPID}: "
      if [ ! -d "/proc/${BPID}" ]; then
        echo "/proc/${BPID} not found"
        continue
      fi

      echo -n "adj "   
      if [  -r "/proc/${BPID}/oom_adj" ]; then
        cat /proc/${BPID}/oom_adj
      else
        echo "?"
      fi
      echo ", score "  

      if [  -r "/proc/${BPID}/oom_adj" ]; then
        cat /proc/${BPID}/oom_score
      else
        echo -n "?"
      fi

      echo
    done

    # Display $BOINC_USER's cpu_share:
    uid=`id -u $BOINC_USER`
    cpu_share_file="/sys/kernel/uids/$uid/cpu_share"
    if [ -f "$cpu_share_file" ]; then
      log_success_msg "cpu_share: `cat "$cpu_share_file"`"
    fi
  else
    log_success_msg "$STATUS stopped"
  fi
}

case "$1" in
  start)
    start
    ;;

  stop)
    stop
    ;;

  restart|force-reload)
    stop
    sleep 1
    start
    ;;

  status)
    status
    ;;

  schedule)
    schedule
    ;;

  *)
    log_success_msg "Usage: $0 {start|stop|restart|force-reload|status|schedule}" >&2
    exit 1
    ;;
esac

exit 0

boinc-start.sh, boinc-stop.sh usw.
Code:
#! /bin/sh
set -e

BOINCMAX=200
COUNT=2

while [ $COUNT -lt $(($BOINCMAX+1)) ]
do

service "boinc-client${COUNT}" start

echo "boinc # ${COUNT} gestartet"

COUNT=$(($COUNT+1))
done

--- Update ---

Achja, ein Nachteil an diesen Boinc Instanzen ist, dass bei denen WU-Prop nicht läuft! Das bricht mit seltsamen Berechnungsfehlern ab. Kommt wahrscheinlich mit dem aus dem Hauptklient nicht klar?.
Aber gerade für den Penta und riesige Nichtbunker Aktionen kann man ein oder gar zwei solcher Instanzen schon mal gebrauchen (da lohnt sich vllt. der Aufwand nicht).
 
Zuletzt bearbeitet:
Alles klar, danke! Ich hatte mir GoofyxGrid vor einiger Zeit mal angeschaut und mich gefragt, warum brennt man das Problem nicht fix bei 100% Load ab, anstatt da ein NCI Projekt draus zu machen? Bin ich nicht durchgestiegen...
Du könntest wiederum selbst ein BOINC Projekt aufmachen, dass VMs oder Docker Container mit 200 BOINC Instanzen GoofyxGrid ausliefert und auf deinen Account rechnet. Sehr gute Credits und eine wohlklingende Beschreibung, los gehts, die User kommen von selbst, ich bin dabei :-D
 
Alles klar, danke! Ich hatte mir GoofyxGrid vor einiger Zeit mal angeschaut und mich gefragt, warum brennt man das Problem nicht fix bei 100% Load ab, anstatt da ein NCI Projekt draus zu machen? Bin ich nicht durchgestiegen...
Das hab ich ebenfalls nachwievor nicht verstanden. Nebenbei, die planen so was bereits.
Aber umso besser, wenn es noch paar NCI Apps gibt.
In WUProp hab ich sie bald alle 4 Violett.
 
Seti-Challenge:

Also, da geht das rauf und runter, da kann einem schwindelig werden: in nur 1,5h .... Plätze 877 - 923 - 860 - 817 - 762 - 820.....
Nun, irgendwann sollte sich das normalisieren. Es lebe der Mittelwert!

(Bin auch nur so halb dabei, 2x Intel-GPU und eine GTX750Ti)

--- Update ---

O.K. ??? :o 13:30 mal wieder auf P700. Statt kleiner werden die Sprünge immer größer. Seltsames Seti. Ob die Aliens das verursachen? *suspect*
Auch beim Lagerverwalter habe ich den Verdacht, er könnte ein Alien sein.
 
Zuletzt bearbeitet:
Da ich gleich heute früh meine aus Versehen kaputte Netzwerkverbindung repariert hatte, bin ich zum Glück gleich in den Top50 gestartet.
Aber seitdem geht es Schritt für Schritt in Richtung 3stellig. Viel kann man ja nicht mehr einlagern, ich warte sehnsüchtig auf die Möglichkeit, die GPU in eine virtuelle Maschine weiterzureichen.
 
Oha, bin auf P532 vorgerückt. Äh jo.
Nicht übel für das bischen Zeugs, was im einsetze.
Immerhin mehr als 3.000 Teilnehmer inzwischen.
 
Also ich habe nur eine einzige GPU im Einsatz. ;)
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten