Poem@Home: GPU Optimized Applications

orpheus2k

Grand Admiral Special
Mitglied seit
15.09.2003
Beiträge
2.429
Renomée
126
Standort
Altkreis Lübbecke
  • Docking@Home
  • BOINC Pentathlon 2011
  • BOINC Pentathlon 2012
  • BOINC Pentathlon 2013
  • BOINC Pentathlon 2019
  • BOINC Pentathlon 2020
app_info.xml Beispiele :
AMD/ATI:
GRÜN: Herstellerangaben (ATI oder NVIDIA)
ROT: Resourcen für eine Workunit
Code:
<app_info>

<app>
<name>poemcl</name>
<user_friendly_name>POEM++ OpenCL</user_friendly_name>
</app>

<file_info>
[COLOR="Green"]<name>[B]poemcl_1.5_windows_intelx86__opencl_ati_100[/B]</name>[/COLOR]
<executable/>
</file_info>

<app_version>
<app_name>poemcl</app_name>
<version_num>105</version_num>
[COLOR="Green"]<plan_class>opencl_ati_100</plan_class>[/COLOR]
[COLOR="Red"]<avg_ncpus>[B]0.5[/B]</avg_ncpus>[/COLOR]
[COLOR="Red"]<max_ncpus>[B]0.5[/B]</max_ncpus>[/COLOR]
<flops>1.7e12</flops>

<coproc>
[COLOR="Green"]<type>ATI</type>[/COLOR]
[COLOR="Red"]<count>[B]0.16[/B]</count>[/COLOR]
</coproc>
<cmdline></cmdline>

<file_ref>
[COLOR="Green"]<file_name>[B]poemcl_1.5_windows_intelx86__opencl_ati_100[/B]</file_name>[/COLOR]
<main_program/>
</file_ref>
</app_version>
</app_info>
NVIDIA:
GRÜN: Herstellerangaben (ATI oder NVIDIA)
ROT: Resourcen für eine Workunit
Code:
<app_info>

<app>
<name>poemcl</name>
<user_friendly_name>POEM++ OpenCL</user_friendly_name>
</app>

<file_info>
[COLOR="Green"]<name>[B]poemcl_1.5_windows_intelx86__opencl_nvidia_100[/B]</name>[/COLOR]
<executable/>
</file_info>

<app_version>
<app_name>poemcl</app_name>
<version_num>105</version_num>
[COLOR="Green"]<plan_class>opencl_nvidia_100</plan_class>[/COLOR]
[COLOR="Red"]<avg_ncpus>[B]1.0[/B]</avg_ncpus>[/COLOR]
[COLOR="Red"]<max_ncpus>[B]1.0[/B]</max_ncpus>[/COLOR]
<flops>2.1e10</flops>

<coproc>
[COLOR="Green"]<type>NVIDIA</type>[/COLOR]
[COLOR="Red"]<count>[B]0.25[/B]</count>[/COLOR]
</coproc>
<cmdline></cmdline>

<file_ref>
[COLOR="Green"]<file_name>[B]poemcl_1.5_windows_intelx86__opencl_nvidia_100[/B]</file_name>[/COLOR]
<main_program/>
</file_ref>
</app_version>
</app_info>
Weitere Informationen zu der app_info.xml kann man hier finden​
 
Zuletzt bearbeitet:
Kurze Frage: Kann man eine app_info.xml basteln, die für eine AMD- und eine Nvidia-Grafikkarte funktioniert? Ich habe im Moment je eine im Rechner und beide rechnen auch brav POEM, aber sind nur zu ca. 50% ausgelastet. Im Netz finde ich leider nur app_info für AMD oder Nvidia. Irgendwer ne Idee?

MfG Atlan78
 
<app_info>

<app>
<name>poemcl</name>
</app>

<file_info>
<name>poemcl_1.3_windows_intelx86__opencl_nvidia_100</name>
<executable/>
</file_info>

<app_version>
<app_name>poemcl</app_name>
<version_num>103</version_num>

<coproc>
<type>NVIDIA</type>
<count>0.33</count>
</coproc>

<plan_class>opencl_nvidia_100</plan_class>
<flops>6.0e11</flops>
<avg_ncpus>0.5</avg_ncpus>
<max_ncpus>0.5</max_ncpus>
<cmdline></cmdline>

<file_ref>
<file_name>poemcl_1.3_windows_intelx86__opencl_nvidia_100</file_name>
<main_program/>
</file_ref>

</app_version>

<app>
<name>poemcl</name>
<user_friendly_name>POEM++ OpenCL</user_friendly_name>
</app>

<file_info>
<name>poemcl_1.3_windows_intelx86__opencl_ati_100</name>
<executable/>
</file_info>

<app_version>
<app_name>poemcl</app_name>
<version_num>1</version_num>
<plan_class>opencl_ati_100</plan_class>
<avg_ncpus>0.5</avg_ncpus>
<max_ncpus>0.5</max_ncpus>
<flops>2.1e10</flops>

<coproc>
<type>ATI</type>
<count>0.5</count>
</coproc>

<cmdline></cmdline>
<file_ref>
<file_name>poemcl_1.3_windows_intelx86__opencl_ati_100</file_name>
<main_program/>
</file_ref>
</app_version>

</app_info>
@Atlan78
Ich kann nichts versprechen und ausprobieren kann ich es wegen mangelnder Gelegenheit auch nicht. Versuchs halt
 
Danke für die schnelle Antwort. So etwa hat mein eigener Versuch ausgesehen.
Leider mit dem Ergebnis:
21.09.2012 22:07:00 | Poem@Home | [error] No application found for task: windows_intelx86 103 opencl_ati_100; discarding
21.09.2012 22:07:00 | Poem@Home | [error] No application found for task: windows_intelx86 103 opencl_nvidia_100; discarding
Das steht einmal pro WU, die sind dann einfach weg (kein Berechnungsfehler oder ähnliches, sind einfach aus der Liste gelöscht).
 
Danke für die schnelle Antwort. So etwa hat mein eigener Versuch ausgesehen.
Leider mit dem Ergebnis:
21.09.2012 22:07:00 | Poem@Home | [error] No application found for task: windows_intelx86 103 opencl_ati_100; discarding
21.09.2012 22:07:00 | Poem@Home | [error] No application found for task: windows_intelx86 103 opencl_nvidia_100; discarding
Das steht einmal pro WU, die sind dann einfach weg (kein Berechnungsfehler oder ähnliches, sind einfach aus der Liste gelöscht).
Wie bist Du vorgegangen? Ich hätte die app_info erst mal bei Seite getan, POEM entfernt und neu hinzugefügt. Dann sollte BOinc die entsprechenden Apps runterladen (wenn in der cc_config eingetragen wurde <use_all_gpus>1</use_all_gpus>). Dann Boinc wieder beenden und die app_info in den Projektordner kopieren. Boinc starten und dann sollte es gehen.
 
Wie bist Du vorgegangen? Ich hätte die app_info erst mal bei Seite getan, POEM entfernt und neu hinzugefügt. Dann sollte BOinc die entsprechenden Apps runterladen (wenn in der cc_config eingetragen wurde <use_all_gpus>1</use_all_gpus>). Dann Boinc wieder beenden und die app_info in den Projektordner kopieren. Boinc starten und dann sollte es gehen.

Also im Moment rechne ich ohne irgendeine app_info. Je eine WU pro Grafikkarte. Dann halte ich alle Vorgänge via Steuerung im Boinc-Manager an, beende den BM incl. der Aufgaben, kopiere die app_info in den Projektordner und starte den BM neu. Dann sind sämtliche GPU-WUs verschwunden (noch bevor ich wieder fortsetze), es sind nur noch SIMAP CPU-WUs drin. Unter Meldungen dann die oben gepostete Fehlermeldung.

cc_config habe ich gar keine erstellt, ich kanns aber probieren.

Edit: Ich hab es auch mit cc_config und neu hinzufügen von POEM probiert, selbes Ergebnis.
 
Zuletzt bearbeitet:
War halt ein Versuch.
Hat vielleicht mit dem Poem-Bug zu tun der von 2 im System befindlichen Nvidia Karten nur die nutzt welche als Device 0 gesteckt ist. *noahnung*
 
Danke für deine Unterstützung.
Ich gebe hier jetzt auf. Vielleicht schafft es wer anderer. Stehe aber als Versuchsperson zur Verfügung (einfach PM senden).
 
@Atlan78

Poem deinstallieren.
Poem neu anmelden mit Bunkereinstellung 0. Trotzdem lädt er zumindest zwei Wus runter. In Deinem Fall eine für die NVIDIA und eine für die Ati (Bedingung) !!!
Boinc beenden.
Gegebenenfalls unsichtbare Ordner sichtbar machen und "Erweiterungen bei bekannten Dateitypen ausblenden" vorher deaktivieren.
Die app_info.xml für Poem in den Ordner c:\ProgramData\Boinc\projects\boinc.fzk.de_poem kopieren.
Boinc neu starten.
Er schrottet jetzt zwar die zwei Wus und mosert im Boincmanager (Ereignisanzeige) beim Start rum, macht nichts. Poem ist ready, Du kannst jetzt Wus runterladen, die dann auch berechnet werden.


Die cc_config.xml kannst Du Dir sparen, da Dein Boinc doch schon beide Grafiken erkennt und Poem mit je einer Wu rechnet.
 
Zuletzt bearbeitet:
kurze meldung:HD 7970 default

OS: Win7 64Bit 3,4 GHz und 16 GHz Ram

0,5 CPU und 0.08 GPU ( 12 WUs ) bringt einen GPU-Load von ~ 64%

geht da noch was *noahnung*
 
Hallo, ich hab da mal noch ein paar Tips gefunden: http://forum.boinc-australia.net/index.php?topic=1164.0;wap2

- Wenn mehr als 1x GPU genutzt wird dann sollte CfX / SLI deaktivert werden, damit steigt die GPU Auslastung nochmal.

- Wenn mehrere WUs auf einer Karte laufen, muss max_ncpus = Taskanzahl entsprechen.
z.B. 8 WUs @ <avg_ncpus>1</avg_ncpus> = <max_ncpus>8</max_ncpus>
Die CPU Auslastung sollte dann auch höher sein.

Kann das mal Bitte jemand testen und Feedback geben? Danke!

MfG
 
Hallo, ich hab da mal noch ein paar Tips gefunden: http://forum.boinc-australia.net/index.php?topic=1164.0;wap2

- Wenn mehr als 1x GPU genutzt wird dann sollte CfX / SLI deaktivert werden, damit steigt die GPU Auslastung nochmal.

- Wenn mehrere WUs auf einer Karte laufen, muss max_ncpus = Taskanzahl entsprechen.
z.B. 8 WUs @ <avg_ncpus>1</avg_ncpus> = <max_ncpus>8</max_ncpus>
Die CPU Auslastung sollte dann auch höher sein.

Kann das mal Bitte jemand testen und Feedback geben? Danke!

MfG
Wenn du max_ncpus auf 8 setzt, werden aber auch bis zu 8 CPU Kerne belastet, wobei die aktuellen OpenCL GPU Apps momentan nie nen ganzen CPU Kern benötigen.
Ich setze avg_ncpus und max_ncpus auf 0.25 oder 0.5, 2 WUs kann ein Kern noch ordentlich verarbeiten
 
@orpheus2k
Ja das ist mir klar das dann bis zu 8 Kerne genutzt werden, das ist ja Sinn und Zweck der Sache.
Bist du sicher das 0.5 ncpus avg reichen, deine Laufzeit ist doch recht hoch im Vergleich zu meinen WUs.

@HWG
64% Auslastung sind Top!
Wie lange brauchen deine WU´s in Sekunden wenn du 12 Stück auf einer Karte laufen lässt?
Bei mir sind es ~2300sek pro WU mit 30% Auslastung.
 
Zuletzt bearbeitet:
Finde ich auch recht viel. Habe 1x 5950 und 3v4 Kernen 965BE. Lasse da 4 WUs laufen und habe aktuell durschnittlich 1h:04min, also grob 3850sec, wären bei doppelter Belastung 7700 sec. Und das mit einer schlechteren Graka. Die Auslastung der Graka liegt bei 61-65%. Also ich würd auch ma sagen, daß das nicht optimal läuft. Ggf mal noch nen Kern mehr freigeben.
 
@orpheus2k
Ja das ist mir klar das dann bis zu 8 Kerne genutzt werden, das ist ja Sinn und Zweck der Sache.
Bist du sicher das 0.5 ncpus avg reichen, deine Laufzeit ist doch recht hoch im Vergleich zu meinen WUs.

@HWG
64% Auslastung sind Top!
Wie lange brauchen deine WU´s in Sekunden wenn du 12 Stück auf einer Karte laufen lässt?
Bei mir sind es ~2300sek pro WU mit 30% Auslastung.

~ 4700 - 4800 sec pro WU
 
@FireWired
Darum geht es ja, wenn die WUs doppelt so lang brauchen, hat man nichts dabei gewonnen.

@HWG
Oha, das ist nicht schlecht! Wenn bei mir 12x WUs laufen (4 WUs pro HD7970) sind es ~ 5400sek pro WU.
Daher lass ich nur 2 WUs pro GPU laufen dann sind es 2300sek (3x30% Auslastung) und ~75% CPU Auslastung.
<avg_ncpus>1</avg_ncpus>
<max_ncpus>6</max_ncpus>
Ist deine HD7970 übertaktet? Meine laufen mit 925/1375MHz.

MfG
 
@Windhund.
Habe es mit einer HD5850 ausprobiert max_ncpus 8, avg_ncpus 1,
im Vergleich zu max_ncpus 0,5 , avg_ncpus 0,5 bei 8WUs gleichzeitig kein Unterschied in der Laufzeit. 1,5h.

cu JagDoc
 
@JagDoc
ok, dann wollen wir mal! Hier die komplette app_info:
<app_info>

<app>
<name>poemcl</name>
<user_friendly_name>POEM++ OpenCL</user_friendly_name>
</app>

<file_info>
<name>poemcl_1.3_windows_intelx86__opencl_ati_100</name>
<executable/>
</file_info>

<app_version>
<app_name>poemcl</app_name>
<version_num>13</version_num>
<platform>windows_intelx86</platform>
<plan_class>opencl_ati_100</plan_class>
<avg_ncpus>1</avg_ncpus>
<max_ncpus>6</max_ncpus>
<flops>2.1e10</flops>
<coproc>
<type>ATI</type>
<count>0.5</count>
</coproc>
<cmdline>-instances_per_device 2 -no_cpu_lock</cmdline>
<file_ref>
<file_name>poemcl_1.3_windows_intelx86__opencl_ati_100</file_name>
<main_program/>
</file_ref>
</app_version>
</app_info>

;)
 
@WindHund
schon klar, wollte nur nochmal unterstreichen, daß das nicht optimal sein kann.
btw: das maximum meiner karte habe ich noch nicht geprüft, aber die ~60%ige Auslastung lässt die Graka leise bleiben und auch das NT wird bei 200W noch nicht übermäßig laut, von daher optimal.
 
@FireWired
Darum geht es ja, wenn die WUs doppelt so lang brauchen, hat man nichts dabei gewonnen.

@HWG
Oha, das ist nicht schlecht! Wenn bei mir 12x WUs laufen (4 WUs pro HD7970) sind es ~ 5400sek pro WU.
Daher lass ich nur 2 WUs pro GPU laufen dann sind es 2300sek (3x30% Auslastung) und ~75% CPU Auslastung.

Ist deine HD7970 übertaktet? Meine laufen mit 925/1375MHz.

MfG

default 925/1375
 
<avg_ncpus>1</avg_ncpus>
<max_ncpus>6</max_ncpus>


Beeinflussen die Werte die Berechnung überhaupt? Laut WTaskmanager ist die Coreunterstützung gleich, ob da nun 0.25/0.35, 0.5/0.7 oder 0.7/0.9 stehen. Ob 2 oder 4 Wus berechnet werden (Ati 57xx/67xx).
 
<avg_ncpus>1</avg_ncpus>
<max_ncpus>6</max_ncpus>


Beeinflussen die Werte die Berechnung überhaupt? Laut WTaskmanager ist die Coreunterstützung gleich, ob da nun 0.25/0.35, 0.5/0.7 oder 0.7/0.9 stehen. Ob 2 oder 4 Wus berechnet werden (Ati 57xx/67xx).
Gute Frage, ich konnte auch keine Änderung an der CPU Auslastung feststellen auch bei mehr WUs pro Karte.
Mit 2 Karten sind es 50% CPU Auslastung und mit 3 Karten sind es 75% Auslastung.

Wenn nun 3 Karten mit jeweils 4 WUs gefüttert werden sind es 100% CPU Auslastung. (immer mit der selben app_info von oben)

@orpheus2k
-instances_per_device 2 = Anzahl der WUs pro GPU
-no_cpu_lock = Alle freien verfügbaren Kerne werden genutzt

Ob die was bringen oder überhaupt greifen kann ich nicht sagen, daher bin ich auf euer Feedback angewießen.
Danke schon mal, an die Tester! :)

MfG
 
...
@orpheus2k
-instances_per_device 2 = Anzahl der WUs pro GPU
-no_cpu_lock = Alle freien verfügbaren Kerne werden genutzt
...

"instances_per_device" brauch ich ja nur bei mehreren GPUs
"no_cpu_lock" bei mir werden generell alle CPU Kerne für Boinc verwendet

Woher kennst du eigentlich diese Parameter?
.
EDIT :
.

1x GPU Core, 2x CPU Core, 4 WUs
GPU Load: ~45-60%
Laufzeit pro WU: 3.900-5.200 s (Durchschnitt: 4.600 s)
Tagesoutput: ca 220.000 Credits
 
@orpheus2k
Die Werte kenn ich von Seti, die hat mir freundlicher weiße ein Mitglied von P3D mitgeteilt.
Ich wollte nur wissen ob die Parameter bei POEM auch funktionieren.

MfG
 
Zurück
Oben Unten