Ciao *
visto che sembra funzionare e che potrebbe servire vi spiattello la procedura che sto usando da ieri sera per bloccare in automatico le WU di rosetta in vista del Pentathlon.
Si basa sugli strumenti che mette a disposizione lo stesso BOINC e in particolare
Boinccmd tool
.
Qui il parametro --get_tasks consente di avere lo stato attuale di tutti i task (WU) in esecuzione, mentre "--task" consente di annullare/sospendere/riprendere una WU.
Quindi quello che ho fatto è semplicemente:-
1- ogni tot (2,5 minuti per me) prendere l'output di --get_tasks
2- scorrere tutto l'output (io ho usato un file di testo) ed analizzarlo riga per riga
3- appena trova la riga che inizia per " name: " salva il resto della riga, è il nome della WU che si darà a "--task"
4- continua a leggere e quando trova la riga " project URL:
boinc.bakerlab.org/rosetta/\r" entra in un ciclo interno
5- qui legge finché non arriva la riga che comincia con " suspended via GUI: ", quello che segue sarà "yes" o "no" e significa che la WU trovata al punto 3 è attiva (elaborazione/attesa) oppure sospesa. Salvo lo stato per il mio output (facoltativo)
6- continuo fino alla riga che comincia per " fraction done: ", il resto della riga è, nella forma 0.1234, la percentuale completata
7- a questo punto se lo stato della WU è "no" e la fraction è >= 35 (
vedi qua
) invia il "--task" tramite boinccmd e sospende la WU.
8- continua a leggere tutto il file fino alla fine e termina fino alla prossima esecuzione.
Tutto qui, l'unico problema è che l'ho buttato giù ieri sera in 1 oretta più o meno e per comodità è uno script PHP che gira nel mio pc/server di sviluppo. E si ricarica direttamente nel browser via JavaScript.
Servirebbe qualcuno che sappia tradurlo in un exe/com/bat per Win e bash/py/perl/... per Linux in modo che possa essere eseguito in automatico dal PC (pianificazione di Win o Cron di Linux).
Io passo perché non saprei neanche da dove cominciare, visto che i .bat non li tocco dai tempi dell'MS-DOS
Un'altra alternativa è sfruttare il fatto che PHP funziona anche a linea di comando, ma scaricare e installare tutto PHP solo per questa cosa mi sembra sprecato.
Se qualcuno riesce a seguire questa strada, magari può verificare se bastano solo pochi pezzi (eseguibili, dll) invece che tutto il pacchetto. Io purtroppo non posso provarci per non compromettere il mio ambiente WAMP
Lo stesso script che allego l'ho già passato a Morse che appena può ci mette le mani, ma adesso è al lavoro, quindi:
AAA VOLONTARI CERCANSI
Allego il file e passo a voi.
Bye, R!
Questo accessorio è nascosto per gli ospiti.
Effettua il login o registrati per vederlo.