-
-
Notifications
You must be signed in to change notification settings - Fork 78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
steamcache/monolithic for ARM based devices #21
Comments
Watching. I used the old steamcache container on a rock64 with a USB3 attached SSD. It's surprising how well this thing works for such a small / low powered device. It manages 500mbps quite happily, sometimes more. The monolithic one appears to have several containers/layers. But I managed to get this to work on ARM by tweaking the the base one. I am now using it on the same rock64. How? Under the base ubuntu container, changed to base to 'arm64v8/ubuntu:bionic'. Then I swapped out ubuntu/overlay/etc/apt/sources.list with:
This then allowed the other containers to build on my rock64. Why did that work? The ubuntu container it's based on appears to try and fetch repo info from a repo that does not exist for arm64. It's on this apt update stage when building the nginix container where it fails due to 404s: |
I'm setting up a fork over @ https://github.com/KiaArmani/ubuntu with your suggested changes and will close this issue when it worked. Thanks a lot! |
@KiaArmani did you get it to work? |
Unfourtunately no, since my device is not 64-bit.
Von: Lasith Hettiarachchi <notifications@github.com>
Gesendet: Samstag, 27. April 2019 11:47
An: steamcache/monolithic <monolithic@noreply.github.com>
Cc: KiaArmani <kiaarmani@web.de>; Mention <mention@noreply.github.com>
Betreff: Re: [steamcache/monolithic] steamcache/monolithic for ARM based devices (#21)
@KiaArmani <https://github.com/KiaArmani> did you get it to work?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#21 (comment)> , or mute the thread <https://github.com/notifications/unsubscribe-auth/AA4CKN7BYS2ADEPMLQ74BZLPSQOIHANCNFSM4G4F474A> . <https://github.com/notifications/beacon/AA4CKNYYNGRFG7DEM5JWFDDPSQOIHANCNFSM4G4F474A.gif>
|
We just made some changes to the downstream ubuntu images, does this help people? We don't have any intention of maintaining arm images at the moment, but are happy to try and add little things to improve efforts! |
@VibroAxe , I have a Raspberry Pi 4 4G back ordered atm, on which I intend to run this at a party with ~6 people in a few weeks. |
@pheetr interesting. We don't currently recommend running lancache on a RPI for performance reasons, but for a small 6 person Lan party I'd be very interested to see what performance you see out of it |
@pheetr Did you get your pi yet? See this gist for a log of the output I get, I don't know if its RPI related or not sadly, I have never used steamcache / monolithic before so might have messed up somewhere, I ran the following commands to try to bring it up but monolithic just keeps restarting :/
|
Looks like the RPI doesn't have enough cache memory for the default config
Try a value of either 64 or 128 You should be able to make this work by creating a new file in overlay/etc/nginx/conf.d/ and rebuilding the image |
@VibroAxe Yeah, I wouldn't have tried it with the Pi3, but the Pi4 with its beefier CPU, more ram, USB3 (SSD) and GbLAN should hopefully cope. :) @pegasy I've received shipment confirmation on Friday, so I'm hopeful that I'll have it by Tuesday the latest. I'm glad I'm not the only one with this idea. This gives me even more confidence that we'll get it to work, hehe. |
Added this file
Then I got another error
Found this thread for nextcloud that had the same error, seems like we would be limited to below 2048m files (I tried with 1920m and that worked), really not sure why filesize is tied to it being 32bit os, hopefully someone can try this on a 64bit os on rpi. Everything seems to be working, just need to figure out some stuff with the dns I think since not all requests seems to go via the cache (I tried downloading the same game over and over, each time the cache grew a bit and install time went down). Video of downloading a cached game: https://youtu.be/92SAgDNKumc with htop, iftop and router traffic My goal was to speed up downloads when me and my SO downloads the same game (yay coop) or steam workshop content since we only have a 4g connection where we get 20-40 mbit (luckily no data caps), but when both wanna download a few GB it does take some time. Would love to see if anyone try it with more clients using it how it holds up :) |
Can confirm that @pegasy's scripts and configs work well. For a home user with a few PCs trying to save on some bw or increase throughput, it might be worth exploring. Thanks for the compile script @pegasy |
Skip the above, looks like I couldn't get any higher perfoamnce when moving to an x64 host with SSDs direct attached either, seems to hit the same performance. Looks like its related to #16 |
I used docker's buildx cross compile in Github Actions to build all the lancache containers for the Pi. My repo also has the docker-compose you can use: https://github.com/jrcichra/lancache-rpi |
I've tagged this for-reference and will close as no specific outstanding questions. Feel free to reopen if there are any specific 'upstream' improvements that would aid ARM deployments or more useful tips. |
The previous steamcache/steamcache repository works great with ARM-based devices (e.g. ODROID HC2 (has Gigabit LAN and a SATA-port, making it feasible for this service), but I am unable to get steamcache/monolithic to run on it because of the notorious exec error:
standard_init_linux.go:190: exec user process caused "exec format error"
This is solved by manually building the repo for steamcache/steamcache, but doesn't work for steamcache/monolithic. Is there any way I can get this to run on ARM?
Sincerely,
Kia.
The text was updated successfully, but these errors were encountered: