Kort installation av BOINC Manager. Frivillig datoranvändning på din Linux-maskin Virtuell maskin BOINC-server

|

Spara och stäng filen och kör sedan boinc-client för att få servern att ansluta till SETI@home.

sudo service boinc-klient start

4: Kontrollerar den nya värden

5: Kontrollerar serverstatus

För att se statusen för servern eller uppgifterna, använd kommandot:

Det här kommandot tillhandahåller allmän SETI@home-information och rapporterar även aktuella uppgifter som körs på den specifika värden.

Utdata från detta kommando ser ut ungefär så här:

boinccmd --get_simple_gui_info
======== Projekt =========
1) -----------
namn: SETI@home
master URL: http://setiathome.berkeley.edu/
användarnamn: stmiller
team_name: SETI.USA
resursandel: 100 000 000
user_total_credit: 33159.675770
user_expavg_credit: 1409.252845
host_total_credit: 0,000000
host_expavg_credit: 0,000000
nrpc_failures: 0
master_fetch_failures: 0
masterhämtning väntar: nej
schemaläggare RPC väntande: nej
trickle upload väntar: nej
bifogas via Account Manager: nr
slutade: nej
avstängd via GUI: nej
begär inte mer arbete: nej
diskanvändning: 0,000000
senaste RPC: 1423684749.199424
nedladdade projektfiler: 0,000000
GUI URL:
namn: Anslagstavlor
beskrivning: Korrespondera med andra användare på SETI@home anslagstavlor
URL: http://setiathome.berkeley.edu/forum_index.php
GUI URL:
namn: Hjälp
beskrivning: Ställ frågor och rapportera problem
URL: http://setiathome.berkeley.edu/forum_help_desk.php
GUI URL:
namn: Ditt konto
beskrivning: Visa din kontoinformation
URL: http://setiathome.berkeley.edu/home.php
GUI URL:
namn: Dina preferenser
beskrivning: Visa och ändra dina datorinställningar
URL: http://setiathome.berkeley.edu/prefs.php?subset=global
GUI URL:
namn: Dina resultat
beskrivning: Se din senaste vecka (eller mer) med beräkningsresultat och arbete
URL: http://setiathome.berkeley.edu/results.php?userid=9351194
GUI URL:
namn: Dina datorer
beskrivning: Visa en lista över alla datorer som du kör SETI@Home på
URL: http://setiathome.berkeley.edu/hosts_user.php?userid=9351194
GUI URL:
namnge ditt lag
beskrivning: Visa information om ditt lag: SETI.USA
URL: http://setiathome.berkeley.edu/team_display.php?teamid=115396
GUI URL:
namn: Donera
beskrivning: Donera till SETI@home
URL: http://setiathome.berkeley.edu/sah_donate.php
======== Uppgifter =========
1) -----------
namn: 25fe12ab.24545.17667.438086664204.12.226_0
WU-namn: 25fe12ab.24545.17667.438086664204.12.226
projekt URL: http://setiathome.berkeley.edu/
rapport deadline: ons 4 mars 02:06:18 2015
redo att rapportera: nej
fick serverack: nej
slutlig CPU-tid: 0,000000
tillstånd: nedladdat
schemalagd tillstånd: schemalagd
exit_status: 0
signal: 0
avstängd via GUI: nej
active_task_state: UTFÖR
appens versionsnummer: 701
kontrollpunkt CPU-tid: 352.733700
aktuell CPU-tid: 378.866400
bråkdel gjort: 0,088431
bytesstorlek: 110309376.000000
arbetsset storlek: 40030207.999996
Beräknad återstående CPU-tid: 2505.901220

Installation.

Följande beskriver installationsprocessen för BOINC manager version 6.4.1
(UPD: några skärmdumpar från version 6.6.28 har ersatts - där ändringar har skett jämfört med den gamla versionen).

Vi startar installationsprogrammet och ser det första konfigurationsfönstret:



Den första sökvägen, programkatalogen, är där själva BOINC-hanteraren är installerad. Lämna det som standard.
Det andra sättet, datakatalog - där projektdata kommer att lagras: beräkningsmoduler, uppgifter, etc. Jag rekommenderar att du ändrar standardsökvägen så att allt relaterat till BOINC finns i en mapp.

Vi lämnar de nästa tre kryssrutorna för att passa vår smak, men jag tar bort den första, "använd skärmsläckare". Så att det inte stör.

Om det under installationen står Fel vid läsning av installationsinitieringsfilen, läs
Kort översättning:
1. kör installationsprogrammet med parametern /a
2. ange på vilken disk fönster finns
3. installera som vanligt

Det är allt, den första installationsprocessen är klar, och efter att installationen är klar kommer programmet att be dig starta om din dator.

Efter omstart kommer du att se något i stil med detta:

Därför går vi till "Avancerat" - "programinställningar" och börjar hantera saker där.
(avancerat - alternativ - allmänt - språkval - detta är om ditt ryska språk plötsligt inte bestäms automatiskt).

Inställningar:

Fliken Allmänt

* Välj gränssnittsspråk

* Intervallet mellan chefens försök att ansluta till projektservern. Som standard ansluter chefen automatiskt till servern en gång var 60:e minut: för att skicka slutförda uppgifter och för att ta emot nya beräkningar. Om du vill, ändra det, jag lämnade det som standard.

* Starta hanteraren när systemet startar? Jag tycker att det är logiskt att lansera. Även om du inte behöver ikonen i fack, behöver du inte starta den.

* Aktivera meddelande vid utgång? Om kryssrutan är markerad, och om du vill avsluta hanteraren, kommer följande fönster att dyka upp:

I det här fönstret kan du göra följande inställningar:
* "Stoppa beräkningsprocessen och lämna chefen." En bekväm fråga som endast dök upp i den sjätte versionen av BOINC-hanteraren.
Om du inte markerar rutan stängs chefen och projektet fortsätter att fungera.
Kryssa i rutan - projektet stannar och chefen stänger.

* "Kom ihåg mitt val och ställ inte den här frågan igen" - Jag tror att det redan är klart vad den andra kryssrutan påverkar.

Fliken Anslutningsinställningar



Fliken "HTTP Proxy".



fliken "SOCKS proxy".



Välj ett objekt från menyn "Avancerat" - "klientinställningar"

Processorfliken



* "När den drivs av batterier"- relevant för bärbara datorer och datorer med programvara konfigurerad för att fungera med UPS. Troligtvis tar vi bort det, varför måste vi tömma batteriet på den bärbara datorn?

* "när datorn används för arbete"- en mycket nödvändig kryssruta, se till att kryssa i den. Annars väntar BOINC tills du lämnar datorn i "3 minuter" (som standard).

* "Använd GPU när datorn används för arbete"- Använd grafikkort för beräkningar när du jobbar? Om ja, kommer grafikkortet att utföra beräkningar konstant, om inte, kommer det att vänta tills du lämnar datorn i "3 minuter" (som standard).

* Nedan finns en grupp inställningar för esteter: du kan ställa in ett schema enligt vilket BOINC kommer att utföra beräkningar.

Ligger ännu lägre "andra alternativ".
* "Växla mellan projekt var 60:e minut". Om du har laddat ner en stapel med uppgifter från olika projekt för beräkningar (till exempel ABC@home och Primegrid), så kommer klienten att byta projekt var 60:e minut: en timme räknas som ABC@home, sedan räknas en timme som Primegrid osv. .

* På flerprocessorsystem, använd 100 % av processorerna.
Om du har en fyrkärnig processor kommer 4 kärnor att användas, om du ställer in den på 50 % - 2 kärnor.

* Använd inte mer än 100 % av processorn- med vilken procentandel kommer BOINC att ladda de tillgängliga kärnorna jämnt.

De där. om du installerar 100 % av de tillgängliga kärnorna och 100 % av processorn, kommer alla fyra kärnorna i vår quad att fungera till 100 %.
Och om vi ställer in 50 % kärnor, 80 % belastning, så kommer två kärnor i vår quad att laddas till 80 %.


Fliken Nätverksinställningar



Vanliga parametrar. Detta är cachehantering.
Vi ställer in (snarare, rör inte :)) hastigheten för nedladdning och sändning.
En mycket viktig punkt! Vi väljer hur många dagar vi ska ladda ner uppgifter för.
Jag, som har en konstant anslutning till Internet, ställer in huvudbufferten till 1 dag och den extra bufferten till 1 dag.
Om du har internet med jämna mellanrum, ställ in det på ett större antal dagar. Var bara uppmärksam på deadline för att skicka, så att uppgifterna inte är "försenade".

Hur vet chefen hur många uppgifter som behöver laddas?
I början av arbetet, och sedan var 4-5 dag, lanserar chefen ett processorriktmärke. Och baserat på de erhållna resultaten bestämmer den hur många delar av VU (arbetsenhet = Arbetsenhet = VU) som ska laddas in i cachen.

* kontrollera inte nedladdade filer- Jag vet inte själv, jag hittar svaret och uppdaterar det här stycket i artikeln.

Anslutningsinställningar.
Dessa två kryssrutor är relevanta för periodiska anslutningar till Internet. Chefen kommer att fråga dig innan du försöker ansluta till servern och kommer även att kunna avsluta anslutningen själv efter att ha laddat in nya och skickat redan räknade uppgifter.

Tillgång till Internet.
Här kan du sätta upp ett schema enligt vilket chefen kommer att gå online (om du behöver det).

Behöver du konstant tillgång till internet?
Nej! Chefen behöver bara tillgång till nätverket för att skicka/ta emot uppgifter. Så teoretiskt kan en dator stå utan internet så länge det finns något att läsa i cachen.

Fliken Disk och minne





Jag är ingen rådgivare här: det är upp till dig att bestämma vilka siffror som ska anges. Jag lämnade allt som standard. Men jag skulle öka "spara till diskperioden" från 60 till 300 sekunder. Varför dra ut hårddisken igen?

Det är allt, den första installationen av chefen är klar. Låt oss gå vidare till att koppla ihop projektet.

Ansluter till projektet

Välj "tjänst" - "lägg till projekt".


Därefter visas en lista med projekt. Den är ofullständig, tvärtom - den innehåller bara de mest populära, d.v.s. de mest populära och förnuftiga BOINC-projekten. Om projektet du behöver finns i listan - bra, om inte - klistra bara in önskad projektadress i det nedre fältet och klicka på nästa.

Hur får man reda på projektets adress? Det finns i ämnesrubriken på vårt forum. Kom bara ihåg att inte alla projekt som vi skriver om på forumet är BOINC-projekt.

Meddelande:
Meddelande från server: Inget arbete skickat
Servern utfärdar inga jobb för tillfället. Det är okej, det finns projekt där det inte finns några uppgifter på sex månader. Gå med i ett annat projekt nu.

Meddelande:
Du använde fel URL för det här projektet
Rätt URL är http://www.cosmologyathome.org/
Det betyder att serveradressen har ändrats från det ögonblick du anslutit till projektet. Nu måste du återansluta till projektet. De där. ta bort projektet och återanslut genom att ange rätt serveradress. Allt som skrevs ovan gällde projektledaren installerad på en lokal maskin. Till den "lokala chefen".
Om du har en bil, ja, det är lättare för dig att hantera den. Men om du har tio av dem är det lättare för dig att ansluta var och en och hantera dem centralt med hjälp av "BAM" - "Boink Account Manager". Läs mer om det.

Helt dedikerad till BOINC-frågor.

Arbetar på IT-avdelningen, jag observerar ständigt datorer som är inaktiva av olika organisatoriska skäl och är väldigt uttråkade. De gyllene dagarna med Bitcoin-brytning på CPU:n är över, och på jakt efter en ny användbar aktivitet kom jag till frivillig distribuerad datoranvändning, i synnerhet till World Community Grid. Det första steget i sökandet efter ett botemedel mot cancer var en kall standby-server och en lågprioriterad virtuell maskin på ett virtualiseringskluster. Det är svårare med arbetsstationer, de kommer och går hela tiden, att installera, konfigurera och sedan ta bort BOINC på var och en är tidskrävande och lågteknologiskt.

Det beslutades att montera en livedistribution med en inbyggd BOINC och distribuera den över nätverket Slå på datorn, tryck på F12, välj önskat föremål - och du gynnar redan mänskligheten!

Debian valdes som plattform, som a) har varit bekant sedan länge och b) har en underbar manual om det önskade ämnet. Det kunde dock inte göras utan en rake, och i det här fallet innebär nästan varje ny rake en ganska lång återmontering av bilden. Jag hoppas att det här inlägget kommer att spara lite admintid och samtidigt påminna dig om att det finns ett så underbart projekt som WCG.

Observera att allt gjordes i en mycket sluten miljö och mycket lite uppmärksamhet behövde ägnas åt säkerhet. I ditt fall kan du behöva göra lite extra arbete med säkerheten.

Förberedelse

Systemet består av detta:
  1. Nätverksstartserver.
  2. NFS-server
  3. Monteringsstation
Jag har 2 och 3 - en bil.

1. Nätverksstartserver. Jag hade redan allt klart, jag hade konfigurerat TFTP och DHCP som blev över från tunna klientprojektet. Om du inte har en är det lätt att hämta en ny. I ett nötskal, vi installerar och kör tftpd-hpa, och i DHCP anger vi parametrarna 66 och 67. Låt bara inte vem som helst starta upp över nätverket (i mitt fall är dessa kadetter), detta kan vara farligt. Förutom BIOS kan du lösenordsskydda en del av TFTP-serverns startmeny.

2. NFS-server. Först måste BOINC kunna spara sina data under drift. Det antas att den lokala hårddisken inte kan röras, så med NFS tillåter vi skrivning till en katalog, till exempel /srv/boinc-nfs. Här kommer varje dator att skapa en underkatalog med ett namn som matchar dess MAC-adress. För det andra kommer katalogen /srv/debian-live att innehålla rotfilsystemet för nätverksstart. Så:
mkdir /srv/debian-live mkdir /srv/boinc-nfs chown ingen:nogroup /srv/boinc-nfs chmod 755 /srv/boinc-nfs
Lägg till i /etc/exports:
/srv/boinc-nfs *(rw,sync,no_root_squash,no_subtree_check) /srv/debian-live *(ro,async,no_root_squash,no_subtree_check)
varefter vi startar om tjänsten (av någon anledning gav den rekommenderade exportfs -rv inga resultat för mig):
/etc/init.d/nfs-kernel-server omstart
3. Monteringsstation. Det är bara en virtuell maskin som kör vanlig Debian Wheezy. Live-build-paketet är installerat, vilket kommer att göra huvudarbetet. Det måste finnas internet här.

Byggprocess

Vi går till samlingsstationen.
mkdir /srv/live-default && cd /srv/live-default
Vi skapar en grundläggande konfiguration för vår distribution och anger NFS-serveradressen:
lb config -b netboot --net-root-path "/srv/debian-live" --net-root-server "192.168.15.20"
Ett träd med kataloger bildas; genom att placera olika innehåll i dem kan du anpassa din sammansättning. Vi lägger till följande:
1. config/package-lists/boinc.list - lista över paket som kommer att behövas i vår build. Vi skriver i den:
boinc-klient nfs-common
2. config/includes.chroot/etc/init.d/boinc-preps - ett init-skript som monterar NFS, konfigurerar BOINC och ändrar värdnamnet (kanske samma värdnamn hindrar WCG från att identifiera datorn, med dem gick många uppgifter till fristående tillstånd). I det här skriptet måste du infoga adressen till din NFS och adresserna till de värdar från vilka lösenordslös hantering kommer att tillåtas. Skriptinnehåll:
#!/bin/bash ### BEGIN INIT INFO # Ger: boinc-preps # Required-Start: nfs-common # Required-Stop: # Bör-Start: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Diverse saker för BOINC # Beskrivning: Diverse saker för BOINC ### END INIT INFO PATH=/sbin:/usr/sbin:/bin:/usr/bin . /lib/init/vars.sh do_start () ( MYMAC=`ifconfig eth0 | grep -o -E "([[:xdigit:]](1,2):)(5)[[:xdigit:]]( 1,2)" | sed s/://g` ancien=`hostname` nouveau=DYNWCG-$MYMAC mkdir -p /mnt/boinc-nfs mount 192.168.15.20:/srv/boinc-nfs /mnt/boinc- nfs && mkdir -p /mnt/boinc-nfs/$MYMAC tjänst boinc stop sed -i "s/^BOINC_DIR=.*/BOINC_DIR=\/mnt\/boinc-nfs\/$MYMAC/;s/^BOINC_USER= .*/BOINC_USER=\"root\"/" /etc/default/boinc-client echo "192.168.10.60" > /mnt/boinc-nfs/$MYMAC/remote_hosts.cfg echo "192.168.10.61" >> /mnt /boinc-nfs/$MYMAC/remote_hosts.cfg echo "" >> /mnt/boinc-nfs/$MYMAC/gui_rpc_auth.cfg för fil i \ /etc/hostname \ /etc/hosts # du kan lägga till #/etc/ här ssh/ssh_host_rsa_key.pub \ #/etc/ssh/ssh_host_dsa_key.pub \ # om du behöver SSH gör [ -f $file ] && sed -i.old -e "s:$ancien:$nouveau:g" $file klar anropa -rc.d hostname.sh starta invoke-rc.d nätverk force-reload tjänst boinc start ) case "$1" i start|"") do_start ;; restart|reload|force-reload|status) echo "Fel: argumentet "$1" stöds inte" >&2 exit 3 ;; stopp) # NOP utgång 3 ;; *) echo "Användning: ... " >&2 avsluta 3 ;; esac:
3. config/hooks/boinc-preps-init.chroot - ett enkommandoskript som kommer att köras under montering och lägga till boinc-preps från föregående stycke för att starta:
#!/bin/sh update-rc.d boinc-preps standardinställningar
Efter att ha lagt till de nödvändiga inställningarna startar vi själva monteringen:
lb byggd
Värdet för oss är den resulterande filen binary.netboot.tar. Låt oss packa upp det i /srv:
cd /srv && tar -xvf live-default/binary.netboot.tar
Det kommer att packas upp i /srv/debian-live (root FS för nätverksstart) och /srv/tftpboot (filer för TFTP-server). I mitt fall är byggstationen och NFS-servern en dator, så /srv/debian-live är redan på plats.
Innehållet i tftpboot är en färdig startmeny, den måste placeras på en TFTP-server. Jag kontrollerade inte dess funktion, eftersom jag har en fungerande TFTP-server med en egen meny, och härifrån behövde jag bara en del av datan. Först kopierade jag alla filer från tftpboot/live/ till TFTP-servern i images/debian-live/ (i förhållande till TFTP-serverns rotkatalog). För det andra, från tftpboot/live.cfg lånade jag texten som lägger till ett nytt menyalternativ, samtidigt som jag ändrade det till detta tillstånd (här måste du också ange adressen till din NFS-server):
label live-686-pae menyetikett BOINC-live (686-pae) linux images/debian-live/vmlinuz1 initrd images/debian-live/initrd1.img append boot=live config nosplash root=/dev/nfs nfsroot=192.168. 15.20:/srv/debian-live
Nu är allt på sin plats.

Om du efter montering vill kontrollera innehållet i rotfilsystemet, behöver du inte starta upp med det, du kan helt enkelt montera det som en loopenhet:
montera -o loop,ro /srv/debian-live/live/filesystem.squashfs /mnt/squash/
Om du behöver bygga om distributionen med nya parametrar, innan du gör detta kan du göra antingen lb clean --binary eller lb clean .

Användande

  1. Slå på datorn och välj boota över nätverket (vanligtvis trycker du bara på F12).
  2. Beroende på startmenyn väljer vi antingen alternativet "BOINC-live" eller väntar helt enkelt tills det tar timeout för att starta.
  3. I kommandoraden som visas (om allt gick som det skulle), skriv sudo ifconfig (du behöver inte ange ett lösenord) och skriv ner IP-adressen.
  4. På kontrolldatorn (en av de som vi angav i config/includes.chroot/etc/init.d/boinc-preps) starta boinc-manager, klicka på "Avancerat - Byt dator" (denna knapp är endast tillgänglig i "Full vy" ”). BOINC bör dock inte fråga användaren om några lösenord.
  5. Efter anslutning visas en guide där du måste välja ett projekt (i mitt fall är det World Community Grid) och ange ditt användarnamn/lösenord.
Det är det, om några minuter kommer nya uppgifter att dyka upp i tillstånden "Redo att lansera" och "Kör".
Denna procedur behöver bara utföras en gång för varje dator (mer exakt, för varje MAC-adress). Även om datorn återvänder till dig efter långvarig användning på en annan plats, kommer datorn att hitta sina data på NFS-servern med hjälp av MAC-adress och fortsätta arbeta direkt efter att den har slagits på (endast vissa uppgifter kommer redan att löpa ut, men detta är en bagatell, kommer den att ta emot nya).

Resultat

Det som återstår olöst:
  • Autologga in till WCG. Det är förmodligen möjligt att bädda in projektkonfigurationen i bilden så att du inte behöver ange något manuellt alls, men lösningen kunde inte googlas inom rimlig tid.
  • E-postmeddelanden. För att undvika att skriva "sudo ifconfig" kan du automatiskt skicka adressen till den dator som startar till administratören. Jag gjorde dock inte detta eftersom jag är en krycka och det är bättre att implementera föregående punkt istället.
  • NFS-serverns IP är listad två gånger, kanske en av dem kan tas bort.
  • För att skapa en datorkatalog används alltid MAC-adressen för eth0-gränssnittet. Om detta är bra eller inte kan jag inte säga med säkerhet.

  • Låt inte datorer bli uttråkade! Och skriv kommentarer, jag svarar gärna eller lägger till i artikeln.

De använder BOINC-plattformen, som utvecklades för cirka tio år sedan vid University of California i Berkeley. Det första steget för att delta i en av dem är att installera programmet BOINC Manager.

Installera och konfigurera BOINC-klienten

Efter nedladdning och installation av klientprogrammet kan du ange ett eller flera projekt som du vill gå med i. Från och med den sjätte versionen stöder BOINC-klienten flexibla datorinställningar som låter dig specificera exakt vilken del av hårdvaruresurserna en person är villig att offra för vetenskapens behov. Dessutom kan du ställa in BOINC Manager att automatiskt pausa när vissa program startas eller utföra beräkningar endast vid vissa timmar. Beräkningar kan pausas manuellt helt eller selektivt när som helst och lika enkelt återupptas.

Inställningar för CPU- och GPU-beräkningar i BOINC-klienten

Utöver alternativen för själva klientapplikationen har varje projekt inställningar via webbgränssnittet på deltagarens personliga sida.

BOINC projektinställningar via webbgränssnitt

Du kan utvärdera din dators beräkningskraft med det inbyggda riktmärket BOINC. Det används också ibland för att jämföra den faktiska prestandan för olika konfigurationer.

Inbyggt BOINC-klientprestandatest

Att välja projekt utifrån tillgängliga resurser

När man utför vetenskapliga beräkningar spelar prestandan för de FPU-enheter som utför flyttalsberäkningar en viktig roll. Beräkningarnas noggrannhet kan variera. Vanligtvis talar de om tre typer som implementeras i praktiken:

  • FP16 (Half Precision) - Flyttalsberäkningar med halv precision;
  • FP32 (Single Precision) - enkelprecisions flyttalsberäkningar;
  • FP64 (Double Precision) - dubbla precisionsflyttalsberäkningar.

Det är den senare typen av beräkning (FP64, eller binary64 enligt IEEE 754-standarden) som är mest efterfrågad i BOINC-beräkningar och andra vetenskapliga program, eftersom den låter dig arbeta med värden inom intervallet ≈ 10 -308 till 10 308 med en noggrannhet på 15 siffror (i decimaluttryck) efter kommatecken. Andelen enkelprecisionsberäkningar är dock också mycket stor och till och med tillräcklig för enskilda projekt.

Moderna grafikkort stöder generell datorteknik. Alla videochips som släpps efter 2007 kommer att hantera vetenskapliga beräkningar bättre än en CPU med liknande priser av en liknande generation.

Arkitektur och beräkningshastighet för FP32- och FP64-typerna för vissa grafikkort

Om tidigare nVidia dominerade detta segment (inklusive genom lanseringen av Tesla-acceleratorer med samma arkitektur), nu ser fler och fler projekt mot AMD (ATI).

Ett exempel på att köra BOINC-projekt på ett AMD-grafikkort

Det finns även projekt som stöder acceleration på AMD-grafikkort, men som inte fungerar med nVidia-produkter.

BOINC-projekt med exklusivt stöd för AMD-grafikkort

Förmodligen beror detta på det faktum att nVidia-grafikkort på GK104-chipet vid en hög hastighet av FP32-beräkningar visar en kraftig prestandaminskning i FP64-typ beräkningar. Till exempel, om Radeon HD 6930 utför beräkningar med dubbel precision fyra gånger långsammare än med enkel precision (480 respektive 1920 gigaflops), då är GeForce GTX 680 tjugofyra gånger långsammare (128 och 3090 gigaflops).

När "sista" inte betyder "bäst"

Användningen av modernare marker i sig innebär inte alltid en ökning av hastigheten. Till exempel är HD 6850 inte kapabel till dubbel precisionsberäkningar, men HD 5850 utför FP64-beräkningar på upp till 418 gigaflops.

Videokort i toppklass har ofta samma prestanda som en server med flera processorer. Till exempel innehåller ett grafikkort med ett HD 7970-chip 2048 datorkärnor, kombinerade till 32 block. Dess teoretiska prestanda är 3789 gigaflops för enkelprecisionsoperationer och 947 gigaflops för dubbelprecisionsoperationer.

Som jämförelse: den aritmetiska delen av Core-i5 3570K-processorn ger 122 gigaflops (FP32) och 61 gigaflops (FP64) i turboläge, och Intel HD Graphics 4000 ger en ökning med ytterligare 147 gigaflops (FP32). För AMD A10-5800K är den beräknade aritmetiska prestandan också på nivån 122 gigaflops (FP32) och 61 gigaflops (FP64), men Radeon HD 7660D-videokärnan ger en fyrfaldig ökning - med 614 gigaflops (FP32).

Nu är det definitivt vettigt att välja de projekt som kan beräknas med grafikkort eller åtminstone inbyggda grafikkärnor. Men mellan den teoretiska prestationsgränsen och det praktiskt uppnådda resultatet är det ofta en skillnad inte med procent, utan med flera gånger. Det bestäms av kvalifikationerna hos programmerare och optimeringsgränser för varje specifik uppgift.

Till exempel bearbetas uppgifter i Einstein@home-projektet på en dator med Core-i3 2100 och ett Radeon HD 6850 grafikkort med en hastighet av 49,5 gigaflops och POEM@home - 71,4 gigaflops med samma inställningar. Båda projekten förklarar stöd för acceleration av beräkningar av AMD-grafikkort.

Elkostnader

En viktig punkt är energieffektiviteten i olika system. För närvarande varierar det från 1 till 20 gigaflops per watt, och den här parametern påverkar direkt hur din elräkning ökar. Ur kostnadseffektivitetssynpunkt är inte bara specialiserade acceleratorer och serverlösningar attraktiva, utan även APU:er och individuella massproducerade videochips. AMD:s mest intressanta chips ligger närmare början av prisklassen, medan nVidias främst ligger i den övre tredjedelen.

Till exempel är effektiviteten för ett billigt Radeon HD 7770 grafikkort 16 gigaflops per watt i FP32-beräkningar, men dess användning för FP64-beräkningar är omotiverad - här kommer det att visa ett resultat på endast 1,0 gigaflops per watt. Till och med HD 4750-chippet, som släpptes 2009, hade en mycket bättre siffra - 2,5 gigaflops per watt.

GeForce GTX 660Ti tillhör den övre delen av mellanprisklassen, men använder energi mer effektivt: 16,4 gigaflops per watt i FP32-beräkningar och 2,1 gigaflops per watt i dubbelprecisionsberäkningar.

Om du (teoretiskt sett) håller BOINC i konstant bearbetningsläge och inte stänger av datorn, kommer den med en strömförbrukning på ≈ 200 W att lägga till mindre än 150 kWh till mätaravläsningarna per månad. I ett typiskt användningsscenario (när BOINC endast är aktiv under vilotid, och datorn arbetar flera timmar om dagen och stängs av på natten) - mindre än tio kilowattimmar.

Kanske kommer dessa små utgifter till stöd för forskarteamen vid världens ledande universitet att verka mer försvarliga för många än att donera till tvivelaktiga välgörenhetsorganisationer.

Det här är en kort version av att ställa in BOINC-klienten för dem som inte gillar att läsa mycket och som omedelbart "sugen på att gå." Trots överflöd av alternativ och möjligheter hos BOINC kan du i de flesta fall lämna alla standardvärden; enligt min åsikt finns det bara 3 riktigt viktiga alternativ som alla behöver konfigurera, som vi nu kommer att konfigurera i bara 4 steg. Skärmbilderna är från den engelska versionen av klienten 6.12.26, namnen på alternativen anges på engelska och dupliceras inom parentes med den ryska översättningen i dess nuvarande version (översättningen kan skilja sig något från version till version).

1. Som standard arbetar BOINC Manager i "förenklat" läge, där många nödvändiga funktioner inte är tillgängliga. Därför, om du inte har gjort detta tidigare, växla till "avancerat" läge (avancerad vy) genom att trycka på motsvarande knapp:


2. Öppna BOINC Manager-inställningarna:
I programversioner från 6.12.xx finns de i menyalternativet Verktyg --> Beräkningsinställningar (Verktyg --> Klientinställningar)
I äldre versioner, särskilt 6.10.xx, i avsnittet Avancerat --> Inställningar (Avancerat --> Inställningar)

3. På fliken "processoranvändning" ställer du in följande alternativ:


"Medan processoranvändningen är mindre än XX procent" = 0
Det här alternativet stoppar beräkningarna helt när processorbelastningen av användarprogram (med vilket vi menar andra program än själva BOINC, inklusive de som körs i bakgrunden) överstiger XX%. 0% betyder ignorera CPU-användning av andra program. Det rekommenderas att ställa in exakt 0, eftersom beräkningar utförs med lägsta prioritet och stör inte under normala förhållanden andra programs arbete (eftersom datorresurser dynamiskt omfördelas till deras fördel av operativsystemet). Eller så kan du ställa in ditt eget värde, till exempel 80-90 % (dvs. pausa beräkningen endast under hög belastning). Standardvärdet (25%) är inte bra - beräkningarna kommer att stanna vid minsta användaraktivitet, såväl som till exempel att starta en antivirussökning i bakgrunden eller parallell användning av Folding@Home.

Om du bara vill använda en del av processorerna/kärnorna som finns tillgängliga på datorn för BOINC-beräkningar, ställ in detta i följande alternativ: "På miltiprocessorsystem, använd högst XX % av processorerna" (I flerprocessorsystem, använd XX % av det totala antalet processorer). Värdet anges i %, dvs. för att bara använda 3 kärnor på en 4-kärnig processor, ställ in den på 75%, 1 kärna på en 2-kärnig processor - 50%, etc.
På flerkärniga/flertrådade processorer är denna metod att föredra för att reglera/reducera belastningen (till exempel vid överhettning) jämfört med "använd högst XX % CPU-tid" (Använd högst XX % av tiden för varje processor), eftersom det ger en mer "jämn" belastning på processorn och sparar dessutom RAM (genom att minska antalet parallella processer/beräkningsmoduler).
Om du tänker använda alla kärnor, lämna helt enkelt standardvärdet, dvs. 100 %.

4. På fliken "nätverksanvändning", i kolumnen "Ytterligare arbetsbuffert XX dagar" anger du storleken på jobbcachen:


Ett stort utbud av uppgifter gör att du kan undvika stillestånd i händelse av långvariga problem med Internet eller fel på projektservrarna. Rekommenderade värden från 2 till 8 dagar. Samtidigt, ju mer regelbundet datorn arbetar, desto större storlek på jobbcachen kan ställas in. Regelbundenhet hänvisar till datorns driftläge; idealisk regelbundenhet är att arbeta 24/7 (24 timmar om dygnet, 7 dagar i veckan) eller varje dag, till exempel exakt 10 timmar. Kontorsdatorer (ungefär 9/5-läge) kan också anses vara ganska vanliga. Men om datorn slås på sporadiskt - inte varje dag och arbetstiden är annorlunda varje dag, är det inte tillrådligt att ställa in en stor cache med uppgifter, eftersom klienten kommer att göra stora misstag när de beräknar det erforderliga antalet uppgifter (i bitar) för att säkerställa leveransen du angett (i dagar) och som ett resultat kan de ladda ner fler uppgifter än du kan slutföra i tid. Jag rekommenderar inte att du använder alternativet "Ladda uppgifter i XX dagar" för att ställa in cachestorleken, eftersom förutom cachestorleken ställer den också in frekvensen för anslutningar till projektservrarna (i originalet kallas detta objekt "Anslut ungefär var XX dag") och genom att sätta ett stort värde där får vi en situation där klienten kommer att vänta i flera dagar innan du skickar de räknade uppgifterna till servern och får en portion färska.

Om du är intresserad av mer detaljerade inställningar eller en beskrivning av några alternativ, läs då hela BOINC-inställningarna som finns här: (det kommer att finnas en länk här när denna fullständiga version är klar)