Raspberry pi'ye bir GPU bağlayın


15

Bir GPU GT640'ı Raspberry pi model B'ye bağlamak istiyorum. Doğrudan bir bağlantı olmadığını ve aktarım verilerinin çok farklı olduğunu biliyorum. GPU işlem gücünden yararlanmak için bu cihazları bağlama şansı var mı? gerçek zamanlı iletişim için gerekli değildir, ancak teoride bu mümkün müdür?


GT640 PCI 3.0 16x'i RPi USB 2.0 ile bağlayan bir kart yapmak için MCS9990 (PCIe - 4 Portlu USB 2.0 Ana Bilgisayar Denetleyicisi) kullanmayı planlıyorum. Tek zorluk bu çipin sürücüsü olduğunu düşünüyorum ama geliştirmek için zamanım var. Bunu uygularsam, diğer yazılımlar hakkında (CUDA ve GForce sürücüsü) kart sürücüsünün üstünde çalışırlar mı?
Arturo Veras

İşi yapacak bir arayüz buldum. Bu bir olan USB 3.0 PCI Express Gen 2 periferik Denetleyici. Bir PCI Express Gen 2 x1 bağlantı noktası ve bir USB 3.0 SuperSpeed ​​istemci bağlantı noktası içerir. USB 3.0'ın USB 2.0'ı da desteklediğini biliyorum: + USB Yüksek Hızlı ( USB 2.0 ) 480 Mbit / s + USB Süper Hızlı ( USB 3.0 ) 5 Gbit / s + Harici PCI Express 2.0 × 1 4 Gbit / s + Harici PCI Express 3.0 × 16 32Gbit / s USB 2.0 Raspberry pi bağlantı noktasıyla sınırlı olacağım.
Arturo Veras

3
Sonra cidden bunu yapmaya çalışmaktan kaçınmanızı öneririm
nagyben

Sürücüleri programlamak çok zordur, özellikle de daha önce hiç yapılmamış bir şey olduğunda
nagyben

Raspberry Pi'nin ana işlemcisi zaten VideoCore IV tabanlı bir GPU'dur.
Erkin Alp Güney

Yanıtlar:


3

neredeyse imkansız.

bunun yerine ucuz PC kutusunu kullanmaya çalışsanız iyi olur, çünkü GT640 ve / veya Raspberry Pi'nizi kızartmak için çok yüksek bir risk vardır.


Almos neden imkansız? MCS9901CV-CC gibi bir USB adaptör yonga seti PCIe kullanmayı düşünüyordum, ters yolu denemek istiyorum.
Arturo Veras

@ArturoVeras çünkü bu cihazların birbirine bağlı ve / veya birlikte kullanılması gerekmiyor. yazmanız gereken eksik sürücüler ve yazılımlar olsa da, performans gayretli olur ve tüm çabaları tartışır.
lenik

Belki de noktayı kaçırıyorum. Yanlışsam beni düzeltin, fikir ahududu, bir şekilde nasıl, bir GPU'ya bağlamaktır. Daha sonra bununla bir küme yapabilir ve daha fazla işlem gücüne sahip olabiliriz. Fikir GPU bin çekirdeği yerine iletim PCIe hızından yararlanmak değil. MCS9901CV gibi GPIO oa çipini kullanarak iletişim kurabilirsem, harika olacak çünkü bu daha fazla Ahududu pi ekleyip bir küme ve voila yapabileceğim anlamına geliyor!
Arturo Veras

1
@ArturoVeras, RaspPi GPIO'ya daha basit bir işlemci bağlamayı ve onunla makul bir şekilde iletişim kurmayı başardınız mı? Lenik'e katılıyorum, son derece zor bir görev (önce PCIe mimarisini ve GPU iletişimini inceleyin) ve fayda çok küçük. Belki bir alıştırma olarak önce doğrudan PC'nizdeki PCIe veriyoluna bağlı GPU ile iletişim kurmaya çalışın.
ssavec

Hayır. PCIe protokolünü inceliyorum ve Raspberry pi GPIO ile iletişim kurabiliyor muyum. PE4L-PM060A kullanmayı düşündüğünüz şey nedir, PCIe - mPCIe adaptörüdür. PCI 1x arabiriminin sadece PC1 16x bant genişliğini azalttığını fark ettim, bunu umursamıyorum. Bu tür şeyler bana yardımcı olabilir çünkü mPCIe arayüzü olan bir geliştirme kartı kullanabilirim.
Arturo Veras

3

Mümkün olabilir, ancak lütfen kendi sürücülerinizi yazmanız ve güç sorunlarını çözmeniz gerektiğini unutmayın, çünkü RasPi'nin kendi başına tam bir PCI / PCI-E GPU'ya güç sağlayabileceğinden şüpheliyim. Lütfen CPU'nun GPU'nun gücünü de etkileyeceğini unutmayın, bu yüzden denemeden önce araştırma yapmak bir fikir olabilir. <--- Buna ek olarak, gpu madencilik teçhizatında yaygın olarak kullanılan 1x ila 16x gücünde bir yükseltici kablo kullanabilirsiniz. USB için de adaptör kartları kullanan başka güç yükseltici kablolar var.


Bu benim endişem, güç sorunları. GPU'ya harici bir güç kaynağı kullanmak istersem aklımdaki sorunlar nelerdir?
Arturo Veras

1

Uygun bir GPU'ya arabirim oluşturmak için kullanabileceğiniz bir PCI Express x1 kart yuvasına sahip bir startKIT kullanabilirsiniz (muhtemelen kendi sürücülerinizi yazmanız gerekir) ve bu daha sonra GPIO başlığı üzerinden Pi ile arabirim oluşturabilir.

Kısacası: evet, bunu yapabileceğiniz tüm donanımlar var ve kolayca elde edilebilir, yapmanız gereken tek şey yapıştırıcı mantığı yazmak, ancak kolay olmasını beklemeyin.


GPIO'yu bir MCS9901 ile PCIe'ye bağlayabilir misiniz?
Arturo Veras

StartKIT sadece PCIe ve de RPi arasına bir donanım arayüzü ekler mi? Bahsettiğiniz sürücüler startKit'te mi yoksa RPi'de mi yazılmalıdır? Bir sürücüyü programlamanın zorluğu nedir?
Arturo Veras

Muhtemelen çok zor. Aslında bunun ne kadar mümkün olduğundan emin değilim, ancak teorik olarak startKIT ile istediğiniz şeyi yapmak için gerekli donanım ve ortama sahip olacaksınız.

1
USB 2380 hakkında ne düşünüyorsun ? Çözüm gibi görünüyor, tek sorun GT640 16x PCIe ve USB 2380 1x PCIe için, ama bence bu hiç sorun değil.
Arturo Veras

@ArturoVeras Ürün detaylarına erişim olmadan söylemek zor, ancak yine de zor olmasını beklemek mümkün gibi görünüyor. Ayrıca, muhtemelen bir ana bilgisayar olarak Pi olduğu zaman kart gücü tam olarak yararlanamayacaksınız.

1

Öyleyse, ölü ipliği uyandırmak için, şahsen bir Raspberry Pi'de yapmam. En azından Pi 3'ü masaüstü GPU için tasarlanmış ve özel bir güç kaynağıyla çalışan bir mPCIe - PCIe adaptörüyle öneriyorum. Ayrıca Linux sürümünün bunun için sürücü desteğine sahip olduğundan emin olmanız gerekir; birisinin bunları yazmak zorunda olduğu bir sürücü yoksa doğru varlıklarla ve kaynak koduyla aylar alabilir. Bu şekilde yapmak% 100 mümkündür, ancak daha önce yapılmadıysa, topluluk için yazmak için yeterince yetenekli olmanız gerekecektir.


Tabii ki NVidia'nın çıkardığı herhangi bir Linux sürücüsü PC benzeri donanıma hedeflenecek - OP'nin FPS (saniyede kare) yerine yararlı bir şey yapmak için veri akışını sağlayabileceğine inanamıyorum. herhangi bir yararlı ekran çıkışı alabilir varsayarak ben FPM veya PFH ölçülür olacağını iddia ediyorum! 8-)
SlySven

Ayrıca NVidia, açık kaynak kod sürücüleri yerine yalnızca kapalı ikili dosyaları dağıtır (aynı şekilde GPU'yu çalıştırmak için RPi'de kullanılan ikili blobları elde ettiğimiz şekilde), bu da gelişmekte olan sürücüleri çok imkansız olmasa bile çok daha zor hale getirir. .
SlySven

Bu da doğrudur ve dikkate alınmalıdır. Bulabileceğiniz herhangi bir kod ve pi 3 için mühendis tersine çevrilmelidir. Muhtemelen bir çözüm oluşturmak için bir dizi etik hacker veya birkaç şirket bir araya gelecektir. Her iki anlamda da ilginç ve sınırda görmek komik olurdu.
Robschwab1

0

Karşılaştığınız bir diğer sorun, CPU'nun sadece 700 MHz'de çalıştığı için grafik kartını tıkayacağıdır. Ben çok daha ucuz bir GT 210 ile denemek istiyorum (Hangi 20 $ - 30 $ için bulabilirsiniz). Sürücülerinizle ilgili olarak açık kaynaklı Nvidia sürücülerini bulabilir ve ARM'de derleyebilirsiniz.


Bununla ilgili özel sorun nedir? sadece GPU bazı hesaplamaya ihtiyacım var gerçek zamanlı uygulamalar gerekmez.
Arturo Veras

Peki ya bu kart? SBC-A510 Tek Kartlı Bilgisayar . 800 MHz CPU'ya sahip ve PCIe 1x yuvası ile geliyor.
Arturo Veras

0

Sadece eski bir ipliğe çarpmak. Neredeyse imkansız, ama asıl sebep, sürücü yazmak değil, kapitalizm ve bürokrasidir.

Tabii, sürücüleri yazmak çok zor, ama destansı bir ekiple çalışın ve güneş doğmadan önce yapılacaktı.

Tüm video kartı için mevcut kaynak kodlarına ve belki de BCM2835, BCM2836 veya BCM2837 için kaynak kodlarına (sırasıyla Pi 1, 2 ve 3) erişmek daha da zor olabilir. Kartların içeride nasıl çalıştığını öğrenmek ve birbirleriyle arayüz kurmak için bir yol bulmak için bunlara ihtiyacınız var.

Kaynak kodlarını alma şansını elde etmek için bir OEM olmanız gerekir. Kendisi bile Ahududu Pi vakıf olan vardı o güçlükle olan ve işlemci ve GPU ile arayüzü için önceden derlenmiş blob yerleşmek zorunda.

Güç gereksinimleri hiç sorun olmazdı, çünkü [şirket adı] yalvarırken bunu zaten çözmüşsünüzdür. Muhtemelen video kartına bağlı bir PC PSU ve Pi'yi 5V rayı üzerinden çalıştırıyor.


0

MCS9990, PCIe arabirimine sahip bir sistemde ek USB / ISA / GPIO bağlantı noktaları sağlamak için tasarlanmış bir PCIe - USB / ISA köprüsüdür. PCIe aygıtını yalnızca RPi gibi USB olan bir sisteme bağlamak için kullanılamaz. Dolayısıyla bu yaklaşım en baştan mahkumdur.


-1

Tek sorunun sürücüler olacak. Bir Nvidia GPU'nun Pi üzerinde çalışmasını sağlamak çok güzel olurdu, ancak bu neredeyse kendi GPU'nuzu sıfırdan oluşturmak kadar zor.

İnsanlar haklı, donanım imkansız değil, ama kabataslak olacak. Ancak, kesinlikle sürücülere ihtiyacınız olacak. Kendiniz yazabilseniz bile, GPU'daki hız ve özelliklerin tümünü kullanacak şekilde optimize edilmezler.

Bunu eski bir Nvidia GForce ile denemek istedim, ancak donanım korsanlığı deneyimi olmayan berbat bir programcıyım.

Uzun bir çekim olduğunu düşündüm, ancak RTX piyasaya sürüldükten hemen sonra NVidia'ya e-posta gönderdim ve Pi için 2010 öncesi birkaç GPU için sürücüleri derleyip derlememelerini ve indirilmelerini veya serbest bırakılmaları için uygun olup olmadıklarını sordum. insanların kendilerini derlemeleri için kaynak kodu. Açıkçası "hayır" dediler.

İşte bir şey, dizüstü bilgisayarlar için harici GPU'larımız var ( maliyetler dikkate alınmıyor ) ve yeni Pi 3B + 'daki Wi-Fi'nin hızlı olması gerekiyor, neden işe yarayıp yaramayacağını görmüyorsunuz?


Yararlı olsa da, bunun bir yanıt sağlayıp sağlamadığından veya bir öneri olup olmadığından emin değilim.
Greenonline

@ Greenonline Bu bir öneri ve bir aswer olarak tasarlandı (Son cümleyi tekrar
oku
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.