Valutazione attuale: 5 / 5

Stella attivaStella attivaStella attivaStella attivaStella attiva
 

Guida a Boinc su WSL

 

Su stimolo di un nostro volontario abbiamo provato a far funzionare il client boinc in una macchina virtuale linux (ci sono progetti che hanno solo il client linux oppure usano il wrapper per Windows) senza utilizzare il "classico" VirtualBox.
La possibilità offerta da Microsoft è quella di usare WSL (Windows Subsystem for Linux), integrato in Windows 10, con prestazioni decisamente migliori rispetto a VirtualBox.

Questa la guida


Accedi per commentare

Avatar di boboviz
boboviz ha risposto alla discussione #136882 16/11/2021 16:50

Ci ho ripensato e si potrebbe provare un qualche script con powershell, tipo usando wmic.
Provo a metter giù qualcosa.


Allora, ho trovato un articolo al riguardo e ricordavo bene. Il comando è una cosa tipo:
wmic process where name="Nome Processo" CALL setpriority "Numero" o "Stringa"

Per Numero si intende il valore da dare al processo (tipo 32, 64, 128, ecc), mentre la Stringa è più facile da usare/ricordare. Lo schema è questo
- inattivo: 64 (o "idle")
- sotto il normale: 16384 (o "sotto il normale")
- normale: 32 (o "normale")
- sopra il normale: 32768 (o "sopra il normale")
- alta priorità: 128 (o "priorità alta")
- tempo reale: 256 (o "tempo reale")

Manca solo un pc su cui provarlo.....
Avatar di boboviz
boboviz ha risposto alla discussione #136880 15/11/2021 12:26

Sarebbe interessante sapere se si possono regolare le priorità dei processi lato windows.
Attualmente sul primo criceto-radioactive su cui sono passatto da virtualbox a WSL1 (non può caricare il 2) non si possono regolare neanche post-lancio con process explorer eseguito come admin e processi boinc girano a priorità 8 (cioè normal) portando a varie tipologie di lag.


Ci ho ripensato e si potrebbe provare un qualche script con powershell, tipo usando wmic.
Provo a metter giù qualcosa.
Avatar di boboviz
boboviz ha risposto alla discussione #136873 11/11/2021 15:44

- Aggiunta parte per installazione WSL2 su Windows 11 (WSL1 non esiste più su quel sistema)
- Aggiunto supporto ufficiale MS alla accellerazione su GPU (prima era solo sperimentale) su Windows 11 e Windows 10 21H1.


Sembra che MS stia puntando a WSL in maniera decisa.
Questa settimana è stato rilasciato Visual Studio 2022 che, tra le tante altre cose, ha il supporto nativo a WSL.
In pratica si scrive il codice in ambiente Windows e poi lo si può provare immediatamente sotto Linux.

P.S.
Non sono sviluppatore e non me ne intendo, ma se devo scrivere codice per Linux non è meglio che lo faccio già sotto Linux? Forse lo hanno fatto per chi ha la necessità di fare codice che giri in entrambi gli ambienti....
Avatar di boboviz
boboviz ha risposto alla discussione #136858 08/11/2021 12:17

Aggiornerò la guida quando avrò sotto mano un Win11 su cui fare i test


Fatto:
- Aggiunta parte per installazione WSL2 su Windows 11 (WSL1 non esiste più su quel sistema)
- Aggiunto supporto ufficiale MS alla accellerazione su GPU (prima era solo sperimentale) su Windows 11 e Windows 10 21H1.
Avatar di boboviz
boboviz ha risposto alla discussione #136765 18/10/2021 10:10

Dai primi test su Windows 11, sembra che la versione aggiornata di WSL2 sia quasi a livello delle prestazioni delle macchine linux non virtuali .
Ottimo


Altra novità di WSL2: non sarà più "integrato" in Windows 11 (ed installabile attraverso il pannello di controllo) ma sarà una app gratuita dello Store di MS.
Le caratteristiche NON cambieranno, ma per gli sviluppatori sarà più facile aggiornarla e manutenerla.

Aggiornerò la guida quando avrò sotto mano un Win11 su cui fare i test
Avatar di boboviz
boboviz ha risposto alla discussione #136715 03/10/2021 20:18
Dai primi test su Windows 11, sembra che la versione aggiornata di WSL2 sia quasi a livello delle prestazioni delle macchine linux non virtuali .
Ottimo
Avatar di boboviz
boboviz ha risposto alla discussione #136581 16/07/2021 18:30
La nuova versione di Windows 10 che uscirà (la 21H2) introdurrà il supporto GPU nella macchina virtuale linux.
Molto interessante!!
Avatar di zioriga
zioriga ha risposto alla discussione #136450 29/05/2021 17:57
@Astroale

Forse la mia esperienza ti può servire.
Io non avevo fatto il riavvio del PC dopo l'installazione, e ovviamente non ero riuscito a far partire WSL.

Circa mezz'ora fa ho fatto il riavvio, e con sommo disappunto ho avuto anch'io la sorpresa che internet non funzionava più.
Panico !!!!!!!!
Il router era a posto (il portatile di mia moglie funzionava.

Ho fatto girare la diagnostica di rete, ed ho trovato che era stato cambiato il gateway (se non ricordo male).

ora tutto sembra funzionare

Proverò poi a far ripartire WSL
Avatar di boboviz
boboviz ha risposto alla discussione #136440 27/05/2021 09:13

Dimenticavo di aggiornarvi, sul mio criceto in seguito ad un aggiornamento di win10 WSL-ubuntu non si connetteva più a internet, ho eseguito una disinstallazione pulita e una reinstallazione (altrettanto pulita, questa volta è riuscita anche l'attivazione della versione 2) ho messo su ubuntu 20.04 come prima, ma continua a non connettersi ad internet ... per ora ho redisinstallato tutto e sono tornato ad elaborare in modo classico.


Questo è decisamente più strano del problema di copia/incolla dello Zio.
Chi non va in internet? Windows o la macchina virtuale Linux? Che IP prende??
Scorrendo velocemente su internet sembrerebbe un problema del file resolve.conf per i dns
Avatar di boboviz
boboviz ha risposto alla discussione #136439 27/05/2021 09:12

A parte la segnalazione di Astroale, volevo segnalare il fatto che per attivare la fase 4 ho dovuto riavviare e che facendo un copia-incolla il comando non risulta corretto.
Deve essereci uno spazio tra /enable-feature e /featurename, mentre il copia-incolla fa sparire lo spazio


Riprendo qui il messaggio.
Io, lo spazio, l'ho messo nel documento.
Non so se sia il PDF a creare confusione....
Avatar di zioriga
zioriga ha risposto alla discussione #136438 26/05/2021 06:57
A parte la segnalazione di Astroale, volevo segnalare il fatto che per attivare la fase 4 ho dovuto riavviare e che facendo un copia-incolla il comando non risulta corretto.
Deve essereci uno spazio tra /enable-feature e /featurename, mentre il copia-incolla fa sparire lo spazio

Poi forse dovrei rifare un nuovo riavvio per i passi successivi. Riproverò poi
Avatar di astroale
astroale ha risposto alla discussione #136437 25/05/2021 18:14
Dimenticavo di aggiornarvi, sul mio criceto in seguito ad un aggiornamento di win10 WSL-ubuntu non si connetteva più a internet, ho eseguito una disinstallazione pulita e una reinstallazione (altrettanto pulita, questa volta è riuscita anche l'attivazione della versione 2) ho messo su ubuntu 20.04 come prima, ma continua a non connettersi ad internet ... per ora ho redisinstallato tutto e sono tornato ad elaborare in modo classico.
Avatar di zioriga
zioriga ha risposto alla discussione #136436 25/05/2021 16:50
Ho modificato il messaggio per sbaglio
Avatar di boboviz
boboviz ha risposto alla discussione #136233 27/04/2021 16:47
Caricata la versione 0.9.
Rimosse cose inutili, sistemate altre, cambiato font, ecc, ecc
Avatar di boboviz
boboviz ha risposto alla discussione #136224 26/04/2021 17:31

Sarebbe interessante sapere se si possono regolare le priorità dei processi lato windows.
Attualmente sul primo criceto-radioactive su cui sono passatto da virtualbox a WSL1 (non può caricare il 2) non si possono regolare neanche post-lancio con process explorer eseguito come admin e processi boinc girano a priorità 8 (cioè normal) portando a varie tipologie di lag.

Avevo cercato, sommariamente, anche io questa cosa ma non avevo trovato nulla di risolutivo.
Magari cerco meglio e qualcosa esiste.
Dipende se mamma Microsoft ci ha pensato...
Avatar di astroale
astroale ha risposto alla discussione #136222 26/04/2021 12:26

Con la Build 2020 di WSL , ora è posibile eseguire le GUI del Pinguino su WSL

Lo sapevo, ma allora vado a perdere un bel pò delle le performance che cercavo con WSL....

Beh immagino che come in tutti le distribuzioni, potrai stoppare la GUI e i servizi non necessari per BOINC.
Avatar di boboviz
boboviz ha risposto alla discussione #136221 26/04/2021 12:21

Con la Build 2020 di WSL , ora è posibile eseguire le GUI del Pinguino su WSL

Lo sapevo, ma allora vado a perdere un bel pò delle le performance che cercavo con WSL....
Avatar di sabayonino
sabayonino ha risposto alla discussione #136195 23/04/2021 20:43
Non saprei dirti . Non sono praticante.
Ho solo riportatato la Notizia
Avatar di astroale
astroale ha risposto alla discussione #136189 23/04/2021 15:24
Sarebbe interessante sapere se si possono regolare le priorità dei processi lato windows.

Attualmente sul primo criceto-radioactive su cui sono passatto da virtualbox a WSL1 (non può caricare il 2) non si possono regolare neanche post-lancio con process explorer eseguito come admin e processi boinc girano a priorità 8 (cioè normal) portando a varie tipologie di lag.

Sul secondo criceto-radioactive penso potrei installare WSL2 ma per ora (siccome non lo uso molto) ho lasciato ancora virtualbox, ma sarebbe interessante per fare un tentativo sapere prima se è gestita l' "ereditarietà" delle priorità dei processi WSL -> windows o quanto meno la possibilità di modificarle.
Avatar di sabayonino
sabayonino ha risposto alla discussione #136187 23/04/2021 12:07
Con la Build 2020 di WSL , ora è posibile eseguire le GUI del Pinguino su WSL

Avatar di boboviz
boboviz ha risposto alla discussione #136017 31/03/2021 12:21

Ahia, mi sa che allora devo metter giù una versione 0.8 in cui spiego questa cosa..

Fatto, caricata la versione 0.8, dove ho aggiunto le note di Astroale e ho corretto tutta una serie di errori ed imprecisioni.
Avatar di boboviz
boboviz ha risposto alla discussione #135946 21/03/2021 16:23

mi spiego: se virtualbox potevi farlo girare a priorità IDLE:4 (ma non serviva a nulla visto che girava dentro il kernel), i processi BOINC di WSL girano a priorità normale (8, lato win10) e dopo molte ore dal boot questo inizia a pesare sul sistema e a laggare alcune app che lavorano in rete. Non ho trovato ancora il modo di abbassarne la priorità, ma è un'esposizione lunga se mai ne parlerò in un altro post.

Ho fatto vari test e non ho trovato rallentamenti con WSL. Su che progetti li hai trovati??

Riguardo WSL1 vs WSL2 come prestazioni lato BOINC non sarei così sicuro che il 2 sia superiore all'1, sulla carta la gestione migliorata del filesystem non porta grandi vantaggi al criceto, mentre tutte le funzioni aggiuntive potrebbero pesare sulla CPU.

Come prestazioni direi che siamo lì lì, ma la WSL2 ha così tante funzionalità in più che non ha senso utilizzare la 1 (a meno che non ci siano particolari problemi)

Dici che anche la seconda, dopo il riavvio del pc, viene persa e che è comunque necessario andare ad editare la chiave di registro??

:approve: Purtroppo si, inoltre il comando boinccmd.exe che supporta l'opzione deve essere vecchio di anni, non credo che nessuno con un PC win10 abbia una versione così antica di BOINC installata. Anche se scrivere la parte dell'edit del registro è sempre un po pericoloso (molta gente scappa (e a ragione) di fronte a regedit), del resto è un tipo di tuning che serve solo in casi particolari come il mio problema del client radioactive solo per linux 32.

Ahia, mi sa che allora devo metter giù una versione 0.8 in cui spiego questa cosa..
Avatar di boboviz
boboviz ha risposto alla discussione #135945 21/03/2021 16:19

Mi sa che aggiungo pure questi due link al pdf....

Fatto. E' on-line la nuova versione, la 0.7
Avatar di astroale
astroale ha risposto alla discussione #135879 12/03/2021 18:23

Non ho molta confidenza con docker, ma se hanno dockerizzato pure un tool storico come IRAF, non capisco perchè non fanno una versione dockerizzata di BOINC, poterlo usare in modo standard indipendente dalla distribuzione semplificherebbe molto le cose ... e le guide.

Avevo proposto di fare una versione per WSL di Boinc (che, dati alla mano, ha prestazioni decisamente migliori di Virtualbox) e mi è stato risposto che non tutti hanno Windows 10. C'è da considerare, però, che la richiesta io l'avevo fatta che c'era solo WSL1, che non era il massimo.

Aggiungerei che installare WSL non è per gli allergici alla cmd-line mentre installare virtualbox è più semplice. Inoltre dopo qualche giorno inizio ad accorgermi che WSL tutto sommato rende il PC più fluido ma in certe condizioni continua a dare problemi, mi spiego: se virtualbox potevi farlo girare a priorità IDLE:4 (ma non serviva a nulla visto che girava dentro il kernel), i processi BOINC di WSL girano a priorità normale (8, lato win10) e dopo molte ore dal boot questo inizia a pesare sul sistema e a laggare alcune app che lavorano in rete. Non ho trovato ancora il modo di abbassarne la priorità, ma è un'esposizione lunga se mai ne parlerò in un altro post.

Riguardo WSL1 vs WSL2 come prestazioni lato BOINC non sarei così sicuro che il 2 sia superiore all'1, sulla carta la gestione migliorata del filesystem non porta grandi vantaggi al criceto, mentre tutte le funzioni aggiuntive potrebbero pesare sulla CPU. Vedremo, nel WE potrei fare la migrazione virtualbox->WSL del secondo criceto (anche lui con sensore Radioactive e win10). Sul questo dovrei poter installare WSL2 forse così in qualche settimana possiamo fare un confronto 1-2, anche se le CPU sono piuttosto diverse.

@Bobo: a proposito ricordati della patch alla guida di cui avevamo parlato in PM

Ho messo il doppio comando boinccmd.exe e boinc.exe per le versioni vecchie e nuove del client.
Dici che anche la seconda, dopo il riavvio del pc, viene persa e che è comunque necessario andare ad editare la chiave di registro??

:approve: Purtroppo si, inoltre il comando boinccmd.exe che supporta l'opzione deve essere vecchio di anni, non credo che nessuno con un PC win10 abbia una versione così antica di BOINC installata. Anche se scrivere la parte dell'edit del registro è sempre un po pericoloso (molta gente scappa (e a ragione) di fronte a regedit), del resto è un tipo di tuning che serve solo in casi particolari come il mio problema del client radioactive solo per linux 32.
Avatar di boboviz
boboviz ha risposto alla discussione #135877 12/03/2021 17:18

Boinc in versione container Docker esiste e lo sto usando sui miei pc linux.
DockerHub e GitHub


MOLTO interessanti questi due link (tra l'altro vedo che sono stati recentemente aggiornati)
Sembra pure ci sia supporto alle gpu, ma dovrei studiarmelo meglio.
Mi sa che aggiungo pure questi due link al pdf....

Articoli

Guida WSL

Updated
Written on 26/02/2021, 18:14 by boboviz
guida-wslGuida a Boinc su WSL   Su stimolo di un nostro volontario abbiamo provato a far funzionare il client boinc in una macchina virtuale linux (ci sono...

Ultime dal Blog

Written on 03/08/2021, 22:27 by boboviz
foldit-e-alphafoldLa "svolta" AlphaFold è una delle più importanti degli ultimi anni, motivo per cui ho deciso di tradurre l'articolo che parla della sua implementazione in...