Raspberry Pi GPU Bringup LIVE - Nvidia GeForce GTX 1080

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

Just posting here in case anyone's interested in following alongβ€”I don't have too high of hopes this card will work, but it is newer than the other Nvidia cards I've been testing, so maybe that counts for something.

But I'll try the Nvidia driver (probably won't work), and if it has issues then I'll recompile the kernel and try Nouveau. That probably won't work either, but seeing that this card uses like 200W of power, there are plenty of other issues I may face that might be fun to explore together on a livestream!

πŸ‘οΈŽ︎ 8 πŸ‘€οΈŽ︎ u/geerlingguy πŸ“…οΈŽ︎ May 13 2021 πŸ—«︎ replies

you need to switch your mic on

πŸ‘οΈŽ︎ 1 πŸ‘€οΈŽ︎ u/created4this πŸ“…οΈŽ︎ May 13 2021 πŸ—«︎ replies

I was live and i asked katie for how mutch power the compute model need:)

πŸ‘οΈŽ︎ 1 πŸ‘€οΈŽ︎ u/zifjon πŸ“…οΈŽ︎ May 14 2021 πŸ—«︎ replies
Captions
[Music] please all right now you can hear me that was annoying so yeah every time i start obs since i move my computer around it switches to a different audio input so now you can actually hear me and hopefully you could at least hear that beautiful music before i came on and didn't talk but anyway if you can hear me put in chat that i that you can hear me and we'll see if that actually works okay good anyway today i'm going to try getting this geforce gtx 1080 working on this raspberry pi compute module 4 uh this for if you don't know it this is actually a full raspberry pi but it's on a little board that doesn't have any input or outputs instead it has these these tiny little connectors uh focus focus it's focusing on my face i think there we go see those tiny little connectors so you can connect this to any kind of board um for example the the i o board over here this guy which is not showing at all uh my camera just shut down this is the fun thing about using a raspberry pi as your webcam it actually can turn itself off by itself so i'm going to unplug that and plug it back in see if it comes back but anyway you can plug this into different boards and the i o board itself has a pci express slot on it so you can plug in video cards and things like that like this one so that's what we're going to try to do today i've actually tried five different video cards including in the last video that i did this little guy which is an m.2 video card from a asrock or asrock rack so it's fun to see the size comparison of this little m2 card and this insanely chunky video card that i will pull out now i oops i just opened this upside down i'm glad it didn't fall out on me because this is worth more than all the raspberry pies i own because of the gpu shortage this year this was sent to me by somebody in texas eric who is a friend and former co-worker he does do a lot of gaming which i don't do a whole lot of gaming but he actually had a 30 90 in his hands this was before the gpu shortage he had a 30-90 and then he sold it off or gave it to somebody else or something and now he's regretting that decision but he also had this 1080 which he's going to use in a build but he told me i could use it for this testing and ship it back to him so i'm very grateful to him for that but here is the card this is monstrous if you don't actually build gaming pcs or if you used to working on laptops or things this is a a very big card and it's very heavy too as a size comparison here's that m.2 video card and here's the 1080 from msi now these come in a few different shapes and sizes but this is msi's version of the 1080 the not not the ti or anything like that and another card that i had tested was uh the one with the the buy one pci express slot right here this is the 710 gt710 from zotac you can actually buy these things new and uh it's one of the few video cards you can actually find in stock anywhere these days um but yeah this is the 1080. we're gonna see if we can get it working on the pie now there's a few uh physical constraints we have and let me see if i can get the desk cam working there we go yeah i just had to reboot the pi up here now you can see up here is a raspberry pi webcam it's running off of pi zero and this is actually running like the first version i ever set up of it so you can find a video on my youtube channel that i might link to later after this thing's over to set that up if you want to use one but it's not the best quality in the world but it's good quality good enough and i just wanted to have a camera to show you things over here so here's this giant graphics card and even has a fancy look at this a fancy protector for the uh for the pci express slot won't be needing that though um so the first problem we have and let me move my microphone so you can hear me better the first problem that we have is on the i o board it only has a buy one slot so there's a couple different things you could do i could i could cut this little edge of this slot right here um and that way you could fit a card with all these pins into that slot however this card is i don't know four pounds five pounds it's massive so it would just kind of fall out of the board so another thing you can do is use an adapter like this now there's some issues with this still and we're going to see if this works today or if i need to do something else but this is basically buy one two by 16. and a by 16 card or by eight card or by four or whatever size will work in a buy one slot it'll just limit the bandwidth at least that's how the spec is supposed to work every once in a while there's a card like you know network controllers and things like that that won't work but this is supposed to work so actually before i do this i'm going to go and take a quick picture and i'll show you why let me go to my screen share oh goodness yikes let's move obs to another monitor here there we go um so i'm testing all these video cards because i'm trying to build up a database of all the different cards that that you can use on a raspberry pi because the raspberry pi is a very flexible computing platform that i use for tons of different projects around my house and in a lot of places use them in places of business or in products and things like that and being able to use pci express cards allows you to do some really cool things with the pi that weren't possible before this current generation of compute module 4. so for each of these devices on github i open an issue and i want to make sure that i i document the full experience so throughout this video i'll be copying pasting things over to this issue and the first thing i do with every card is take a quick picture so i'm gonna what's that the um live stream chapters live stream chapters oh okay yeah yeah yeah i'm i'm terrible at remember to remembering to do any of these things so this should switch to unboxing let's see if it actually does okay yeah sorry about that um live streaming is a lot harder than you'd think if you're trying to do more than one thing at the same time so i'm going to go take a picture of it over at my uh little picture ticking station so it'll be a little quieter over there because i don't have my wireless microphone set up uh so i'll switch to the other camera so you can at least see me do that but it'll be really quick hold excuse on this is my sister who's helping me on these live streams hello very briefly there's my camera all right back to here and so i got the picture i'm gonna stick it on my computer and i just realized my other camera is plugged in where i plug in my card reader let me do this and i'll go to screen and let's bring up iphoto import all right here we are and i'll touch it up just a tiny bit and i'll export it so i can put it on that site oh come on iphoto it's photos now it's not iphoto but whatever all right i'll put this picture up there and i think i forgot to advance the step so there take picture update that all right so we have a picture of it that's the first step that's the easiest part because i don't have to plug it in and i have no no possibility of the magic smoke escaping on it yet because i haven't plugged in power but the next two things are going to be trying to get power to it and connecting it to the pi so let me switch back let me switch back my camera over here and it should come up briefly let's see hold on no it's still booting the pie has to boot itself up uh to be able to use the camera all right let's see if it's up there it is okay so i'm gonna plug this in to the pci express by 16 adapter here and at this point it shouldn't get enough power i'm going to boot it up and see what happens i don't think it should get enough power to actually run or do anything so i'm going to plug the pi into my 5 volt or 12 volt 5 amp adapter and see what happens here i see there's leds the fans aren't spinning i don't think the fans do spin on this one until it gets up to 60 degrees celsius or something it has like the silent mode or something what's up oh switch oh i need to switch this okay it's good to have somebody to help you with live streams how am i doing i'm doing good thanks 737 factor does jeff own an m1 armback too um no i don't yet i i'm hoping to get one that i'm kind of waiting until m2 comes out or whatever's next just because i'm hoping that um that the uh that the next generation will have like 32 gigs of ram and better specs and things okay so i'm going to switch to my screen and try logging into the pi and see what it sees right now uh ssh pi i think it's 10.0.100.119 so whoops oh my goodness okay so we're logged in lspci yeah it's not seeing it i can see lights on the card so let me switch over here i can see that there's some leds and there's a light on top so it's getting some power but i think the card to power up completely needs all the rest of the power uh someone else did someone else post a super chat what was that walter oh here we go over 600 watching yeah go ahead and hit the like button youtube analytics is always telling me i need to increase this or that or whatever i don't care too much about it because i just am trying to have some fun with this youtube channel yeah my sister says i'm vibing she's a few years younger than me so she uses these terms that i don't quite understand but yeah but uh but she's very helpful with these live streams so um okay so i'm gonna need more power for this i'm going to shut down the pie shut down now okay and that's off so i'm going gonna need more power for it and i'm going to use my goodness i'm going to use this uh reed dragon rgps 700 watt psu now i looked up the specs for this 1080 card and uh they it said that it was supposed to get up to like 200 watts or 210 watts on some crazy amount i'm i'm sitting here with my raspberry pi thinking like 60 watts or 40 watts is a huge amount and then this one card is using 200 plus watts and i saw that there's some cards that use two 8-pin connectors and can consume like 300 watts that's kind of insane so anyway i have this 700 watt psu and it's fully modular the reason i bought that is just because i hate having wires all over my desk when i'm doing these projects but this presents us with some other problems because you can't have a power supply won't turn itself on unless it's actually in a pc because normal pcs have like a power switch through the motherboard that shorts a connection that turns it on so i'm going to show you how i work around that issue first i'll go ahead and plug this in all right and am i on the right thing yeah we're not yet to the trying to get it recognized faze uh so i'm going to switch to my desk cam so you can see the setup remove the mic again so i have some power connectors here uh first of all i'm gonna connect the pi to the power supply so another thing i've found out is it's not a great idea to power different devices on the same computer from different power supplies so i just use this barrel plug it goes into the 12-volt here and they're both plugged into the same ups so you know the the power from the wall is pretty much the same it's not like i'm getting two different circuits in my house but this is a different power supply different there could be minor differences in the way the power comes in to the pi's 12 volt supply here versus what's coming to the card's other power supplies through this power supply so you can actually power the pi through a floppy connector this is a four pin um four pin floppy connector here and i have an adapter it goes from molex to floppy and another thing that this is this might be more superstition but in in some ways it's it's also makes sense like the further away from the the plug on the power supply you get the more chance that there could be a flaky connection or could be more power drop especially if you have a really long cable this one's not long enough really for that but i'm going to power the pi through the power supply like this these connectors are terrible bought these all from third parties on amazon so you never know what you're going to get but i have used it before and it worked so that's good so i'm going to power this through the power supply plug it into its rail up here and i actually took apart a 600 watt version of this power supply after i fried it um and these power rails are all kind of connected together so it's not the most complicated power supply in the world but um it is good to use separate cables for things for cable management and for the fact that you can use the closest plug to the power supply now this this guy is going to go into one of the eight port connectors up here and i hope this is right like i said i don't build pcs for a living or anything i'm not linus tech tips um but or gamer's nexus or any of those kind of things but i need i know i need on this card to go into eight pin this thing's huge eight pin up here and six pin here so this has like a split power connector six pin there so i have those two in and now at this point i think i might have solved the power issue we'll see so i have the pi plugged in there and this plugged in here now on the power supply i have it plugged in and if i turn it on nothing happens like i said it's uh it these power supplies have an internal little switch that won't turn on unless there's there's a power on pin shorted in here so i made this little guy uh and there there are commercial versions of this too i actually destroyed another power supply when i was testing this because i had other wires coming out and two of them shorted and then it shorted something internally and made the magic smoke come out but i made this little guy which jumps the ps on to ground basically saying like the motherboard is switched on so when i plug this in this should turn on the power supply this should turn on the gpu and the pi another weird issue with a lot of psus is when you have them powered up but don't have any power any load on the motherboard connector after a while something internally is like yeah there's not load and that's not great for this power supply so it shuts it off and i think part of that too is a lot of the projects that i own the pi only use like 20 or 30 watts total and this is a 700 watt psu and it's not great to run a heavy psu like this for a tiny load it's not efficient and it also can cause damage over time so these things for safety will shut themselves off if there's not enough load so anyway i'm going to yeah someone says why don't i go to switch i'm just lazy that's really the only reason so here i'm going to try this let's see what happens if i can actually line it up there we go okay so fan spinning is a good thing it's always fun when i accidentally get one of these power connectors in the little noxua fan over here that's cooling the pie because it makes fun noises the pie itself needs up to 15 watts ish this is a 12 volt power supply on the i o board but you can actually power it otg on a lot of devices like i have this uh this pi tray mini from source kit it can power it through usb and there's the pionora's coming in the mail there's a lot of things and you can power it over poe i actually am going to test some poe plus and poe plus plus adapters from a couple different people soon subscribe so you don't miss that fun fun thing so it looks like everything powered on there's no smoke yet and the psu is not turning off so i think we're good so far i'm going to switch over to the screen and we're going to see what happens here let's see okay so i'm on the screen right you can see my screen i hope yeah okay good so i'm going to switch to the next mode which is lspci we're going to see whoops oh my goodness i hit enter on the wrong screen i'm glad i didn't stop the actual chat thank you tomas for the little thumbs up pair i guess very fun all right so we're logged in lspci hey there it is okay so the next thing that i normally do on these and for some reason i closed my window so hold on i'm gonna go back to the the site where i'm doing the debugging and this is another thing that i i tell people a lot of times like people like how do you do all these things so frequently and manage all this stuff the reason i can do all this work and work on the youtube channel and all these things and work on open source is i document everything i do as i'm doing it so that i always have a reference and can always go back and do it again that's some good advice for anybody getting started in computer science or anything like that always document everything some people just have a list in their favorite text editor and they just use the list like i do these little text files all day other people use github or gitlab or a private instance of something whatever works just always document everything and it's just a huge help and since i can do it all open source i can document it in the open all right so let's see i'm going to say sudo lspci dash vvvv and i'm going to get all of this information because sometimes you need to go back and reference this information about the card so i'm going to grab this and i'm going to put in here lspci gives then i'm going to also put a note head to power the card through an external 700 watt psu so i could put power through the eight pin and six pin connectors and it's not only for me but anyone else who searches on google for how to do this stuff even if even if they're not looking for how to get this card working on a raspberry pi somebody might need to do something maybe somebody's working on the nuvo driver or something and they need to find some information this is nice to have on the internet for other people to see so that's why i often put these kind of things in github issues or on blog posts and things like that jeff is a robot while writing documentation yes eric and by the way that is the eric who is the one who who lent me this card for today's testing so thanks very much for that um yeah so it's there now the next thing i'm going to check is the bar space in my previous video on the on the um on on video cards on the pie where i talked about this little m.2 card and some other cards i mentioned that the raspberry pi foundation actually uh they actually increased the bar space on the pi the default from i think it was 64 megabytes which was way too low for a lot of things that was a problem i was running into so frequently they switched it from 64 megabytes to um to one gigabyte by default which helps with so much like almost all the cards i try now work out of the box no bar space allocation problems and i thought that was funny i actually i poked fun at the linus tech tips channel and minus media group in one of my videos and there were like probably 50 or 60 comments who didn't see the sarcasm there i i think i said something like uh this little unknown tech tech channel called minus tech tips apparently people don't understand sarcasm i mean it is the internet but i had so many comments that were like your channel is so small and and his channel's so big it's like okay okay people that was sarcasm anyways and the point was that in in one of his videos he said that the reason that gpus don't work on the pi is because it only has 256 megabytes of bar space and that's not true so anyway maybe they'll post a retraction sometime so anyway if i need to i can give myself more bar space using this guide that i wrote again i did this like six months ago if i had to do this if i did it every day i'd remember how to do it by memory but i don't i do this like once every few months now and so that's why i wrote this guide and it helps me it helps other people who need to do this and yeah that's that's why i do everything out in the open and take notes on everything i do because otherwise i couldn't replicate what i do all right so we're going to say d message and this is going to give me the kernel's output of what's happening and i want to go up to the pci express bus interface all right so here is all the pci and i could also do d message grip pci like that and just grab that but i like to see everything because sometimes there's something else weird in here that you see where you're like oh i didn't realize that happened so i'm going to grab all this here's the pci initialization and go over here and paste that in two uh d message shows all right so the the most relevant part here is these assignments the bar space assignments so everything else is here uh just saying like here it's saying that there's a five giga i forget what this is giga transactions per second or something basically gigabits ish but speeds on pci buses are weird things with full duplex and and all the different things involved in the real world you can only really get 3.4 gigabits of data through a pci bus by one on the raspberry pi gen2 um but anyway this is just saying like it's negotiating it saw something on the bus it's trying to load it it's getting it and then it sees that there's four gigabits per second of bandwidth limited by this by one link and this you can see where the pi leaves some performance on the table it's capable this card is capable of 126 gigabits per second within a by 8 or a by 16 link but it sees that it's on a pi with a very small by one link so it's going to limit it to four so what is that 126 divided by 4. we're leaving about 30 times bandwidth drop with by using this on a pi however i mean that you know a thing like this will will not use it will not need all that bandwidth if you're doing it for compute ai and things like that but down here is the assignments these all are working so that's cool uh this was this used to be a big issue before that patch landed in in the kernel and it does say that it failed to assign this here this is i o bar space and this is something that typically does not matter this is for older older pci stuff that is used on older architectures and things the drivers typically don't care if this is missing so that shouldn't be an issue but if i scroll down if you are on a linux workstation you know an x86 computer with an intel or amd chip later on here for most of the defaults you'd also see it initialize the video card somewhere down here so you can see it's it's actually initializing the vc4 gpu that's the one that's built into the pi itself but there's nothing down here that's the end of it there's nothing down here initializing nvidia so we need to install a driver and i'm going to switch excuse me i'm going to switch the nvidia driver section here and we're going to try installing nvidia's actual driver which i need to find nvidia arm 64 driver here nvidia.com download this is well i want uh g-force let's see what is this the rtx 30 no not a 30-90 it's a gtx what is this one it's a g-force gtx 1080 right gtx 10 i don't know see it in here yeah 10 series okay g-force tensors okay yeah all right hey arch see so nvidia has these drivers but i i always wonder like what systems are they actually validating them on i'd love to know that um because i would imagine they work on something um and well yeah us that's fine search okay so here's the latest driver 460.80 looks like it was released about a month ago 107 megabytes so i'm going to download it to my mac and copy it over this is another thing i hate about proprietary drivers and things if i actually it looks like i can copy this link let's see if i can copy that link and download it straight to the pi uh wget oh never mind okay so they do give you a direct link i thought at some point nvidia didn't give direct links to the file itself from their servers but it's nice that they actually do but it's not nice that it's a proprietary driver i wish that they would make it open source because if this doesn't work there's nothing i can do to make it work i might be able to help them debug it a little bit but i couldn't make it work on my own they'd have to send me a new driver version over so next thing i'm going to do is chmod it plus x nvidia so i can run it and if i do this sudo dot slash nvidia i'm going to run this i don't think it will work yet because i need to install the kernel headers for it to compile but we'll see what it does wait five oh five eleven oh two days ago so this driver is only two days old it's so new i there hopefully there's some driver engineer inside of nvidia who's whose mission in life is to get this working on the pi and he just uploaded a new version just for the stream but i don't think that's true eric is saying that he had a 30 90 on by four mode oh that's annoying hopefully that that's not the case with their driver all right so that failed and give me back okay thank you for giving me back my prompt sudo apt install all right i think it's raspberry pi kernel headers all right and i'm also going to again i'm going to document the things i'm doing here so uh driver install attempt number one downloaded what is this 460 80 driver from nvidia's website uh next up i tried and then i installed raspberry pi kernel headers okay what's the next step here and try this again let's see what happens and eric if uh if you don't have to keep paying me money to say things to me i mean i'm not gonna argue too much i guess but if uh if eric says something and i don't respond to it then other people in in chat can just reference it and mention it to me until i respond to it yeah katie is good she has a much better laugh than i do thanks you're welcome i think your laugh is fabulous oh no did i make a typo in my own thing that 80. goodness gracious okay uh ran the driver. well i don't have slack open right now so but i can i can't actually open it on my phone you know what i'll do that let's see slack slack slack there it is hopefully eric is not skipping any important meeting for this uh okay i have slack open on my phone so if eric sends me a message i can see it i might see it man this is taking forever let's see i mean it is compiling on the microsd card which is not known for blazing speeds building kernel modules yeah so another thing is again i'm going to plug the subscription subscribe to the channel because tomorrow i'm going to be talking about heavy things i'm going to be talking about this guy again i actually have this is one of the coolest new drives that i've tested this is an nvme ssd with the u.3 standard i'm going to be talking about that tomorrow in a video so subscribe so you don't miss out on that the sad thing is that this this enclosure these hard drives these are kingston like 240 gig sata drives these things i bought them for like 25 bucks or something they're probably worth like 60 bucks now because geo miners are now making hard drives hard to get to there's a super chat with a smiley face will i be making more kubernetes videos probably um i just i haven't had time lately i'm focused on some of these compute module 4 things but probably sometime later this summer i will be because i'm i'm working on finishing up my kubernetes 101 book um what is this oh you know what i don't have x windows installed uh now we'll see what happens um i don't have a gui installed a gui i have uh this is raspberry pi os 64-bit light so i might need to try this again later i don't have i don't have an x configuration file so i'll say no to that installation is complete okay now i'm going to shut it down and the cool thing is the psu has not died on me yet so that's a good thing i shouldn't have shut it down because i forget what pins i need to short on the pie to boot it back up something to unplug and replug this guy to tell the pi to power back on okay and i'm actually going to switch my input so i'm going to get off of the uh let's see what the pie is doing okay the pie is booting it doesn't look like it's loading any nvidia stuff though i might have to install x windows or something let's see i go back to my other thing and we'll log in here so the card is still showing up uh d message nvia okay so here let's see uh enabling device loading it initialized so [Music] well let me plug in i didn't expect this to work and i still don't think it's going to work but let me plug in my hdmi to this card which has oh my gosh there's like 100 ports on here oh that's not hdmi that's that's displayport let's go to hdmi and let's see what this thing's doing if this works okay switch my monitor dvi am i getting any output no i just switched back all right so let me try let me try rebooting the pi and see if i get console output on here dvi so it's booting no thing how do i met oh i need to turn off auto switch off okay dvi so i'm not getting any console output the screen is blank no input signal it says so so that's not working uh let's see let me switch back here uh there are some suggestions nvidia smi ah here we go segmentation okay oh i didn't see that in the let's see d message oh here we go so nvidia was trying to initialize here we are uh all right so i this is this is the same issue i was seeing with um i think with the gt710 so we are getting the same problem here and again this is i mean it's good information to have but it's not going to help me because i don't have the source code so i can't do anything with this so i'm going to put this in here nvidia driver resulted in the following output and uh thanks to oh shoot everything's going away in my chat thanks to who was it that first said nvidia smi i'm gonna give give some kudos here robert bear i think was the first one no can how how ho howie oh sorry oh there's someone else man everybody was saying the same thing up here apparently everybody knows everything about nvidia in this chat so that's cool i wish i could send this card to somebody else who knows more than i do so alex alex and a bunch of other people for suggesting the media is my to get that output i mean it's in b message too but nvidia smi was helpful for that uh let me go back to my live live stream uh and eric is somebody saying check slack uh the issue the issue could be that it's running on by one mode yeah i mean there's a lot of things that could be issues here one of the other issues is the the the hardware so i hope i'm still yeah so let me switch to my desk cam the hardware this actually let me switch to the sony cam sorry uh let me get my face out of here so the sony af doesn't look at my face this little chip this bcm 2711 i think it is um the pci bus inside of it the actual hardware is set up slightly differently than spec there's some weird issues and especially with 64-bit versus 32-bit some things just aren't implemented the same way because this was this chip the the silicon inside silicone i don't know how you say that anyway the uh the actual wafer inside was built for like tv set top boxes it wasn't built to be a general purpose computer so you know everything we're doing here is a little crazy but it looks like this driver's not gonna work so surprise surprise that's what i expected uh we're going to have to recompile the kernel that sounds super cool and stuff but for somebody who does this on a daily basis and i have a t-shirt for this on my store by the way my sister's wearing so let me switch the room cam my sister is is wearing the it has been zero days since i recompiled linux kernel shirt you can find that on redshirtjeff.com um for people who recompile the kernel a lot it seems like oh yeah you recompile the kernel a lot for somebody who's never done it before which was me last year you're like oh my gosh that's like voodoo magic i don't know how to do that blah blah so you know some people will be like oh this is amazing and other people be like oh my gosh this guy doesn't know what he's doing why isn't he using c cash why is he using this cc anyway so i'm going to recompile the kernel and put in nuvo and i'm actually going to shut down down uh now i'm gonna shut down the pi i'm going to flash a new version of piosk just because uninstalling drivers is never perfectly clean uh so i'm going to do that i'm going to unplug this camera sorry for that so i can re-flash it and the pi imager is really cool now one thing that i really like about it imager the pi imager now lets you inject your ssh key set up wi-fi passwords and things all like that and here i think it's like option c no control option c command option c i don't remember what the keyboard shortcut is for this uh but there's this keyboard shortcut which is not exposed anywhere else so it's not the coolest thing in the world because it's not very user friendly to be able to do this but you can now inject things like that kind of like a cloud cloud in it using the imager which is helpful so i'm going to grab the 64-bit arm 64 lite distro open choose this card write it oh here so here's the customization settings so you can edit the settings there um yes yes hopefully you can't see my keyboard so you don't see my password and it's going to write that while it's doing that i'm going to start recompiling kernel so i have uh i have on this project this pi pci express github project um somebody commented on that github post so i'll do that while it's recompiling uh let's see cd raspberry pi pci devices extras cross compile i have a guide and a vagrant profile here for doing this this is on a mac but you know you could adapt things for a windows pc or something else this just makes it easier for me to have a reproducible build environment for compiling the kernel just because on the mac there's some weird things you have to do especially if you're on an intel mac that's one thing that would be cool if i had an m1 mac this might be faster but i'm going to bring up this environment with vagrant and this basically runs an ubuntu vm and inside that vm i do the cross compile because it has all the tools i need for it and i could do this in docker too it might be slightly faster slightly slower i don't know but the reason i did it here is because i can also use usb with virtualbox on the mac easily and connect it so i could put a flash drive on it or a pc drive to copy the kernel over that kind of thing um let's see okay so it's up vagrant ssh notch but ssh to log in and i'm going to go in here i actually already cloned the linux this is the raspberry pi linux kernel so this is a fork of the kernel that the raspberry pi foundation maintains a raspberry pi trading so i'm going to go in here and um i'm going to make the config so just a quick overview of how you compile the kernel uh raspberry pi linux so this is the kernel source that builds a linux kernel and this is a fork of the the actual linux kernel and the raspberry pi foundation basically maintains this fork with their customizations for the raspberry pi and they build the image off of this um oh move the chapter yeah let's go forward because that's what we're doing now um and so what what you do is you clone the source to your raspberry pi or another computer or something and then you can build the kernel the first step is to build a config file to tell the compiler what to build into the kernel and uh the the raspberry pi foundation maintains one for bcm 2711 that's the chip and the cm4 and the pi 4. so different pi models need different configurations so there's different configurations to find i think that's under arch arm 64 in my case because i'm using the 64 bit and i don't remember configs i think it's in configs here yeah so this is the one that's going to use this is for rp3 there's different branches with older older pi models i guess or i think yeah the 64-bit kernel only builds on pi 3 3b plus and the 4 and cm4 so you can't build arm 64 on the older pies because they're not 64-bit processors so i'm going to do that it's going to define the configuration a dot config file so if i say cat.config these are the default configurations you'd get with pios out of the box so what i'm going to do is i'm going to run menuconfig which is a little graphic interface well terminalgraphic interface that is that lets me pick more options for the kernel change options you can do this just editing that dot config file by hand but you have to know exactly what you're doing there and you can accidentally mess things up so i'm going to go to device drivers let's see graphics cards somewhere in here where are they my computer is really slowing down at this point graphics support here we are new vote cards for nvidia and nuvo is a it's like a back what is it called when you work backwards from something uh back port type thing or reverse engineering it's a reverse engineered driver for nvidia cards in the open source linux kernel because nvidia doesn't provide any open source drivers so they don't work as well for some things but they do work somewhat for most things so we'll see if anything helps here the cool thing about it so i'm going to save this and that writes to the config file and then i'm going to go ahead and compile the kernel so exit exit exit okay so i'm going to go ahead and start that compile and on my mac it takes up to 10 minutes but i actually did a compile so it has a cache of something so it should be a little faster now let's see how this is doing that's finished so i'm going to i'm going to boot the pie itself there are some suggestions in the chat too yeah i won't be able to try everything today just because i don't have all the time in the world all right so the pie is booting off of its new uh new 64-bit ios and while it's compiling this i'm also going to log back into the pie once it boots up it's still booting oh and i can plug in the desk cam again so you can actually see it i have all kinds of pies booting up right now let me switch to obs so i can see is it working the fans are spinning whether or not you classify that as working that's up to you um all right let's see anything else fun in the chat yeah don't spam spamming's no fun now this card should be working i don't have any reason to suspect the card is bad um it's doing the same things that all the other cards have done that i've tried so far so uh 68 degrees cpu temp and the i mean the mac right now is doing it's cross compiling using all eight cores uh obs even though it says 10.5 obs for some reason uses like a lot more gpu and things like that in the background so it is doing a lot right now but the fans ever since i started the stream the fans have been going insane that's why i want to get an m1 mac at some point we're listening to it do its very very best yeah yeah i mean the the 16-inch macbook pro is is the best apple intel era laptop except for that stupid touch bar but everything else is good about it um but it that's not to say it's great the thermals on it are terrible sometimes upstairs if i have it in a cabinet that i have a fan in the cabinet but it doesn't push enough air so sometimes the fans just kick on full blast and i see kernel tasks go to 100 and i know it's doing this thermal throttling and i'm just like watching youtube or something like that and a lot of people another thing a lot of people are like oh you should just install windows on pi and uh the problem is that the the problem with this these drivers not working is not that it's like linux versus windows the linux drivers do work for these cards i know that because other people have these cards and have them working even on some advanced like there's five 500 to a thousand dollar arm development boards people have these things working on them the problem is the pi's actual pci bus and the drivers for that in the os so i'm pretty sure unless someone wants to prove me otherwise i'm pretty sure nobody at microsoft working on windows is building pci express drivers into windows for the raspberry pi if that's false please let me know but i don't think that the uh that the actual um that windows on pi is going to solve any problems here just make more because it's such a bloated horrible operating system anyways uh let's see i'm not going to get too deep into that i'm going to say sudo apt-get update not install uh upgrade y so i'm gonna make sure everything's running on the latest uh latest firmware latest os and everything while it's compiling man there's a lot that it's doing there's probably a way to limit what it's doing so you only support certain architectures certain uh certain versions of nvidia boards but yeah my poor mac is trying to do two things at once and it's it's not a great situation uh it's it's not the drivers it's not the drivers that are the issue here um for windows on pi it's the pci bus and the way that it works on arm 64 on the raspberry pi so yeah i i another thing while this is compiling i should mention uh let me ah i have too many windows open i should mention that for the which card is it let me just go over to the actual site here um 5450. so the user core coreforge on github has a 6450 which is very similar in architecture to my old 5450 which is similar in size to this zotac card it's and you can actually buy them they're they're only like 70 unlike the thousand dollar unobtainium c gpus the latest generation ones um but coreforge has gotten it working and there's actually a couple amd engineers who have given some input in this thread so if you want to follow if you if you can go that deep and you want to follow along there you should subscribe to this issue test the gpu on the radeon 5450 i'll post that in chat here so this issue could be fun to follow because core forge has gotten further along and there are now some a few engineers who are helping with the debug process come on github don't slow down the computer too much here and i'm trying to show the picture here oh so this was this was his first success he got he got the screen to actually output something but it was a bit distorted uh this was he got a little bit of the screen to show up so i'd i'd count that today if i could get that i would count that as a huge victory but i don't think we're gonna get that far i mentioned in the chat before this thing i give us maybe a five percent chance at success and earlier i had a ten percent chance of something going up in smoke luckily that hasn't happened and the the psu has been happy i'm guessing if you load it up with enough power like this video card is using the psu is a little happier um but yeah so anyway he he got that and then um the latest was that he actually got the full output with a purple line purple line on the side so you know that's that's something you're getting video from the kernel through the card into a monitor i haven't been able to do that on any of the cards i'm working with yet but we're starting to get into the weeds here and part of the problem if you read through all this is that you find out there's memory access issues with the way the pi uh system on a chip handles the pci express memory into the actual system memory the mappings through that bar bar allocation so um i'm guessing that we're going to need to modify some drivers to work on the pi and it might be a case where there's like here here's a patch to get this working once we get it working and even then it's going to be like nuvo where it might not make everything work like you might not get cuda cores to work on nvidia cards so you might not be able to do machine learning i don't know but that's i'm just trying to find this out and see what we can do because it's fun it's exciting interesting but let me set look while this is still compiling my goodness i'm going to look somebody posted something here can i get access to the source code on the official driver though or oh to get that you can disable uh oh goodness see this is this is the kind of thing that i might do but probably not in live stream because and i'll mess things up 17 times and you don't want to sit there i mean some people do want to sit there and watch me mess up 17 times but most people would check out after the 14th time that is basically life doing software development though you fail about 40 or 50 times and then have a success and then the success is actually partly a failure you try it again a hundred times but i might do some of these things just not on the live stream so virus also asks about arch 64. i'm running the 64-bit pios beta because i the 32-bit is dead to me um it's for older hardware hardware with very little ram um but yeah mold moldy to zoo alex says uh yeah basically i'm using the 64-bit version good luck we're counting on your airplane no or if you're in an airplane uh i hope you're not flying the airplane and texting but if you're a passenger that's good okay so what's here keep this version that's fine this is still compiling my goodness please just finish oh it finished okay so it finished compiling the next step is to get this uh rebuilt kernel over to the pi so do i need to advance my thing nuvo driver recompile the kernel well i'm still in that stage so i'll probably forget to advance the uh the little status to the nuvo driver at the relevant time but um the next step is i'm going to copy this over and before i can do that okay this is finished so i'm going to say sudo nano what is it the config and i'm going to let myself log in with password and go down to the bottom and delete that actually yeah save that okay and i need to reboot this so it's on the latest kernel version uh actually i don't need to reboot it but whatever i just rebooted it so we'll wait for it to come up again um i'm going to log into the i'm going to mount the pi's file system onto my little vm over here where i did the cross compile just because that's fast enough for me there's a bunch of different ways you can get the kernel into the pi uh the easiest way if you're just starting out with this the raspberry pi foundation actually has a guide raspberry pi kernel compile and this is what i used to learn how to do it this guide steps you through everything in detail the reason i'm not doing it on the pi is because it takes uh about 50 to 60 minutes on the pi 4 um so you know i didn't want to sit here for 60 minutes it's a lot faster on my mac and then i can copy it over and it has a guide for cross compiling too but i just i set up this cross-compile environment with this guide just because i'm doing it enough that uh then it warrants having the guide and at some point i should probably automate it so i can just click a button and go but i don't have that yet so let's see if it's rebooted okay and then i'm going to um i'm going to copy it over i'm going to see if this works ssh root yes raspberry oh i didn't set a password password uh raspberry nobody hopefully is well katie's on my home network right now so she could log into that pie but i don't think she will i'm a little busy she's busy okay so i'm logged in so that works i can scp too but the problem is you also have to copy some things over the boot volume and when you're doing the modules install it's nicer just to have the path mounted so i'm going to do this here i'm going to make an ext4 directory in a fat32 directory for the boot volume and then i'm going to mount these things okay mounted that remember that and the cool thing here is uh if i ls slash mount slash pi fat32 uh sudo then i can see all the stuff that's in that directory on the raspberry pi through through the file system on this thing so i can now just run this command to install the kernel modules like that and then these commands to copy the kernel and the device tree files this takes a minute um it's it's already as up to date as it needs to be um basically i don't need any new firmware or anything like that good luck from europe thank you thank you from st louis missouri usa you should also subscribe because i'm going to be giving my full review of the starlink satellite internet service pretty soon probably in a week or two i set up and i i thought about doing a separate video for this i've set up the raspberry pi uh internet monitoring service on it that i that i found from someone else remixed it and i have some other things on it so i'm going to be doing a full video on that probably as well as on starlink itself if you're interested in that kind of thing if you're somebody who's watching this from a from a very rural internet connection that's slow and seeing it very pixelated all right so that's finished and i need to copy over the kernel and dtbs and then i will unmount all right so now the pi has the new kernel so i'm going to say sudo reboot and it should come up with my new kernel and i can check that i should have run unname on it before but i can check that by running you name and checking what kernel is being used huh did i have i gotten any vga out or anything no i've i even tried so this this little card here you can't really see it that well because it's tiny in here let's let's do this i'll move my face out of the way um this little card here is the i i i always say ass rock asrock uh m2 vga this little chip has 16 megs vram it it's such a tiny little thing um you'd think that a chip like this would be easy to get working on the pi because it's so simple and it might be if you write a custom driver there's even a linux kernel experimental driver for it but it didn't work and it seemed to have the same issues as all these other drivers so i don't know um i haven't gotten anything to work with vga or hdmi or anything but like i said core forge did get uh one one thing to work so let's see oh you know what so i didn't even i didn't even have it up here let me switch my monitor over i think we're locking up because nuvo is locking up so let me let me switch to desk all right so i can't tell i don't have well i can't see what you're seeing right now um it's up with a 15 second delay so this little guy here this little green light is on i think because it's locked up so i can check that by hard resetting it so i'm going to unplug and plug back in we'll see what my monitor shows let me switch to the sony oh you know what i don't have it plugged in through there so let me switch this switch this over i okay need to reset again because it's i think it locked up already again let me try this again ah come on okay so i saw the rainbow screen on this screen down here which you can't see i was i should have found a way to have a camera on it or this is an input but i don't um so let's see it's just black and the problem is so this is booting into an x-window environment but i think it basically just blows up at some point and i can't even get the output from it i might need to blacklist the driver yeah and if i need to do that can i oh shoot i didn't do it i should have blacklisted it earlier but i didn't ah okay so the pie will not boot with the card plugged in i'm gonna unplug the card and try this again all right so unplug the card pie all right so the pie is booting this time that's good and i can't see anything in live chat or anything right now so hopefully there's nothing crazy going on katie will flag me if there's anything interesting yeah there's there will be a few more videos coming out in the next week or two i'll show you right now there goes all my sass stuff okay so i'll show you this because again subscribe there's a lot of cool stuff happening i have the tiny router boards i'm going to be taking a look at these installing open up open wrt and maybe vios to test them out i have this other router board so we'll do a head-to-head comparison type thing what do we got here oh this this i'm super excited about this will be fun this is the the first there's another one like it but this is the first cm4 blade very cool um it's it's a blade the cm4 goes you know where's my pinky oh goodness it's backwards so i can't see anything so right here the cm4 goes there power over oh this is the everything's backwards power over ethernet and it has an m.2 slot man it's hard to do things backwards m.2 slot so you can have you could fit up to 21 of these in a 1u rack mount unit with raspberry pi's power them all over power ethernet it's all built into the board it has an rtc very cool little server appliance thing this is from uptime lab so follow him on instagram i will be yeah yeah so far out there um uh follow him on instagram for his updates because he's he's further ahead than i am in this game uh someone else is making one too i forget who theirs is called um but anyway i'll be having these there's a few other things in this box that i will not get into today two things coming in the mail a lot of fun stuff it's exciting because people people oh there's a super chat uh i don't see it okay super chat oh well thank you man mate i'm guessing that's it but i could be wrong all right so i'm going to log into the pie oh and i realized i was on screen so that was very tiny you probably could barely see those boards but anyway i'm going to log into the pie uh what is it yeah i am jeff's sister yes katie is my sister you can hear wave wave to the camera again there's katie hello all right uh so i'm going to uh touch blacklist nuvo.conf oh pseudo or i could i know every time in one of these live streams i do this people are like oh you can just do this i know that and most people do you know don't don't worry about it sometimes i just want to go up and then pseudo all right so uh nano blacklist novo ah shoot pseudo make me a sandwich all right uh blacklist no i think that's it right yeah okay pseudo shut down now oh oh the power supply is doing its fun thing where it turns itself off so i'm going to try to make that not happen again and i'm going to boot this thing up i need to plug the graphics card back in turn on the power supply give it power okay please don't shut itself off this is the the problem that would sometimes happen and look you can even see my terminal session got locked up because the pi shut down ungracefully so i blacklisted that driver so what's going to happen is it shouldn't try initializing this card until i tell it to although okay yeah it shouldn't try initializing the card until i tell it to and then it should um let me do that while i'm monitoring d message and you can see what happens here which is what's happening with all these cards so i'm going to do d message dash follow in this window so you can see this is the normal boot it's not initializing any of the nvidia stuff or well nuvo the nuvo driver is the open source one but it did initialize the vcm vc4 gpu let's see so it's following the log here i'll make a little gap so you can see where it is following that log i'm going to go into another session and i'm going to say sudo mod probe nuvo nuvo so this should load that kernel module and it's going to try initializing the card and we're going to see what happens so here it goes enabling device nvidia gp 104 and at this point i'm pretty sure the pi is completely locked up if i go over here let's try ssh into new yeah ssh isn't connecting if i control c here that's not getting me out of there and the the pi is unresponsive and this this is what happens at all these video cards do the same thing so the next steps here i'm not going to do this on the live stream because like i said it's uh you know 49 failures and you get maybe a mild success that's that's a bit longer and more boring than than most people would stick around for so i'm not going to do that on the live stream but if i ever do get some success i will share it in a separate video switch chapter okay new vote new driver thanks katie for being my brains that are actually thinking about the the live stream um so yeah that like i said i i gave it must have five percent chance of success i actually had false hopes with that nvidia driver but um we're always locking up here at different stages and we're gonna have to figure out the driver support for it what i can do is is enable more debugging in the kernel and find out exactly what code we're hitting because if i look up this um yeah now it's broken pipe that the connection is dead completely um so if i go if i go in here and go to the raspberry pi slash linux and search for the string it's probably somewhere in here uh so nuvo i can find these strings whoops ah darn it i can find these strings and figure out what part of the driver they're coming from figure out what the code is put in some break points look at some stuff in there that's how you do it and then also another thing that some people do which i've never done before which would be kind of cool is you can debug the actual pci express bus data going through the kernel and try to figure things out that way now that's a little more advanced like i said in my last video for the for the actual video cards that's more advanced than i have the ability to do so some of the other people in github are able to to work a little deeper on that and that's my hope is that somebody especially an amd or an nvidia driver engineer might be able to be like oh yeah we can just change this and that and a couple of the amd engineers actually have been in let's see they've actually been in that issue for the uh let's see would no i didn't want to go there for this uh 6450 card and you know maybe there's an nvidia engineer out there who could sneakily help us out or you know maybe nvidia would would throw a bone to the open source world i know that the relationship there is not the most beautiful but it'd be cool if that would happen so that we could get a card like this working because there's a lot of people are like oh you can do mining and stuff and mining ruins the world and all that that's true to a certain extent but there are a lot of things that you can do with a graphics card on the pi or that you could do i should say because you can't do anything right now except for if your core forge get a console terminal loaded um thanks for all the inspiration you're welcome but i wanted to do the live stream today because i had to do this work anyways with this card and you know it's it's nice to at least have the work in the open so that people can see exactly how the whole debug process goes and to that point i should actually put this in here i should put my my debug output so let me go to here i'm going to stick that into the issue with nuvo driver compiled to a custom kernel build i tried blacklisting and manually loading the nuvo module and d message showed this before total system lockup so yeah i mean i can get a lot deeper than that and and i will at some point with this card before i send it back to eric it'd be really cool if we can get it working but worst case i go back to testing on my gt710 um uh but that will be a subject for some future video maybe at some point uh it would be i actually have gotten the halo master chief connection collection running through a pie not very well using what is the nvidia what is that no what is nvidia or not nvidia steam what is the thing called steam link or something yeah yeah steam link can actually work it was not a great experience and the latency was terrible but um but you can do that now but it would be really cool if you could run something like that on the pi but that's also a windows native thing and that's that's a lot harder um yeah someone's talking about fpgas and things there's a lot of things i want to do but there's also a lot of things that i have the time to do and my list of things that i'm going to be working on is already pretty long but a gpu working on a pi i mean if you count the fan spinning is working then um then yeah i got this gpu working on the pi it also has leds i mean that's kind of fun like there's a light on the top i don't know i every time i see someone do a pc build and they're throwing all these rgb things over i'm like oh my gosh i would my eyes would explode looking at all of that it's cool for a minute or two and then then you realize that the computer is going to be sitting on your desk for the rest of its life and then you turn your room lights off okay i will never understand rgb but nowadays the hard thing is some things only come with rgb and you're like what if i just want it to be like dark and black or whatever i don't know yeah duct tape actually i do on the uh on this hard drive controller thing it has down here um i could turn it on for you and blind you this is like the world's brightest blue led and so i put electrical tape over it because nobody needs that uh mark was wondering if you have any ideas for a custom sam uh cut well so one thing that i really wanted to do was a cm4 nas and i should see i should mention that this uh is the wire trusty sata let me get my face out of there so sony doesn't grab it um this is also a board i was thinking about making basically this and then someone else made it and i'm like okay never mind this is a sata board with four sata connectors um it'd be cool if someone would do a like a try mode uh sas sata an nvme board too that'd be a lot more expensive and it's way overkill for pi but you can plug in four sata drives directly into this board it comes with a 3d cut out acrylic case i'm going to be doing a video on this board so i'm not going to spoil too much on it but this is really cool this is basically what i wanted to build for my nas and i just never had time to think about it too much and then like i said someone else built it and i'm like okay that's that's it that's perfect um you just plug the hard drives right into there and you have an ass very cool and another thing that i would modify is i might put 2.5 gig networking on there because even though you don't get full throughput and bandwidth you can get 2.5 gigs on the pi and for bursty workloads not things like movie streaming which don't even need a gigabit you can you can get that full bandwidth anyway so this is cool the wire trustee sata it's already up on the pi pci website which is linked in the description so check that out and like i said subscribe and if you want to see me keep doing these crazy things i might never have enough money to afford a geforce gtx 1080 like this so thanks again to eric for loaning me that um i could afford it but justifying it is a different thing entirely so anyway if you want me to be able to do things like this please consider supporting my channel on patreon or github sponsors and thanks for watching today i will be as always i'll be posting all my updates on github so if you want to follow along after this video go check out github the project is linked in the description and if you are an nvidia engineer or an amd engineer please go and uh you know help us out we'll see if we can get get one of these cards working i think it would be super cool i know that some people like team red and team green or whatever i'm not on any team except i do like that amd is more involved than open source and that they're spanking intel on on cpus right now but i think it would be cool if one of those two teams could push this over the line and they would get the bragging rights uh so anyway that's all i have today um thanks for watching uh we we achieved all the goals on the stream let's see what is its conclusion so here's the conclusion um i will finish as i do all of my videos until next time i'm jeff gearling [Music] [Music] um [Music] [Music] [Music] you
Info
Channel: Jeff Geerling
Views: 107,090
Rating: 4.908205 out of 5
Keywords: raspberry pi, compute module, cm4, compute module 4, io board, nvidia, gtx, 1080, msi, gpu, graphics, graphics card, processor, pci, pci express, bar space, memory, kernel, recompile, linux, raspberrypi, raspbian, pi os, headers, nouveau, driver, install, pcie, 16x, power, psu, adapter, plug, arm, arm64, support
Id: 1hFPnpVqzkw
Channel Id: undefined
Length: 81min 10sec (4870 seconds)
Published: Thu May 13 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.