Sin dall'avvio di BOINC, la questione dell'assegnazione dei crediti è sempre stata al centro di dibattiti e polemiche. Il sistema dei crediti per BOINC era stato pensato per poter assegnare un punteggio in base alla quantità di elaborazione effettivamente svolta (o offerta) da un volontario. Il problema però è proprio quello di valutare quanto lavoro viene effettivamente svolto da un pc e poterlo comparare con gli altri progetti. Non tutti i progetti infatti utilizzano le stesse risorse del pc, ci sono dei progetti che sfruttano molto la cpu (cpu intensive), e altri che la sfruttano poco (non cpu intensive) ma utilizzano altre risorse come la banda della rete (come nel caso di DepSpid) o il disco; se poi ci mettiamo anche la questione dei client ottimizzati e della facilità con coi il metodo originale dei crediti può essere manipolato, si capisce bene che il problema dell'assegnazione dei crediti non è di facile risoluzione. Molti progetti per questo hanno deciso di utilizzare dei propri sistemi di assegnazione crediti (non più basati sul benchmark di BOINC), ma non tutti assegnano gli stessi crediti allo stesso computer. Una differenza alta tra vari progetti falsa di fatto le statistiche combinate e può favorire alcuni progetti piuttosto che altri.
Per questo il Dott. David Anderson ha deciso di trovare una soluzione al problema e alcuni giorni fa ha scritto una nella mailing list ufficiale di BOINC, invitando i gestori dei vari progetti a normalizzare i crediti assegnati, rendendoli più vicini possibile a quelli assegnati da Seti@home, facendo notare che ci sono progetti che arrivano a dare quasi il doppio dei crediti per lo stesso pc. A questa pagina e a quest'altra trovate una tabella comparativa dei crediti assegnati dai vari progetti. Inoltre il Dott. Anderson ha proposto un possibile nuovo sistema da adottare per l'assegnazione dei crediti. Tale metodo permetterebbe di rendere comparabili i crediti dei vari progetti, utilizzando delle funzioni per la normalizzazione dei crediti, ma dicono che questo sistema richieda troppe risorse per essere messo in pratica.
- La comparazione dei crediti totali combinati degli utenti è più importante di quella dei crediti totali per singolo progetto
- Nella scelta di un progetto, la generosità/avarizia di crediti di quel progetto è un fattore importante, ma non il principale.
- C'è bisogno di un qualche livello di bilanciamento tra i crediti "erogati" dai progetti a livello di risorse fornite ("crediti per ora" in particolare)
- Allo stato attuale non è emerso alcun metodo chiaro per farlo
- Determinare come misurare e comparare differenti risorse (CPU, RAM, Banda ecc) è un problema
- 6) Usare il benchmark di BOINC senza altri strumenti non è, allo stato attuale, un'opzione ragionevole
- 7) Nessuna delle opzioni principali proposte per modificare il sistema dei crediti soddisfa in modo accettabile i punti da 1 a 6
Inoltre sono state poste le seguenti domande e relative risposte:
- Perchè non si può utilizzare il FLOP come parametro di misurazione? Non tutte le applicazioni sono basate sui FLOP. Alcune svolgono calcoli sugli interi, altre fanno un uso intensivo di banda, di spazio o comunque utilizzano altre risorse non prettamente legate alla CPU.
- Perchè non si può utilizzare il Tempo CPU come parametro di misurazione? Non tutti i computer compiono lo stesso lavoro nello stesso tempo. Inoltre, non tutte le applicazioni sfruttano principalmente la CPU.
Per chi è interessato, qui trova il log completo delle due sessioni:
- http://boinc.rieselsieve.com/credit_discussion_2pm.php
- http://boinc.rieselsieve.com/credit_discussion_8pm.php