
Eu tenho um monte de placas gráficas antigas por aí. Todos têm entre 10 e 15 anos e não têm nenhum propósito a não ser ocupar espaço. Como aproveitar seu poder de computação sem conectá-lo a um PC. Posso ligar um gpu com um raspberry pi usando um conversor pci x16 para usb ou soldar fios na placa e conectá-los ao gpio de um rpi? Posso realmente fazer algo útil com esses cartões ou eles são totalmente inúteis? Tempo e eficiência não são problema aqui porque estou fazendo isso apenas para experimentação e para aprender como as GPUs realmente funcionam.
Responder1
Os drivers são o seu problema. As placas gráficas são computadores pequenos e independentes feitos especificamente para funcionar com seus componentes integrados usando um design denominado "placa de referência". Você deve ter ouvido esse termo referindo-se à versão mais básica de uma placa de vídeo no varejo para placas de vídeo de terceiros. A própria placa possui firmware que gerencia os componentes integrados, como o BIOS da placa-mãe, e os drivers são instalados no sistema operacional para informar ao sistema operacional como usar a placa. Sem o conector de interface e os drivers para o seu sistema, esse sistema não pode tirar proveito da placa e é imprevisível se tiver um "driver de vídeo padrão".
Minhas regras para manter placas de vídeo são as seguintes:
Se a placa for PCI, guarde-a ou tente vendê-la. Algumas placas-mãe com capacidade PCI clássica ainda existem para configurações HTPC usando chips ARM e CPUs não padronizadas semelhantes. Placas de vídeo PCI são difíceis de encontrar porque elas têm apenas essa demanda de nicho, e muitas não são tão poderosas quanto as AMD Radeon on-die que seus processadores suportam.
Se a placa for PCI-E, guarde-a. Se você não puder usá-lo e for novo o suficiente, venda-o. Se você pode usá-lo, mas não precisa dele, guarde um sobressalente para o caso de sua placa de vídeo falhar e você precisar conectar outra para sobreviver enquanto compra uma nova.
Se a placa for AGP de última geração, como as primeiras placas GeForce ou as placas Voodoo5 e Voodoo6, você poderá vendê-la para entusiastas. Se for uma placa AGP anterior, recicle-a.
Responder2
Vou ignorar o aspecto da conexão física que provavelmente pode ser feita via USB. Se o seu projeto for computacionalmente pesado, a largura de banda fraca do USB não o impedirá muito.
Se ele não suportar OpenCL (ambos/genérico), AMD (processadores Stream) ou CUDA (NVIDIA), não haverá maneiras fáceis de explorar seu desempenho.
É improvável que todas as placas, exceto as mais recentes, suportem OpenCL.
https://en.wikipedia.org/wiki/CUDA
https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units
https://en.wikipedia.org/wiki/OpenCL
Se você encontrar um software que suporte um dos três métodos acima, basta instalar os drivers e o software e executá-lo, e ele detectará o hardware compatível e o usará automaticamente.
Caso contrário, você terá que aprender a programar para todos os três padrões para ter certeza. Então você pode escrever seu próprio código.
Mesmo assim, cartões tão antigos provavelmente terão apenas 30 a 80 núcleos e não produzirão melhorias que mudem vidas. Em comparação, placas modernas com 1.000 a 4.000 núcleos podem reduzir um projeto de renderização de vídeo de 2 horas para minutos.
Mesmo 14 núcleos de CPU trabalhando ao mesmo tempo completam apenas 7.537 em comparação com a GPU no mesmo período de tempo.