CPU Verteilung Boinc

Probleme mit einem Clientprogramm? Oder einen Tipp dazu? Dann hier posten...
Nachricht
Autor
Benutzeravatar
Chris
Taschenrechner
Taschenrechner
Beiträge: 10
Registriert: 14.01.2012 10:41
Wohnort: Belgien

CPU Verteilung Boinc

#1 Ungelesener Beitrag von Chris » 06.02.2012 12:38

Moin,

kämpfe mal wieder mit Boinc im Moment... ( 7.0.8 )
Ich hatte Boinc immer mit lokalen Einstellungen laufen und hab die Verteilung der Projekte über das Ressourcengewicht geregelt.
Jetzt hab ich am WE mit POEM angefangen :x ....
Die openCL App von Poem will ja unbedingt einen ganzen CPU Kern dazu haben... da BOINC das aber für GPU apps nicht rafft habe ich in meinen CPU Projekten angegeben das BOINC nur max. 3 Kerne benutzen darf. Das funktioniert auch so weit... 3 Kerne werden von anderen Projekten genutzt und der 4. Kern wird von Poem genutzt. So weit so gut. Mein Problem ist jetzt aber: wenn ich mal Collatz oder MW Units mit der GPU mache liegt ein CPU Kern ungenutzt rum... ich müsste dann erst wieder in den Projekten 4 Kerne frei geben.
Hat einer ne Ahnung ob ich das einstellungsmässig irgendwie hin bekomme das Boinc den einen Kern an Poem zu weist wenn poem läuft ?

Ach ja und dann hätte ich auch noch gerne gewusst was es mit den "exklusiven" apps in Boinc 7 auf sich hat...
:D
Jo ansonsten hab ich im Moment keine Probleme....

Greetz
Bild561*2^1423021+1
Bild
Bild

Benutzeravatar
yoyo
Vereinsvorstand
Vereinsvorstand
Beiträge: 8048
Registriert: 17.12.2002 14:09
Wohnort: Berlin
Kontaktdaten:

Re: CPU Verteilung Boinc

#2 Ungelesener Beitrag von yoyo » 06.02.2012 13:45

Ich versteh nicht warum Du Dein Boinc auf 3 Kerne beschrängst. Lasse doch alles zu und es sollte funktionieren.
Bei einer GPU App kann das Projekt sagen wieviel CPU dafür benötigt wird. Das scheint bei POEM 1 CPU zu sein. Wenn Du in Boinc alle Kerne zuläßt sollte einer für die GPU App von POEM benutzt werden und die anderen 3 für andere CPU Projekte. Rechnest Du dagegen eine GPU App, die keine CPU benötigt, dann rechnen 4 Kerne für andere CPU Apps.

Kann allerdings sein, dass der 7.x Boinc Client da etwas falsch macht.
Auch weiß ich nicht was Du mit "exklusiver App" meinst? Ist das neu? Macht Poem sowas? Was ist das?

yoyo
HILF mit im Rechenkraft-WiKi, dies gibts zu tun.
Wiki - FAQ - Verein - Chat

Bild Bild

Benutzeravatar
Chris
Taschenrechner
Taschenrechner
Beiträge: 10
Registriert: 14.01.2012 10:41
Wohnort: Belgien

Re: CPU Verteilung Boinc

#3 Ungelesener Beitrag von Chris » 06.02.2012 14:49

Das Problem ist das wenn alle 4 Kerne frei gegeben sind auch 4 CPU Apps laufen. Poem läuft dann auch allerdings nur mit 0.1 CPU. Dann dauert die WU 60 Stunden anstatt 35 Minuten. Die Sache läuft nur gut wenn man einen Kern frei hält... scheinbar gibt Boinc keinen ganzen Kern frei für eine GPU app.

In Boinc 7 gibts ein neues Tabblatt "exklusive Anwendungen" scheinbar kann man da Regeln aufstellen... keine Ahnung, dachte das wüsste vielleicht jemand hier... :)

Übrigens Yoyo... ist Deine Mücke gedopt ? Ich klop da dauernd druff rum aber die läuft immer weiter... :P
Bild561*2^1423021+1
Bild
Bild

ChristianB
Admin
Admin
Beiträge: 1920
Registriert: 23.02.2010 22:12

Re: CPU Verteilung Boinc

#4 Ungelesener Beitrag von ChristianB » 06.02.2012 19:23

exklusive Anwendungen ist ein Feature was es jetzt auch schon gibt und bezeichnet Anwendungen die exklusiv den Rechner nutzen dürfen. Sprich BOINC hört auf zu rechnen wenn eine von denen läuft. Geeignet für Spiele oder andere Anwendungen denen man Priorität einräumen möchte.

Das mit der CPU für GPU ist irgendwie ein alter Bug der aber mittlerweile gelöst wurde. Jedoch muss dazu das Projekt den servercode aktualisieren und festlegen wieviel CPU-Zeit die GPU-App braucht dann bekommt Sie diese auch. Standardmäßig ist dies nur 0.1 CPU Anteil, kann aber meines Wissens vom Projekt hochgesetzt werden. Denn eigentlich will man ja mit der beschränkung auf 3 Kerne etwas anderes erreichen nämlich das einem nicht-BOINC Programm dieser Kern zur Verfügung steht. Das sich POEM jetzt diesen Kern krallt ist eigentlich ein NoGo von POEM da die App eigentlich die Einstellungen des Nutzers respektieren sollte.

Benutzeravatar
Michael H.W. Weber
Vereinsvorstand
Vereinsvorstand
Beiträge: 22435
Registriert: 07.01.2002 01:00
Wohnort: Marpurk
Kontaktdaten:

Re: CPU Verteilung Boinc

#5 Ungelesener Beitrag von Michael H.W. Weber » 07.02.2012 12:25

...also ab an die POEM-Entwickler mit diesen Infos. :wink:

Michael.

[edit]: Habe einen Link auf diesen Forenteil dort eben mal gepostet.
Fördern, kooperieren und konstruieren statt fordern, konkurrieren und konsumieren.

http://signature.statseb.fr I: Kaputte Seite A
http://signature.statseb.fr II: Kaputte Seite B

Bild Bild Bild

Roland Schneider
Vereinsvorstand
Vereinsvorstand
Beiträge: 919
Registriert: 12.11.2003 20:41
Wohnort: Stavenhagen
Kontaktdaten:

Re: CPU Verteilung Boinc

#6 Ungelesener Beitrag von Roland Schneider » 07.02.2012 15:46

ChristianB hat geschrieben:exklusive Anwendungen ist ein Feature was es jetzt auch schon gibt und bezeichnet Anwendungen die exklusiv den Rechner nutzen dürfen. Sprich BOINC hört auf zu rechnen wenn eine von denen läuft. Geeignet für Spiele oder andere Anwendungen denen man Priorität einräumen möchte.
Das gab es vorher auch schon, musste man allerdings direkt in die cc_config.xml eintragen. Seit Version 7 geht's auch über den Manager (wird auch Zeit). Zusätzlich gibt's noch exclusive GPU-Apps, da werden dann keine GPU WU's berechnet (interessant für Software-Videoplayer).

Benutzeravatar
Chris
Taschenrechner
Taschenrechner
Beiträge: 10
Registriert: 14.01.2012 10:41
Wohnort: Belgien

Re: CPU Verteilung Boinc

#7 Ungelesener Beitrag von Chris » 09.02.2012 10:19

Hmm, das mit den exklusiven Anwendungen.. naja das brauche ich wohl nicht... wenn ich den PC anderweitig nutze halte ich Boinc einfach an. Ich hätte mir eher gewünscht für die verschiedenen Projekte Regeln auf stellen zu können... wie z.B. Prioritäten oder Reserve Projekte... ( wenn z.B. MW keine WU's hat... dann bitte Collatz anfordern.... ansonsten nur MW )
Bild561*2^1423021+1
Bild
Bild

Benutzeravatar
Dunuin
Vereinsmitglied
Vereinsmitglied
Beiträge: 1743
Registriert: 23.03.2011 12:59
Wohnort: Hamburg

Re: CPU Verteilung Boinc

#8 Ungelesener Beitrag von Dunuin » 04.04.2012 10:11

Ich hab da das selbe Problem.
Bei allen 4 Rechnern schwankt die Auslastung der GPU enorm, sobald ich alle CPU-Kerne BOINC zur Verfügung stelle. Egal ob Einstein, Primegrid oder Collatz.
Lasse ich einen Kern frei, läuft die GPU stabil. Je nach Projekt und Hardware auf 90-99%. Sobald ich alle Kerne nutze werden diese auch zu 100% belastet und die GPU-Auslastung fällt immer von 90% auf so 20% runter, steigt auf 90%, fällt auf 40%, steigt auf 90% etc. Im Endeffekt läuft die GPU dann nur noch im Schnitt mit 60% anstatt der 90%+.

Kann man das irgendwie regeln, dass da GPU-Apps bevorzugt CPU-Rechenzeit zugeteilt bekommen? Ist schon irgendwie doof, wenn da die langsame CPU die schnelle GPU ausbremst. Da soll lieber eine der CPU-Apps gedrosselt werden.

So verschenke ich jetzt immer 4 Kerne die nur auf ca 50% laufen, damit für die GPUs genug Reserven da sind.
Bild

Benutzeravatar
Grubix
Prozessor-Polier
Prozessor-Polier
Beiträge: 103
Registriert: 27.08.2008 09:03

Re: CPU Verteilung Boinc

#9 Ungelesener Beitrag von Grubix » 04.04.2012 13:22

Vorweg, das Problem habe ich in der ausgeprägten Art nicht.

- Bei Einstein ist die GPU-Auslastung auch bei mir nicht so hoch. Das liegt aber daran, dass Einstein eher eine GPU unterstützte CPU Anwendung ist. Die WU läuft also auf der CPU und ein paar Berechnungen (z.B. FFT) laufen auf der GPU. Hat man eine langsame CPU und eine schnelle GPU, ist die GPU kaum ausgelastet. Hat man eine schnelle CPU eine langsame GPU, wird die GPU fast komplett ausgelastet.

- Bei Primegrid läuft meine GPU immer auf 98-99%, egal was die CPU macht. Da können alle Kerne was anderes rechnen. Für die Versorgung der GPU wird also kaum CPU-Zeit benötigt.

- Bei GPUGRID bringt es besonders bei schnellen GPUs etwas, einen Kern frei zu lassen. Bei zwei GPUs macht GPUGRID das quasi automatisch. Wenn z.B. 0,55 Kerne gefordert werden, bleibt bei zwei GPUs ein Kern komplett für GPUGRID frei. Was die Credits pro Tag angeht, ist man damit schneller als wenn alle Kerne mit einem CPU-Projekt + GPUGRID laufen. Für die Versorgung der GPU wird also etwas CPU-Zeit benötigt.

Ich konnte die GPU-Laufzeiten aber noch um ein paar Prozent verbessern. Vielleicht könnte das dein Problem verringern. Ich habe mir Priority installiert und lasse damit den GPUGRID/Primegrid Task auf höherer Priorität laufen. Ich habe das Programm in den Autostart gelegt und als "Suchbergriff" in Priority einen Teil des Task-Namen angegeben. Damit läuft der GPU-Task dann automatisch mit höherer Priorität und die Laufzeiten wurden ein kleinen wenig geringer.

Vielleicht hilft dir das, Grubix.

Benutzeravatar
Dunuin
Vereinsmitglied
Vereinsmitglied
Beiträge: 1743
Registriert: 23.03.2011 12:59
Wohnort: Hamburg

Re: CPU Verteilung Boinc

#10 Ungelesener Beitrag von Dunuin » 04.04.2012 20:16

TThrottle hab ich laufen. Priority war mir unbekannt. Werde das gleich mal testen. Danke.

Edit:
Klasse. So klappt das deutlich besser. :-)
Bild

Benutzeravatar
Grubix
Prozessor-Polier
Prozessor-Polier
Beiträge: 103
Registriert: 27.08.2008 09:03

Re: CPU Verteilung Boinc

#11 Ungelesener Beitrag von Grubix » 05.04.2012 09:02

Schön, das freut mich. :D

Benutzeravatar
helcoin
PDA-Benutzer
PDA-Benutzer
Beiträge: 46
Registriert: 10.01.2016 22:46
Wohnort: Stuttgart

Re: CPU Verteilung Boinc

#12 Ungelesener Beitrag von helcoin » 23.02.2016 18:21

Dunuin hat geschrieben: ...Kann man das irgendwie regeln, dass da GPU-Apps bevorzugt CPU-Rechenzeit zugeteilt bekommen? ....
War auch auf der Suche nach dieser Option. In der cc_config.xml wurde ich jetzt fündig. Siehe hier: boinc.berkeley.edu
Mit der recht neuen Option <process_priority_special> kann die Priorität für GPU-Jobs z.B. auf "normal" (2) oder "Niedriger als normal" (1) gesetzt werden. Damit werden sie dann den CPU-Jobs bevorzugt, die weiterhin mit "Niedrig" laufen. Die GPU kommt somit nicht in den Leerlauf (bei mir generell nicht). Läuft der Job mit "normaler" Priorität (2) kommt es zu Verzögerungen am Bildaufbau/Monitor.

Ich bemerke teilweise kaum einen Unterschied in den Laufzeiten, ob ich eine CPU für GPU-Tasks freihalte oder nicht. Mein i7-5820K mit 12 Threads und 3.3MHz hat genug Luft zwischen den Tasks um die GPU-Anforderungen noch reinzuschieben. Habe ich jetzt länger beobachtet/getestet.
Und meine GTX980Ti kann viel Futter vertragen.
Bei den Projekten Einstein und Seti können zwei GPU-Tasks parallel arbeiten. Habe dadurch nur 10-20% Verlust/längere Laufzeit pro Task. Darf hier alledings nicht mischen, d.h. Einstein und Seti geht nicht, da läuft Seti statt 10 Minuten dann 25 Minuten, Einstein stört sich dagegen an dem zweiten Seti-GPU-Task nicht.

Gut finde ich auch die BOINC-Logfile-Funktionen. Wenn ich unter "Meldungsoptionen..." die Option "coproc_debug" aktiviere, sehe ich jede Minute einen Eintrag, was Boinc gerade mit der GPU machen möchte. z.B.

23.02.2016 17:46:22 | Einstein@Home | [coproc] NVIDIA instance 0; 0.500000 pending for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_560_0
23.02.2016 17:46:22 | Einstein@Home | [coproc] NVIDIA instance 0; 0.500000 pending for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_800_0
23.02.2016 17:46:22 | Einstein@Home | [coproc] NVIDIA instance 0: confirming 0.500000 instance for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_560_0
23.02.2016 17:46:22 | Einstein@Home | [coproc] NVIDIA instance 0: confirming 0.500000 instance for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_800_0
23.02.2016 17:46:22 | Poem@Home | [coproc] Insufficient NVIDIA for poempp_2f21_1455984135_1431867100_0; need 1, available 0
23.02.2016 17:47:22 | Einstein@Home | [coproc] NVIDIA instance 0; 0.500000 pending for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_560_0
23.02.2016 17:47:22 | Einstein@Home | [coproc] NVIDIA instance 0; 0.500000 pending for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_800_0
23.02.2016 17:47:22 | Einstein@Home | [coproc] NVIDIA instance 0: confirming 0.500000 instance for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_560_0
23.02.2016 17:47:22 | Einstein@Home | [coproc] NVIDIA instance 0: confirming 0.500000 instance for p2030.20150921.G68.90+00.39.C.b5s0g0.00000_800_0
23.02.2016 17:47:22 | Poem@Home | [coproc] Insufficient NVIDIA for poempp_2f21_1455984135_1431867100_0; need 1, available 0


Hier möchte Boinc als nächstes eine WU von Poem starten, meldet aber das die GPU besetzt ist, mit zwei Einstein a 0.5 gpu (in der app_config.xml definiert).

Hilfreich ist auch die Logoption für Checkpoints (checkpoint_debug). Da kann man dann sehr einfach verfolgen, wann ein Job einen anlegt.
Und zur Leistungsverbrauchsmessung eignet sich auch gut mem_usage_debug. Hier wird alle 10 Sekunden auch der CPU-Verbrauch jedes Jobs ausgegeben. Damit kann ich sehen, wieviel Zeit ein GPU-Job von der CPU in Anspruch genommen hat.

23.02.2016 18:05:51 | DistributedDataMining | [mem_usage] 4212129_SVM_Rand-2007_Par1-5200_Par2-5600_Dim-20_32665_1: WS 128.54MB, smoothed 128.52MB, swap 157.05MB, 0.00 page faults/sec, user CPU 116.109, kernel CPU 0.516
23.02.2016 18:05:51 | VirtualLHC@home | [mem_usage] wu_1455705955_10777_0: WS 76.55MB, smoothed 476.84MB, swap 105.41MB, 0.00 page faults/sec, user CPU 285.594, kernel CPU 25883.078
23.02.2016 18:05:51 | VirtualLHC@home | [mem_usage] wu_1455705955_10813_0: WS 76.13MB, smoothed 476.84MB, swap 104.68MB, 0.00 page faults/sec, user CPU 261.016, kernel CPU 25722.281
23.02.2016 18:05:51 | yoyo@home | [mem_usage] ecm_ru_1456078537_10_1230.c204_7200_0: WS 7.90MB, smoothed 7.90MB, swap 9.92MB, 0.00 page faults/sec, user CPU 4773.859, kernel CPU 16.078
23.02.2016 18:05:51 | rosetta@home | [mem_usage] C8NDB8_PF14080_160-272_1-100_RE_cst_v01_t000__krypton_SAVE_ALL_OUT_03_09_329927_323_0: WS 226.10MB, smoothed 226.19MB, swap 213.93MB, 0.00 page faults/sec, user CPU 13518.078, kernel CPU 21.453
23.02.2016 18:05:51 | Poem@Home | [mem_usage] poempp_2f21_1455984135_1431867100_0: WS 89.04MB, smoothed 89.03MB, swap 106.89MB, 0.00 page faults/sec, user CPU 446.563, kernel CPU 614.688
23.02.2016 18:05:51 | World Community Grid | [mem_usage] FAH2_000077_avx38672_000024_0000_009_0: WS 79.51MB, smoothed 79.51MB, swap 130.05MB, 0.00 page faults/sec, user CPU 12053.484, kernel CPU 8.094
23.02.2016 18:05:51 | World Community Grid | [mem_usage] FAH2_000077_avx38672_000016_0050_009_0: WS 73.46MB, smoothed 73.46MB, swap 124.21MB, 0.00 page faults/sec, user CPU 11075.500, kernel CPU 12.094
23.02.2016 18:05:51 | World Community Grid | [mem_usage] FAH2_000077_avx38672_000021_0004_011_0: WS 79.14MB, smoothed 79.14MB, swap 129.41MB, 0.00 page faults/sec, user CPU 10037.656, kernel CPU 8.219
23.02.2016 18:05:51 | WUProp@Home | [mem_usage] data_collect_v4_1454745134_425685_0: WS 17.13MB, smoothed 17.12MB, swap 61.91MB, 0.00 page faults/sec, user CPU 4.344, kernel CPU 19.109
23.02.2016 18:05:51 | World Community Grid | [mem_usage] MCM1_0021058_8619_0: WS 53.32MB, smoothed 53.32MB, swap 90.29MB, 0.00 page faults/sec, user CPU 4564.531, kernel CPU 3.750
23.02.2016 18:05:51 | World Community Grid | [mem_usage] MCM1_0021058_7075_1: WS 52.78MB, smoothed 52.78MB, swap 90.13MB, 0.00 page faults/sec, user CPU 4478.266, kernel CPU 3.438
23.02.2016 18:05:51 | World Community Grid | [mem_usage] MCM1_0021058_7724_0: WS 53.30MB, smoothed 53.30MB, swap 90.29MB, 0.00 page faults/sec, user CPU 4114.578, kernel CPU 4.156
23.02.2016 18:05:51 | World Community Grid | [mem_usage] MCM1_0021058_4761_0: WS 53.09MB, smoothed 53.08MB, swap 90.07MB, 0.00 page faults/sec, user CPU 2017.922, kernel CPU 1.031
23.02.2016 18:05:51 | | [mem_usage] BOINC totals: WS 1065.98MB, smoothed 1867.03MB, swap 1504.23MB, 0.00 page faults/sec
23.02.2016 18:05:51 | | [mem_usage] All others: WS 2664.72MB, swap 1987.11MB, user 1729.703s, kernel 3473.063s
23.02.2016 18:05:51 | | [mem_usage] non-BOINC CPU usage: 4.39%


Nach 10 Sekunden kommt dann diese Zeile für Poem:
23.02.2016 18:06:01 | Poem@Home | [mem_usage] poempp_2f21_1455984135_1431867100_0: WS 89.04MB, smoothed 89.04MB, swap 106.89MB, 0.00 page faults/sec, user CPU 450.906, kernel CPU 620.359

Hier wurden ca. 4 Sekunden mit der CPU gerechnet (450.9 - 446.5).
Wer hat noch Erfahrungen mit zwei gleichzeitigen GPU-Tasks? Bei welchen Projekten geht das noch mit Gewinn?

PS: Wenn noch keine cc_config.xml existiert, unbedingt zuerst von Boinc anlegen lassen, z.B. mit einer Änderung in den obigen Debug-Funktionen wird sie erstellt. Sonst wird die eigene angelegte xml überschrieben.
Bild
Bild

Antworten

Zurück zu „Hilfe und Support“