Sharing cloud build server?


#1

Is anyone interested in sharing a cloud server for doing dev work? I really want a machine that’s got enough memory and is capable of crunching serious builds and my machine at home is semi-decent but I’d pay a little more to get something better.

I’d like to do some dev work on rust and llvm in general. My use case is such that there are times when weeks go by and I don’t have much time to tinker. The cloud server pricing is interesting but I just don’t think I want to pay for a dedicated server that has enough memory to survive these heavy-duty builds. Preemptible could save a bit but seems like just more hassle to resume interrupted work, even if it’s rare.

So I figured I could open it up to others who might be willing to share. Does anyone ever do this?

Trust issues

I figure you can trust me: I’ll let you pay me back in arrears. If you got a month of availability, you could chip in $/€5-10 or so (depending on what we end up picking for a service).

I figure I can trust you. You’re on this forum and you will pledge to Alan Turing that you won’t violate the TOS or do cryptomining or spamming or other abusive stuff. I won’t give you superuser access, because you probably don’t need it – or would that be a deal-breaker? Probably negotiable.

We do our best to avoid colliding with each other’s work or exhausting the resources. If we live in distant enough time zones, that should be easy. If we get to the end of the month and you feel like you didn’t get a fair share maybe we talk about bumping up the resources we commit to or you don’t pay that month.

If it’s not mutually agreeable we probably won’t continue working together more than a month or so after a dispute and that sounds like a really small loss.

So – anyone interested?

Alternatives

BTW I saw that recent “GCC compile farm” post and thought it might not be that bad. Maybe I’ll consider that in addition/instead of this if there’s no interest. In any case I think I’d prefer not introducing more variables and might end up needing clang for some stuff.


#2

If you’re using a cloud service like EC2 or GCE, you can just stop the instance when you don’t need it. Then you’re only paying for the persistent disk space for the full month. On AWS you want On-Demand pricing, not Spot, if you don’t want it interrupted. You can also scale CPU and RAM up and down when different tasks need different resources.

That’s effectively sharing the machine, you just let Amazon do the accounting and sell it to someone else when you’re not using it.


#3

Sounds like you want to sign up for https://janitor.technology


#4

I think these are good tips but I would rather not have the complexity of managing when the server is running or not. I suppose it sounds a bit lazy but I guess it sounds like I want the convenience of a dedicated server but at the price of a spot instance.

That’s effectively sharing the machine, you just let Amazon do the accounting and sell it to someone else when you’re not using it.

Yeah, I definitely get that all or nearly all tiers of cloud servers are oversubscribed but I just wanted to put this out there in case there are others who have a similar use case to mine.


#5

Gee, this is awfully interesting! The ‘about’ page is not terribly detailed. Is it considered abusive to work on unrelated or indirectly-related projects? I’d like to work on LLVM in addition to rust (and perhaps occasionally clang).

In any case, I’ve put my name in the queue.


#6

In general this can be as simple as running sudo poweroff when you’re done, but I guess you still have to remember to do that too…


#7

Yeah, I get frequent interruptions at home so if I kicked off a 30-60 minute build, had to jump on something at home and then forgot to shut it off after the build completes, it would be a bummer. Generally I guess I just don’t want the additional mental burden and the sense that my time on the server is metered.

I could imagine a magical set of scripts that somehow triggered a server to start after an incoming ssh connection is detected (by some yet more magical infrastructure) – and then host scripts that periodically looked for pttys and/or builds-in-progress and held off an inactivity shutdown if those were still busy.

I get the vibe that this is an uncommon use case or I’m being too cheap :smile:

Either way I may look closer into those build services – GCC compile farm & “janitor”.