Client state.xml
Im Abschnitt Boinc Scheduler wird u.a. auf die grundsätzliche Funktion der client_state.xml-Datei eingegangen.
An dieser Stelle greifen wir einige Zeilen dieser Datei auf, um deren Bedeutung zu erklären, und durch gezieltes Ändern der Einträge, Nutzen daraus zu ziehen.
Abgelegt ist die Datei unter Windows im Verzeichnis C:\ProgrammData\BOINC\client_state.xml
Unter Linux liegt sie im Verzeichnis /var/lib/boinc-client/client_state.xml
Abhängig bei wievielen Projekten der Boinc-Manager angemeldet ist, ist auch der Umfang des Inhaltes. Das ist Wichtig zu beachten, damit auch im richtigen Abschnitt die gewünschte Änderung vorgenommen wird.
Änderungen an der Datei lassen sich nur bei beendetem Boinc-Manager vornehmen. Änderungen im laufenden Betrieb, lassen sich endweder nicht abspeichern, oder werden vom System wieder überschrieben.
Anfangen wollen wir mit zwei Einträgen, die gleich mal grundsätzlich immer geändert werden können.
<on_frac> und <active_frac>
Über die Einträge <on_frac> und <active_frac> weiß das Projekt, wie lange der Boinc-Client mit ihm bereits verbunden ist. Um so höher dieser Wert ist, um so schneller werden dem Client WUs zugewiesen. Der maximale Wert muß < 1 sein. Die beiden Zeilen befinden sich im Abschnitt <time_stats>. Als Beispiel:
<time_stats> <on_frac>0.99</on_frac> <active_frac>0.99</active_frac> </time_stats>
<duration_correction_factor>
Beim nächsten Eintrag den wir verändern wollen, geht es um die vermutete Berechnungsdauer pro Workunit (WU). In Abhängigkeit der Berechnungsdauer pro WU, und dem eingestellten Wert im Boinc-Manger bezüglich der Arbeitszeit, für die wir WUs haben wollen, errechnet der Projektserver die Menge an WUs, die runtergeladen werden können. Auf dem Projektserver ist diese Berechnungszeit abgelegt, und bezieht sich in der Regel auf die Zeit, die der Projektserver benötigt hat. Dieser Wert unterscheidet sich natürlich vom eingenen System. Mit jeder gerechneten und zurück gesendeten WU, wird der Wert angeglichen, und es können bezogen auf die eingestellte Arbeitszeit, mehr WUs auf den eigenen Rechner runtergeladen werden. Um diesen Vorgang abzukürzen, gehen wir in der client_state.xml in den Projektabschnitt, deren Wert wir ändern wollen.
Im Beispielfall soll das der Projektabschnitt von Einstein@home sein:
<project> <master_url>http://einstein.phys.uwm.edu/</master_url> <project_name>Einstein@Home</project_name> .... <duration_correction_factor>0.282786</duration_correction_factor> .... </project>
Hier ist bereits der tatsächliche Wert vorhanden. Bei der Neuanmeldung beim Projekt, steht hier eine Zahl < 0.999999. Der Wert oben steht für die Berechnungszeit einer CPU-WU. Der Wert für eine GPU-WU ist in der Regel < 0,010000.