The Spell CLI is based on Python runtime which runs on MacOS X, Linux, Windows, and all platforms that support Python.
Spell comes with PyTorch and TensorFlow 1 installed. You can use a different framework hosted in Docker using the
--from command. Read more about using Docker containers in our docs.
Spell’s default environment includes:
If you would like to use a custom environment, you can include packages/dependencies using
conda. Read more about environments in our docs.
For the Developer plan, there are no monthly fees and no markups on hardware - you pay what we pay:
|Machine Type||vCPUs||RAM (GB)||Price$/hour||Price$/second|
|Machine Type||NVIDIA GPU||VRAM (GB)||TFlops||vCPUs||RAM (GB)||Price$/hour||Price$/second|
|T4||1 x Tesla T4||16.0||8.1||4||15||$0.54||$0.00015|
|K80||1 x Tesla K80||12.0||4.3||4||15||$0.65||$0.00018|
|P100||1 x Tesla P100||16.0||9.3||4||15||$1.66||$0.00046|
|V100||1 x Tesla V100||16.0||15.7||4||15||$2.68||$0.00074|
Adding new types of hardware is easy. Email us at email@example.com - we can probably accommodate you.
Yes! Send us an e-mail at firstname.lastname@example.org and let’s talk :)
For individuals using our public tiers, we store data privately in AWS (Amazon Web Services), and it’s never exposed to other users. Read more about using data on Spell in our docs.
For companies, we use your own storage/cloud infrastructure to make sure your data never leaves your system.
No, Spell does not allow cryptocurrency mining. Accounts that are used for cryptomining will be disabled.
spell stop stops execution of your run, but continues with saving outputs.
spell kill will stop all activity immediately and will not save any outputs.
Yes, you should be able to use
spell ls and
spell cp on a currently active run in much the same way that you use it for completed runs.
We are releasing new features requested by our users every day. Follow us on Twitter to find out when we release new features and commands.
Each plan has a different limit on the number of runs you can run concurrently. Check your plan limit on your settings page.
You can see how many runs you are currently running by checking
Runs use CPU (Central Processing Unit) machine types by default. CPUs are a cost effective but slower method to run your code. Spell also offers GPU (Graphics Processing Unit) machine types which are faster. Read more about machine types in our docs.
To use a GPU machine, you need to specify the GPU type using the
-t flag. To see a full list of available machine types, go to our pricing page.
You can see what machine type your run is using with
spell ps. The machine type is listed in the final column on the right,
V100 are both GPU machine types.
1 example1 python main.py 0a2b3c4d Complete (0) -- 7 days ago CPU
2 example2 python train.py 1b2c3d4e Complete (0) -- 7 days ago K80
3 example3 python train.py 1a2c5d4f Complete (0) -- 7 days ago V100
spell ls only includes runs that have output files. If your run ended early, or if it did not save any files, then it will not show under
spell ls. You will still be able to see the run under
Also see: why was my run terminated?
If you are using your free credits, runs may be terminated if you do not have enough credits in your account for the full run.
Runs may also exit early if they encounter an error, which you can see with
spell logs <run id>. You can find more about runs and how to find your
run id in our docs.
Email us at email@example.com and we can help you delete your account.
To uninstall the CLI tool, use
pip uninstall spell.
We use Stripe to process payments. We accept all major credit and debit cards including Visa, MasterCard, American Express and Discover. We do not currently accept prepaid cards.
Billing occurs monthly and starts one month after your sign up date. You can check your billing period on your settings page or by using the
spell status command.
Yes. We bill by time used, so you will still be billed if you kill your run or if your run fails.
Check if the minimum machines for that machine type is set to 0. If so, it’s likely that the slow start up time is because Spell needs to bring up a new machine from scratch.
Check if you have any Additional Frameworks you have configured for that machine type. Try to only have the necessary frameworks you need. The fewer you have configured on a machine type, the faster Spell can bring up a new machine of that type from scratch.
We allow you some customization with regard to how available machine are.
By default “Minimum Machines” is set to 0, so we will terminate any machine when it is unused after it’s Idle Timeout has elapsed. You can set that higher if you want more availability - that will make a hello world run much faster. The tradeoff is that Amazon will charge you for that machine even when it’s Idle.
Another option is to set the 'Idle Timeout' which defaults to 30 minutes. This will mean that you have to wait for a machine to spin up for your first run but after that the machine will stay ready until the Idle Timeout has elapsed, so doing a new run on that same machine type within the Idle Timeout will be quick.
Double check that the machine you are requesting is available within the region where your cluster is located. For example, US-West-1 on AWS does not have any GPUs.
Ensure your quota is high enough to allow for the machines you’re requesting. If not, you can request a higher quota from AWS or GCP.
You should also get an error message emailed to your Org Billing Admin if either of the above is the case which will help you troubleshoot the problem.
For a full list of available machine types, see our docs.
Yes, we support Spot Instances in AWS and Preemptible Instances in GCP. In AWS, you need to increase your quota and have the role created for Spot Instances. They require different quotas and roles from the dedicated GPU machines of the same machine type.
Create an account in minutes or connect with our team to learn how Spell can accelerate your business.