Live data from Hacker News

Combine Multiple AWS Instances into a 16-GPU Monster Machine

bitfusion.io

31–40 of 47 posts

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#31
post #29

Congrats guys this is a really neat hack, really impressive. Did you guys think about building it further out to provide a GPU load balancer for multiple frontend machines running Cuda / OpenCL?

Hmm, can you elaborate? Do you mean having multiple smaller instances talk to a single GPU instance?

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#32
post #27
post #25

Earlier quoted context omitted.

Somebody should make a startup that allows people to sell access to their computers by the minute. Like spot instances in the cloud ... in people's basements. The true sharing economy.

That sounds like a nightmare. You'd have zero uptime guarantees!

Would you?

What if you limited people to writing in a domain specific language: one that ran distributed on this infrastructure? How would that make it different than folding at home, for example?

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#34
post #25

Earlier quoted context omitted.

Somebody should make a startup that allows people to sell access to their computers by the minute. Like spot instances in the cloud ... in people's basements. The true sharing economy.

Why not just move forward to realizing some sort of distributed/decentralized internet? Something like a combination of Freenet, TOR, BOINC, blockchain etc. technologies, using the current "legacy" internet as a backbone, where anyone can voluntarily offer their computing and storage resources to the network at varying levels of participation. Say you could offer your laptop as a simple discovery/directory node to si…

There is Gridcoin which is a cryptocurrency that rewards for BOINC projects.

I wouldn't be surprised if certain services became more centralized, offloading computing to the cloud. Consumer grade devices would become thin clients (like back in the day). NVIDIA has hinted in this direction, I can remember something about GaaS (Gaming as a Service).

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#35
post #27
post #25

Earlier quoted context omitted.

Somebody should make a startup that allows people to sell access to their computers by the minute. Like spot instances in the cloud ... in people's basements. The true sharing economy.

That sounds like a nightmare. You'd have zero uptime guarantees!

Does Amazon have any instance uptime guarantees?

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#36
post #31
post #29

Congrats guys this is a really neat hack, really impressive. Did you guys think about building it further out to provide a GPU load balancer for multiple frontend machines running Cuda / OpenCL?

Hmm, can you elaborate? Do you mean having multiple smaller instances talk to a single GPU instance?

I'm talking about time-sharing. It doesn't mater if it's smaller instances sharing a single GPU instance or many instances sharing many GPU instances. Essentially N:M sharing (with some scheduling).

Since the GPU client is now abstracted from the GPU devices by placing the GPUs across the network. It seams like time-sharing should be next logical step.

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#37
post #27
post #25

Earlier quoted context omitted.

Somebody should make a startup that allows people to sell access to their computers by the minute. Like spot instances in the cloud ... in people's basements. The true sharing economy.

That sounds like a nightmare. You'd have zero uptime guarantees!

Like Amazon spot instances. People follow habits, so you can make uptime predictions.

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#38
post #25
post #14

I've found amazon GPU instances to be really expensive (even the spot prices have been high recently), especially if you need it for longer runs for deep learning. The other issue is that the additional layers of virtualization create bandwidth overhead issues. I'd like to see something in the cloud thats bare-metal / full access to GPUs (Maybe a good idea to start one). For scaling higher with a very large number of…

Somebody should make a startup that allows people to sell access to their computers by the minute. Like spot instances in the cloud ... in people's basements. The true sharing economy.

Various companies have tried this. What you end up with is 99% of your workforce is compromised machines, and law enforcement at your door every other day asking where checks are being mailed.

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#39
post #10

Earlier quoted context omitted.

Sounds like Plan9's concept of "CPU server mounts" has been reborn as "GPU server mounts." Could actually get traction this time, given that existing multi-GPU programs will Just Work.

I cant wait for company to provide opencl/cuda mflops as a service instead of giving you vms as a whole, so one could just attach remote engine to any smallish controller vm

What you suggest is technically possible by installing our Boost software on any GPU machine, and then accessing that machine from any clients running our Boost software as well. That client does not need to have a GPU. This configuration is supported in AWS today, where for example you can connect one or more t2.large isntance to a g2.8xlarge. All that would have to be done is some metering on the GPU machine to implement the service you suggest :)

We are not limiting our software to AWS so you can built this kind of service on any kind of cluster by installing our software directly from https://boost.bitfusion.io - I say cluster, because we have played with the idea of thin devices accessing remote GPU instances in the cloud, but over public networks the network performance was a limiting factor.

Re: Combine Multiple AWS Instances into a 16-GPU Monster Machine

#40
post #36
post #31

Earlier quoted context omitted.

Hmm, can you elaborate? Do you mean having multiple smaller instances talk to a single GPU instance?

I'm talking about time-sharing. It doesn't mater if it's smaller instances sharing a single GPU instance or many instances sharing many GPU instances. Essentially N:M sharing (with some scheduling). Since the GPU client is now abstracted from the GPU devices by placing the GPUs across the network. It seams like time-sharing should be next logical step.

Got it, this is actually already supported. At the very end of the blog post there is a link to create a custom configuration. You can create any N:M configuration, that is any number of clients to servers and therefore the level of performance scaling or GPU pooling.

Check it out: https://console.aws.amazon.com/cloudformation/home?region=us...

Post reply on HN