Torna indietro   Hardware Upgrade Forum > Software > Linux, Unix, OS alternativi

DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve
Dopo quasi un mese di utilizzo quotidiano e un viaggio medio-lungo in autostrada, raccontiamo pregi e limiti della Geely EX5: comfort premium, batteria LFP da 60,22 kWh, autonomia fino a 430 km e un prezzo che parte da 38.900 €
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 14-12-2009, 11:43   #1
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
Compilazione distribuita di più kernel simultaneamente

salve, sto portando avanti un progettino (IMHO niente male) ed ora mi trovo con questo dubbio amletico...
dunque, la domanda fondamentale è semplice:
posso compilare "n" kernel (sia versioni uguali che diverse) allo stesso tempo sulla stessa macchina??

cercando in rete pare che nessuno si sia mai posto questo problema (o che non l'abbia mai avuto), pensando ci 5 minuti ho concluso che, se per copilare i kernel si usa il symlink /usr/src/linux la risposta è "ovviamente no".

e se io invce non usassi quel link?
voglio dire, se compilassi tutto nella directory che crea l'estrazione della tarball?
ad esempio linux-source-2.6.bla-bla...

leggendo questo post di torvalds (niente popò di meno di...) anche lui consiglia di lasciar perdere il symlink, ma il dubbio ed il timore, mi vengono quando leggo che i maintainers delle glibc stessi continuano a contare sull'esistenza di questo link, e se non lo trovassero??
mi rendo conto che la cosa peggiore sarebbe la compilazione di un kernel corrotto ma, dato che sul mio poveretto di un pc ci metto anche 5 ore a compilare un kernel generico senza nessuna ottimizzazione o potatina sono un po' titubante...

qualcuno si è mai posto questo interrogativo? avete risolto in qualche modo?
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2009, 19:44   #2
Gimli[2BV!2B]
Senior Member
 
L'Avatar di Gimli[2BV!2B]
 
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3010
Puoi compilare quanti kernel vuoi contemporaneamente, ma direi che è assolutamente controproducente.

Con l'opzione j puoi saturare il sistema con una singola compilazione
, mentre lanciando più compilazioni in parallelo finiresti per saturare prima il sottosistema disco (un disco meccanico passerebbe dei brutti momenti, un ssd un po' meno...), ottenendo quasi certamente risultati peggiori.

Il link simbolico /usr/src/linux mi torna utile solo quando mi capita di compilare qualcosa che va a cercare i sorgenti del kernel.
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...)
Gimli[2BV!2B] è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2009, 21:06   #3
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
si, certo, non ho intenzione di compilarmi 50 kernel tutti assieme sulla stessa macchina, ma nemmeno 2 alla volta.
forse è il caso di svuotare il sacco??

dunque, da dove comincio...
questa idea mi è nata circa un annetto fa, stavo cercando di pensare ad un progetto che potesse essere portato come tesi di laurea (informatica) e mi sono trovato a ragionare su quanto potesse essere bello un servizio di compilazione kernel online (poi le cose sono andate diversamente e la tesi pure...).

il concetto non è difficile, avete mai compilato un kernel su un computer non troppo potente? magari un P3 500MHz con 256MB di ram? e magari un kernel non troppo ottimizzato, qualcosa di generico da far girare su tutte le vostre macchine che avete in casa?
io si, e tutte le volte mi veniva voglia di tagliarmi le vene, anche perchè un computer del genere in compilazione è praticamente inutilizzabile!!

allora mi sono detto, ma quanto sarebbe figo se potessi usare tutti i miei pc (essì, ne ho un po') per compilare un kernel in maniera distribuita?
dunque mi sono documentato, ho scoperto distcc, bellissimo software che permette di distribuite la compilazione tramite gcc su una intera rete di computer.
l'ho installato su 4 pc, l'ho configurato a dovere ed ho lanciato sta benedetta/maledetta compilazione del kernel, beh, come intuirete tutti quanti è stata tutta un'altra storia!!
nonostante i computer non fossero particolarmente potenti la differenza l'ho notata eccome!

la mia rete era composta da:
P4 1,7GHz 640MB
P3 533MHz 128MB
duron 700MHz 512MB
P1 133MHz 64MB

come funziona distcc?
riducendo all'osso:
si installa un distccd (notare la d) su una macchina principale, il client, questo demone si occuperà di intercettare tutte le chiamate a gcc e le diestribuisce ai vari server della rete in base a quali sono al momento disponibili e ad una lista di priorità.

una volta finito di compilare il mio primo kernel "distribuito" ero tutto gasato ed ho pensato: "beh, ma non mi risulta che esista una cosa del genere in rete al giorno d'oggi...", al ché mi sono messo a lavorare per tirare su un server web con DB e annessi e connessi che fosse in grado di ricevere le richieste della "povera gente", fatto questo mi mancava da implementare il "dietro le quinte" ma poi il tempo ha cominciato a scemare ed ho lasciato perdere tutto quanto.

ora che la tesi è finita ho finalmente ancora un po' di tempo da poterci dedicare e mi chiedevo se qualcuno avesse dei consigli o magari volesse addirittura partecipare allo sviluppo di questo progetto.

detto questo, fatevi avanti...
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2009, 22:34   #4
Mister24
Senior Member
 
L'Avatar di Mister24
 
Iscritto dal: Mar 2005
Città: Pisa
Messaggi: 2038
Tre considerazioni:
I PC sono sempre più potenti e dunque la compilazione del kernel che un tempo impiegava diverse ore attualmente richiede poche decine di minuti e in futuro sempre meno.

La gente che ha necessità di compilare il kernel da se è veramente poca.

Ti ci vuole una potenza di calcolo disumana, metti che un centinaio di persone ti chiedano di compilare il kernel. Mi sembra normale che dovresti compilare il kernel più velocemente di come lo farebbero sul loro PC. Inoltre come pensi di pagare tutta questa potenza? I PC andrebbero sempre tenuti aggiornati altrimenti nel giro di pochi mesi ti ritrovi con niente.

Per questi motivi penso che il progetto non sia realizzabile e poco utile.
Mister24 è offline   Rispondi citando il messaggio o parte di esso
Old 14-12-2009, 22:39   #5
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
Quote:
Originariamente inviato da Mister24 Guarda i messaggi
Tre considerazioni:
I PC sono sempre più potenti e dunque la compilazione del kernel che un tempo impiegava diverse ore attualmente richiede poche decine di minuti e in futuro sempre meno.

La gente che ha necessità di compilare il kernel da se è veramente poca.

Ti ci vuole una potenza di calcolo disumana, metti che un centinaio di persone ti chiedano di compilare il kernel. Mi sembra normale che dovresti compilare il kernel più velocemente di come lo farebbero sul loro PC. Inoltre come pensi di pagare tutta questa potenza? I PC andrebbero sempre tenuti aggiornati altrimenti nel giro di pochi mesi ti ritrovi con niente.

Per questi motivi penso che il progetto non sia realizzabile e poco utile.
hai ragione, concordo.

ma la voglia di imparare e di sperimentare dove la mettiamo?
kurts è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2009, 08:37   #6
HexDEF6
Senior Member
 
L'Avatar di HexDEF6
 
Iscritto dal: Dec 2000
Città: Trento
Messaggi: 5917
se non ricordo male kernel, xorg e pochi altri pacchetti sono tra quei pacchetti che non si possono (piu' che altro non si dovrebbero) compilare nemmeno con un -j 3 pena problemi vari...
con altri pacchetti, distcc risolve il problema... pero' funziona bene se tutte le macchine sono allineate (pensa se ci fossero 2 gcc differenti, credo che il risultato possa essere un casotto)

Ciao
__________________
Linux User #272700 >+++++++++[<+++++++++>-]<+.++.>++++[<---->-]<++.+++++++.
HOWTO: SSH Firewall e DMZ
ɐɹdosoʇʇos oʇuǝs ıɯ
HexDEF6 è offline   Rispondi citando il messaggio o parte di esso
Old 16-12-2009, 10:30   #7
Dane
Senior Member
 
L'Avatar di Dane
 
Iscritto dal: Jun 2001
Città: Gorizia/Trieste/Slovenia
Messaggi: 4338
comunque, per usare distcc con profitto devi usare un numero di j pari a (circa) il totale dei processori che compilano (vado a memoria).

Su sistemi vecchi,
secondo me una delle soluzioni migliori ( a parte di smontare il disco e infilarlo nel pc più potente) è di far fare al "lento" da server NFS, e di chroottare (in caso fare un chroot a 32 bit partendo dal sistema a 64bit) dal pc "potente", magari compilando in ram.
vado avanti così da 6 mesi e non ho sostanziali problemi (gentoo).



Comunque, se il problema era che stavi troppo tempo a compilare il kernel, potevi risolvere compilandolo da un altro pc e poi spostare solo kernel ed eventuali moduli.
__________________
Dio ha fatto il cavo, il diavolo il wireless.

"CCIE-level challenges should stay in CCIE labs." (cit I.Pepelnjak)
Dane è offline   Rispondi citando il messaggio o parte di esso
Old 17-12-2009, 10:45   #8
kurts
Senior Member
 
L'Avatar di kurts
 
Iscritto dal: Oct 2009
Città: Varese
Messaggi: 307
con distcc non c'è bisogno di impostare il numero di processori utilizzati nella compilazione e nemmeno di montare dischi remoti con nfs.
il distccd si occupa di inviare una piccola parte dei file compilati ad vari server disponibili che quindi se li compilano in locale per poi restituirli compilati al client.

l'unica accortezza è di avere sempre la stessa versione di gcc su tuttti i client, altrimenti potrebbero verificarsi strani problemi.

inoltre non è che non abbia gia provato a compilare sulla macchina più potente, il problema è che per me ci mette comunque troppo
kurts è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Proxmox annuncia il supporto 24/7 e l'ap...
Esperto smonta le previsioni no-IA con b...
Motorola edge 70 plus, una versione di r...
Lenovo porta l'IA nei PC business: Think...
Lenovo IdeaPad Vibe cambia look: sette c...
Fino a 3,4 GHz per la prossima generazio...
Lenovo lancia i nuovi Yoga AI: due PC co...
Il tuo PC da gaming può aiutare g...
Audio senza cuffie per una persona sola:...
A IFA 2026 Hisense mette l'IA al centro ...
Accusata di favoreggiamento nella strage...
Braccia rubate all'agricoltura: John Dee...
HONOR non si ferma più: arriva anche il ...
Nexus, il mercato nero che ha messo in v...
NVIDIA acquisisce Hugging Face per 12,93...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 02:11.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v