The ins and outs of Vast.ai instances
In the create interface there is a selector for either "on-demand" or "interruptible". These are different ways to bid on available machines. Once the instance is rented, there is no way to change the bidding method. In general, on-demand is typical for most tasks where you expect to maintain control of the GPU. Using Interruptible instances can save money, but requires thought to maintain the continuity of work performed.
Renting an instance on-demand means that you have exclusive control over the GPU(s) and have high priority. The instance can be run as long as the host has set the "maximum duration" which appears on the create interface card. Once that time limit has been reached, the host can either renew the contract or stop the instance. Typically this is done to take the machine offline for upgrades or planned maintenance.
When an on-demand instance is stopped by the user (or host in the case of the contract expiring) the data on the machine is still accessible.
Interruptible instances are unique on Vast in that they use a bidding system for priority. The higher the bid for a given instance, the higher priority that instance has on the machine. Lower priority instances are paused until they become the highest priority, either through a raised bid or the higher bid finishing their job. On-demand instances will have a higher priority than interruptible.
Once an instance is paused, the data is still available on the machine to be copied, but the instance is otherwise not functional until it regains priority.
Use the square button to stop the instance. All running programs will be killed and the GPU will become available, so you no longer have GPU priority on that machine. If someone else rents the GPU, you will not be able to start the instance until the other user either lowers their bid or stops their instance.
So if you have a machine that stops and you lose priority on it, the best thing to do would be to make a new instance with either the Jupyter direct HTTPS or SSH direct launch mode. Once that instance has been created and is functioning, you can then press the two arrows button on the source instance and then the same button on the destination instance. A confirmation dialogue will pop up to start the copy command.
The destroy command will destroy the instance entirely. Your data will not be recoverable from a destroyed instance. All data storage fees and rental fees cease once the instance is destroyed.
The connect button will typically open Jupyter for Jupyter and Jupyter direct HTTPS launch modes. This will open a new browser window with the Jupyter notebook key for authentication, giving access to Jupyter running on that instance.
For any launch modes that create an SSH daemon, the SSH info is displayed via a complete Linux SSH command that can be used if you are running Linux. The command specifies the hostname, sets the connection port and forwards port 8080 from the instance to the local machine.
Instances that have open ports display the IP and port information. On the top middle of the card there is an IP address and port range. Clicking on that pops up a menu that details the instance ID, public IP address, the open port range for the instance as well as the local IP address of the machine in that datacenter or subnet.
The pricing information is easy to see both before you rent an instance and once the instance is running. When you are selecting a machine to rent, simply hover over the RENT button to see the pricing. Once the instance is running, hover over the (i) icon next to the $/hr pricing.
Hover over RENT button for pricing
Hover over the (i) button once rented