You can buy clusters with 1000+ H100s with InfiniBand at volume prices and then sell back any portion of it whenever you'd like. Other providers prevent you from reselling and recovering funds.
We made it a CLI command. First you can buy any shape of compute you'd like.
You can also buy and get access to nodes right away:
In this example, you're willing to pay up to $2.50 per GPU per hour. This means the maximum total cost would be 2.50 x 8 = $20 per hour, but you may end up paying less depending on market conditions and available supply.
And you can sell:
An important thing to note - these are orders, not reservations. By placing an order, you're signaling to the market that you're willing to buy or sell a block of compute at a certain price. You haven't actually bought or sold anything until your order gets filled.
If you place a buy order, your order won't be filled unless there's a corresponding sell order for the same amount of compute at the same price or lower.
Similarly, if you place a sell order, your order won't be filled unless there's a corresponding buy order for the same amount of compute at the same price or higher.
If you place an order and it can't immediately be filled, it will sit in the market until you cancel it, it expires, or it gets filled. You can see all of the outstanding orders with sf orders list --public
or by visiting the blackbook.
To place an order on SF Compute, you'll need to sign up on the website, sign a services agreement, and fund your account. If you'd like to talk to us before you do so, you can reach us at contact@sfcompute.com.
Then, you can download the command line tool.
Next, login via the CLI.
Let's place an order for 1 day on 1024 H100s with InfiniBand (128 nodes), starting tomorrow at 10am, for $5/hour.
Hmm, $5 an hour isn't crazy for a last minute 1024 fully-interconnected cluster for only a day, but that's way little higher than we want. Instead, let's set a max price. If someone offers our price or lower, we'll get the cluster, otherwise the order is canceled.
We'll set a low price, like $1.5 / hr, and see if we can get lucky. Maybe someone's code isn't ready yet, and they need to firesale their cluster to recoup costs.
You can check the status of orders with orders list
.
If your order has been filled and has started, you'll be provisioned VMs. You can see your instances with:
There are two options for setting up SSH keys:
This method automatically generates and sets up a public key for you. This only needs to be done once per device you're connecting from. Run the following command:
Alternatively, you can create an RSA key:
After setting up your SSH keys, you can connect to your instances using sf ssh
:
sf instances list
Replace instance_id or machine_name with the appropriate value. You will see the name of your machine once you have logged into your node. The default user for all VMs is ubuntu
.
For example, when your instance is running, you will see an output like the following:
You can ssh into your machine like so:
When your order is filled, you're given a "contract" for some amount of compute for some period of time. You can see the contracts you own with contracts list
.
If you have nodes, you can sell them back at any point. Let's sell back next weeks nodes from one of the contracts we own.