Hosting

Overview

35min
vast is a gpu marketplace hosts sell gpu resources on the marketplace hosts are responsible for setup installing ubuntu, creating disk partitions, installing nvidia drivers, opening network ports on the router and installing the vast hosting software testing and troubleshooting all issues that can arise, such as driver conflicts, errors, bad gpus, and bad network ports vast does not offer support for getting your machine working there is a host discord https //discord gg/hsuebsq4x8 with helpful members and the host general channel is searchable for specific errors managing the listings and gpu offers for rentals, including setting pricing and end dates for the offers planning for maintenance so that no client jobs are affected account setup and hosting agreement you must create a new account for hosting if you are using vast ai as a client, do not use the same account a single client and hosting account is not supported and you will quickly run into issues once your account is created, open the host setup guide https //cloud vast ai/host/setup/ there is a link in the first paragraph to the hosting agreement read through the agreement once you accept, your account will then be converted to a hosting account you will notice there is now a link to machines in the navigation, along with some other changes your account can now list machines that are running the daemon software machine setup the host setup guide https //cloud vast ai/host/setup/ is the official documentation for setting up a machine on vast ai read through each section closely common issues to check make sure to test the networking clients require open ports to directly connect to the machine for most jobs make sure to read the section on iommu if you have an amd epyc system make sure to disable auto updates so that your machine doesn't drop a client job to update a driver once you are ready to list your machine, come back to this guide to understand pricing and listing the rental contract general concepts clients have high expectations coming from aws or gcp as a host, plan to offer 100% uptime for your machine during the contracted period expect that the gpu is going to be used at close to max capacity for the rental period ensure that your internet, power source and heat dissipation systems are all functioning and that you have thought through how hosting will affect each one of those items listings and contracts hosts can create machine listings (offers) through the cli command list machine or the machine control panel gui on the host machines page the main listing parameters include the pricing for gpus,internet,storage the discount schedule param which determines the price difference between on demand https //docs vast ai/instances/rental types and reserved https //docs vast ai/instances/rental types instances the min bid price for interruptible https //docs vast ai/instances/rental types instances the min gpu param controlling 'slicing' (explained below) the end/expiration date which determines how long the listing lasts the listing offer is good until the end date when a client creates an instance on your machine, this creates a contract from your listing once you list and get rental contracts, it is very important to honor the terms of the contract until the end date the rental contract by listing your machine or compute services, you are offering up a rental contract to potential clients once a client accepts this listing, you and the client have entered into a rental agreement a contract as the provider you are promising to provide the services as advertized in your listing the provider must provide the hardware/services according to all the advertized specs the hardware can not be used for any other purposes the client's data must be isolated and protected according to the data protection policy the advertized services must be provided up until the end date (contract expiration) for full details, see the hosting agreement https //cloud vast ai/host/agreement and service level agreement https //cloud vast ai/host/sla default expiration date (end date) the expiration date can be set in the hosting interface by clicking on the date field under expiration and selecting a date for when the listing contract will expire the cli command to 'list machine' includes a field for end date, which is the same date make sure to set an end date before listing your machine, or else the listing will not expire the "client end date" is the date of the longest client contract on a given machine min gpu when clicking on the set pricing button, there is a min gpu field the min gpu field allows you to set the smallest grouping of gpu rentals available on your machine in powers of 2, or down to 1 for example, if you have an 8x 3090 and set min gpu to 2, clients can create instances with 2, 4, or 8 gpus if you set min gpus to 1, then clients can make instances with 1, 2, 4 or 8 gpus on demand price the on demand price is the price per hour for the gpu rental on demand rentals are the highest priority and if met will stop interruptibles interruptible min price (optional) the interruptible price allows for the host to set the minimum interruptible price for a client to rent interruptibles work in a bidding system clients set a bid price for their instance; the current highest bid is the instance that runs, the others are paused more info https //vast ai/faq#rentaltypes reserved discount pricing factor reserved instance discounts are a feature for clients which allows them to rent machines over a long period of time at a reduced price the reserved discount pricing factor represents the maximum possible discount a user can achieve on your machines the reserved discount pricing factor is a decimal value that represents the maximum discount a client can achieve on your contract eg 0 4 represents a maximum of 40% discount this discount is not static, but rather scales over time that the user rents the machine for eg a client will get a 20% discount rate for 1 month, and a 30% discount rate for 3 months on the default setting you can set this number yourself to 0 if you wish to opt out of this feature volume contracts in addition to gpu contracts, hosts can now offer volume contracts on machines this is a contract for storage space, and can be priced separately from gpu contracts the space allocated for storage contracts is in the same pool of space as that for gpu contracts, meaning that space will not be subtracted from available offers unless it is in use when a client rents a volume listing, they rent a subset of the total space set for the listing, up to the total amount storage usage allocated storage (that is, storage in use by client contracts) is subtracted from the total storage available on a machine, and split up proportionally among the machines gpus in remaining ask contracts for example, on a machine with 1000gb of disk available and 2 gpus, a host can create a volume listing of up to 1000 gb if they create a volume listing of 500 gb, and it is not rented, the machine will be available for rent with 2 offers of 1xgpu 500gb and 1 offer of 2xgpu 1000gb if 200 gb of the volume contract are rented, the gpu offers will reduce to 2 1xgpu 400gb offers and 1 2xgpu 800gb offer the volume contract will still remain, as there is still available space, and update to offer 300gb similarly, if stored instances on the machine are taking up 800gb, the volume offer will reduce to 200gb if stored instances are only taking up 400 gb, the volume offer will not update, as there is still enough space on the machine to cover the volume offer listing volumes by default, volume offers will be listed with contract listings at the same disk price for half of the available space on the machine only rented space will impact the amount of space available for contract offers, not the space in the listing itself you can control the amount of space listed with the v cli option, and the price of the space with the z option space is listed in gigabytes, and price in $/gb/month vastai list machine \<machine id> v \<space> z \<price> g 5 e "12/23/2027" r 0 m 1 you can also directly list available space for volume contracts by running the vastai list volume command vastai list volume \<machine id> s \<space> p \<price> volume offer end dates must align with normal contract offer end dates setting an end date on a volume will not update if there is an existing contract offer setting a contract offer end date will update volume offer end dates volume contracts will be unlisted when the machine is unlisted they can additionally be unlisted with the command vastai unlist volume \<volume id> out of sync contracts when a client deletes a volume, the space is automatically freed on the machine if the machine is offline at this time, there is a job that runs hourly to free the space if for some reason this is not working, or if you want to free the space automatically, you can run the command vastai cleanup machine \<machine id> this will automatically remove expired/deleted contracts from the machine, and available storage will update on offers extending contracts to extend the current contracts for all clients on a given machine, change the expiration date to a later time with the same or lower pricing if you have raised the pricing, you cannot extend the current contract testing your own machine it is vital to test your own machine to ensure the ports and software is running smoothly setup a separate client account there are two supported ways to test your own machine if you want to use the website gui, you will need to setup a new account on a different email address, add a credit card and then find your machine and create instances on it like a client this has the benefit of showing you the entire client experience testing the recommended pytorch template is vital to ensure that ssh and jupyter are working properly use the cli (preferred) the preferred method of testing your own machine is to run the cli https //cloud vast ai/cli/ for windows users, we suggest setting up wsl https //learn microsoft com/en us/windows/wsl/install which will require you to install ubuntu on your windows machine and change your bios settings to allow virtualization then you can start an ubuntu terminal and run the cli to rent your own machine you will need to first search the offers with your machine id to find the id and then create an instance using that id the show machine command will show all your connected machines /vastai show machines then for each machine id you will need to find the available instance ids /vastai search offers 'machine id=12345 verified=any' replace 12345 with your actual machine id in question you can see the number of available listings as well as information about the machine this is the fastest way to also see all the offers listed for a given machine the website gui stacks similar offers and so it is not easy to see all the listings for a given machine that is not a problem for the cli take the id number from the first column and use that to create a free instance on your own machine this example loads the latest pytorch image along with both jupyter and ssh direct launch modes /vastai create instance \<id> image pytorch/pytorch\ latest jupyter direct env ' e tz=pdt p 22 22 p 8080 8080' you can then look at your instance tab https //cloud vast ai/instances/ to make sure that pytorch loaded correctly along with jupyter and ssh click on the < button to get the ssh command to connect to the instance test the direct ssh command click on the open button to test jupyter if the button is stuck "connecting" then there is most likely a problem with the port configuration on the router in front of the machine once finished, destroy the instance maintenance the proper way to perform maintenance on your machine is to wait until all active contracts have expired or the machine is vacant unlisting will prevent new contracts from starting on the machine however if you have a current client rental, you could set the end date to the client end date to allow for other clients to create instances on that machine that expire at the same date once the end date is reached, you can then unlist the machine and then perform maintenance for unplanned or unscheduled maintenance, use the cli and the schedule maint command that will notify the client that you have to take the machine down and that they should save their work you can specify a date and duration uninstalling to uninstall, use the vast uninstall script located at https //s3 amazonaws com/vast ai/uninstall https //s3 amazonaws com/vast ai/uninstall common questions how do i host my machine(s) on vast? how can i rent my pc? hosting on vast will require some linux knowledge, as you will be maintaining a server our setup guide is here https //vast ai/console/host/setup/ after the first paragraph of the guide there is a link to the hosting agreement once you agree, your account will be converted to a hosting account you can review our faq https //vast ai/faq/#hosting general that answers many of your hosting questions how do i get an invoice? you can create an invoice by going to the "billing" page, and then click the box for "include charges" under "generate billing history" how do i check if my machine is listed? if your machine seems unlisted, try this command vastai search offers 'machine id=machine id verified=any' to see if the cli finds it if there is a result, your machine is properly listed can you verify my machine? verification is conducted in a randomized and automated fashion we only run manual verification tests are for datacenters and high end machines how does verification work? verification is mostly for higher end machines, mining rigs may never be verified verification is also based on supply vs demand and is machine/gpu specific right now the only machines which can expect fast verification are $10k+ h100 or a100 80gb if not tested quickly in a day or so let us know 8x4090, 4xa6000 should be tested in less than a week, especially if you have a number of them the only manual verification tests are for datacenters and high end machines for everything else we run more random auto verification roughly about once a week for datacenter partner inquiries email us at contact\@vast ai mailto\ contact\@vast ai directly how do i gain datacenter status? to apply for datacenter status we have a number of requirements there is a minimum number of servers and the datacenter where the equipment is located will need to have a third party certification such as iso 27001 please read the complete requirement list and application instructions here https //docs vast ai/datacenter status how do i uninstall vast from my machine? you can use the uninstall script https //s3 amazonaws com/vast ai/uninstall help i am getting this error on my machine? for help with machine setup, specific questions about hardware, and for errors or other issues, go to our discord https //discord gg/hsuebsq4x8 why is my machine not listed? you won't be able to see it on the gui right away, but you can search using the cli https //docs vast ai/instances can i send a message to a customer using my machine letting them know that i fixed an issue that they were having? no, there is not an established process for hosts to message customers on vast i fear i will decrease my reliability from restarting my machine and potentially lose my verification your machine's reliability does not directly affect your verification standing verification is independent of reliability though, whenever taking your machine offline and working on it you should procede with caution as it is easy to introduce new issues or errors that will cause your machine to be de verified how much can i make hosting on vast? to get an understanding of prices, the best place is 500farms which is a third party website that monitors vast listings the link is here https //500 farm/vastai/charts/d/a6rgl05nk/vast ai stats why did the reliability on my machine decrease? if the machine loses connection or if there is a client instance that does not want to start the machine's reliability will drop how do i minimize my reliability dropping? do not take your machine offline if you must take your machine offline, minimize the time you have it offline note reliability takes into account the average earnings of the machine, and machines with less earnings get penalized less from offline time if someone has already used an image on my machine does redownload happen or is the system smart? prior images are cached my storage for clients is somehow full i just have a few jobs stored in my server and most of them are old and didn't delete once the job finished a lot of them are really old, can i remove them to free up some space? we suggest that you try cleaning up the docker build cache, as it sometimes frees up far more space than it claims you can also clean up old unused images i can't find my machine? if your machine seems unlisted, try this command vastai search offers 'machine id=machine id verified=any' to see if the cli finds it if there is a result, your machine is properly listed why can't i see my machine on the search page in the console? there are over 10,000+ listings on vast, and search only displays a small subset you will usually not be able to find any one specific machine through most normal searches this is expected and intentional behavior of our system you can use vastai search offers 'machine id=machine id verified=any' , to see your machine's listing if you want to get an understanding of the machines ranking above yours you can use very narrow filters to see what similar machines are ranking above you for example, something like vastai search offers 'gpu name=rtx 4090 cpu ram>257 cpu ram<258' is a decently constrained search that will most likely include a given machine you are looking for (that fits these filters) amongst others that are similar keep in mind our auto sort that search offers defaults to is comprised of both ranking various factors as well as an element of randomness