Ghetto AI: Come ho assemblato la mia workstation AI con hardware usato e l’aiuto dell’IA

Hai mai avuto un’idea brillante basata sull’intelligenza artificiale, per poi essere bloccato da un errore “CUDA out of memory”? Quella era la mia realtà. La mia fidata workstation, basata su una singola NVIDIA GTX 1060 da 6GB di VRAM, non era più all’altezza nell’era dei moderni modelli linguistici di grandi dimensioni (LLM). Era il momento di un upgrade serio, ma il mio budget non era sufficiente per una macchina nuova di zecca.

Questo post racconta il mio viaggio nel mondo dell’hardware fai-da-te e della caccia al tesoro nel mercato dell’usato per costruire una potente workstation AI con doppia GPU senza spendere una fortuna. Spiegherò come ho trasformato una collezione di componenti, alcuni già in mio possesso e altri recuperati, in un centro di calcolo per l’IA, utilizzando la stessa tecnologia che volevo esplorare  (AI come Gemini e ChatGPT) per guidarmi nel processo, dalla scelta dei componenti alla risoluzione dei problemi.

Il Punto di Rottura: Perché la Mia Vecchia Build Doveva Cambiare

Il mio percorso nell’universo dell’IA locale è iniziato con quella fedele GTX 1060. È stata una scheda video capace, che mi ha accompagnato nelle mie prime incursioni nel mondo dell’AI locale. Tuttavia, con l’aumentare delle mie ambizioni, aumentava anche la dimensione dei modelli che volevo eseguire. Provare a caricare anche solo LLM di medie dimensioni era diventato un esercizio di futilità. I 6GB di VRAM, all’inizio sufficienti, erano diventati un frustrante collo di bottiglia che limitava ogni esperimento.

Il piano era ambizioso: costruire un nuovo PC assemblato attorno a due potenti schede NVIDIA che avevo recuperato: una mostruosa RTX 3090 con ben 24GB di VRAM (fortunatamente acquistata appena prima che il mercato delle schede video e delle RAM impazzisse) e una versatile RTX 2060 con 12GB. Questa configurazione a doppia GPU mi avrebbe fornito abbastanza potenza per eseguire modelli di medie dimensioni e la flessibilità per sperimentare con più task contemporaneamente. La sfida? Possedevo le GPU e un alimentatore adeguato da 1000W, ma tutto il resto (scheda madre, CPU, RAM) doveva essere reperito nel mercato dell’hardware usato.

L’IA come Co-pilota: a Caccia di Componenti d’Oro

Con i miei componenti principali in mano, mi sono trovato di fronte al complesso compito di trovare parti compatibili sul mercato di seconda mano. Come si può essere sicuri che una scheda madre del 2018 funzioni correttamente con una CPU e due generazioni diverse di schede NVIDIA? È qui che mi sono rivolto ai miei assistenti AI.

Ho trattato Gemini e ChatGPT come dei manuali hardware interattivi. I miei prompt erano simili a questo:

“Possiedo una NVIDIA RTX 3090 e una RTX 2060, oltre a un alimentatore da 1000W. Quali sono alcune schede madri e CPU economiche, disponibili sul mercato dell’usato, che possano supportare entrambe le schede e fornire abbastanza linee PCIe per farle funzionare efficacemente?”

Le IA mi hanno fornito un fantastico punto di partenza, suggerendo specifici chipset e modelli di schede madri noti per il loro robusto supporto PCIe e la loro compatibilità. Mi hanno aiutato a creare una lista della spesa di componenti da cercare online, trasformando una ricerca caotica in una caccia al tesoro mirata. Armato di queste informazioni, sono riuscito ad acquistare una scheda madre usata, una CPU compatibile e la RAM, senza la paura di incappare in acquisti errati.

Ogni volta che trovavo offerte compatibili con il mio budget, sottoponevo i componenti dell’eventule build ad entrambi i modelli, verificando che non ci fossero incrongruenze fra le loro risposte. Scheda madre, RAM, processore e dissipatore; le AI mi hanno aiutato a scegliere e ad assemblare tutti i componenti (mi hanno guidato perfino nella scelta della posizione in cui montare le due schede video).

IL Risultato

  • AMD Ryzen 5 3600 (architettura Zen). È una CPU a 6 core fisici che, grazie al multithreading, mette a disposizione del sistema 12 core logici (thread). Gira a una frequenza base di 3600 MHz ma può spingersi in overclock automatico fino a 4200 MHz quando ha bisogno di massima potenza. La cache L3 è generosa: ben 32 MB, il che aiuta parecchio nei carichi di lavoro pesanti o nella gestione di algoritmi complessi.
  • 32 GB di RAM DDR4, configurati in un impianto Dual-Channel. Nello specifico, ci sono 4 banchi da 8 GB ciascuno. I moduli provengono da due kit differenti ma perfettamente compatibili. Tutti quanti girano alla frequenza di 3000 MT/s. La scheda madre supporta comunque fino a un massimo di 128 GB, quindi c’è ancora margine se in futuro volessi fare un upgrade estremo.
  • Scheda madre MSI, per l’esattezza la X470 GAMING PLUS MAX (MS-7B79). Una base solida, nata su chipset AMD X470 e dotata di socket AM4. C’è abbondanza di slot per schede aggiuntive. Lo slot principale PCI Express x16 ospita la GPU principale, la 3090, mentre uno slot PCIe x8 ospita la 2060.
  • Hard Disk: ho optato per un disco M.2 PCIe SSD da 256GB, che pur essendo collegato a una singola lina PCIe (x1) risulta molto veloce per caricare i modelli degli LLM che eseguo.

Non si tratta di un mostro di ultima generazione, ovviamente, ma di un discreto mulo che, con un budget molto limitato, mi ha permesso di eseguire discreti carichi di lavoro.

E si, quella nella foto in copertina è proprio lei!
Lo so, è proprio brutta e senza un case è un ricettacolo di polvere, ma provvederò in futuro (forse)

L’Imprevisto è d’Obbligo: Risoluzione dei Problemi con l’IA

Come ogni appassionato di homelab sa, nessun assemblaggio è completo senza qualche momento di smarrimento. Dopo aver montato l’hardware e installato un sistema operativo Linux pulito, ho incontrato un ostacolo enorme. Il sistema si avviava, ma era incredibilmente instabile. Una delle GPU “cadeva fuori dal bus” e quasi ogni processo di inferenza falliva, specialmente sotto carico.

Le mie ricerche iniziali per “instabilità Linux doppia GPU NVIDIA” mi hanno portato in un labirinto di driver complessi e compilazioni del kernel. Frustrato, sono tornato ai miei assistenti AI per un approccio più colloquiale alla risoluzione dei problemi. Ho descritto i sintomi e fornito i log e gli output dei comandi, specificando il mio hardware esatto e lo strano comportamento che stavo osservando.

Dopo alcuni scambi, una delle IA ha dato un suggerimento cruciale: indagare le impostazioni IOMMU (Input-Output Memory Management Unit) nel mio BIOS. L’IOMMU è una funzione che gestisce l’accesso alla memoria per le periferiche, ma a volte può causare conflitti con configurazioni multi-GPU su determinate schede madri. Seguendo la guida dell’IA, mi sono immerso nel BIOS, ho localizzato l’impostazione IOMMU e l’ho disabilitata. Il risultato è stato immediato e trasformativo. Al riavvio successivo, il sistema era perfettamente stabile, entrambe le GPU venivano riconosciute e la mia workstation AI “Ghetto” era finalmente pronta all’azione.

Conclusioni Chiave

Costruire questa workstation è stato un potente promemoria del fatto che non serve un budget da capogiro per creare un ambiente AI locale capace e performante. Con un po’ di ingegnosità e gli strumenti giusti (anche quelli basati sull’intelligenza artificiale) è possibile costruire qualcosa di discretamente potente. La combinazione della VRAM pura della RTX 3090 e della flessibilità della RTX 2060 ha sbloccato un nuovo mondo di possibilità per i miei progetti.

Questa esperienza ha cambiato radicalmente il mio approccio al problem-solving. Avere un assistente AI con cui confrontarsi, verificare la compatibilità e guidare la risoluzione dei problemi è come avere un esperto a disposizione 24 ore su 24, 7 giorni su 7.


Leave a Reply

Your email address will not be published. Required fields are marked *

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close