Default environments

With the default Anaconda-based environments, you can define the hardware size and customize the software configuration of the runtime environment that you want to use to run your notebooks in Watson Studio.

Free default environment

Watson Studio offers one default Anaconda-based environment for the languages R and Python for free. The free default environment uses Python 3.5. If you want to work with Python 2.7 or R, create an environment based on the free default and select R the software configuration to use.

Environment Hardware configuration Software version
Default Python 3.5 Free 1 vCPU and 4 GB RAM Python 3.5

The free default environment has these restrictions:

  • You can create any number of these small runtime environments and customize them but only one free environment can be active at any one time.
  • You can’t schedule notebooks that run in a free environment. You must use a charged environment to schedule a notebook.

Default environments that consume capacity units

When you run a notebook in an Anaconda-based environment other than the free default, it consumes capacity unit hours (CUHs), which is the period of time the runtime is active, multiplied by the size of its hardware configuration.

For example, if your default environment is size S (with CU=2) and if you run it for 3 hours, you are billed for 6 CUHs. If your environment is size XS (CU=1), it consumes only 1 CUH, therefore, if you run it for 3 hours, you are billed for 3 CUHs.

You are charged based on your Watson Studio service plan. For up-to-date information, see the Watson Studio pricing plans.

The default Anaconda-based environments include the languages Python 3.5 and 3.6, and R. If you want to work with Python 2.7, select a default Python environment and choose Python 2 as the software version to use.

Watson Studio offers the following preset Anaconda-based environments:

Environment Hardware configuration Software version
Default Python 3.6 XS 2 vCPU and 8 GB RAM Python 3.6 *
Default Python 3.5 XS 2 vCPU and 8 GB RAM Python 3.5
Default Python 3.5 S 4 vCPU and 16 GB RAM Python 3.5
Default Python 3.5 XS + Beta of DO 2 vCPU and 8 GB RAM Python 3.5 + Decision
Optimization libraries * *
Default R 3.4 XS 2 vCPU and 8 GB RAM R-3.4 with r-essentials
Default R 3.4 S 4 vCPU and 16 GB RAM R-3.4 with r-essentials
  • * You should start using Python 3.6. Python 2.7 and 3.5 are being deprecated because of security issues.
  • * * Select this environment definition if you want to use the CPLEX and the DOcplex libraries to model and solve decision optimization problems that exceed the complexity that is supported by the Community Edition of the libraries in the other default Python environments. The Decision Optimization libraries for notebooks are currently in beta.

File system in default environments

The file system of each runtime has approximately 2 GB of free space for installing packages from conda or pip, or for temporary files. This means that you must be mindful of the size of the data file you load to your notebook. If you are working with large data sets, you should store the data set in smaller chunks in the IBM Cloud Object Storage associated with your project and process the data in smaller chunks in the notebook. Alternatively, you could run the notebook in a Spark environment.

Be aware that the file system of each runtime is non-persistent and cannot be shared across environments.To persist files in Watson Studio, you should use IBM Cloud Object Storage.

The easiest way to use IBM Cloud Object Storage in notebooks in projects is to leverage the project-lib package.

Runtime scope

Environment runtimes are always scoped to an environment definition and a user.

For example, if you associate each of your notebooks with its own environment, each notebook will get its own runtime. However, if you open a notebook in an environment, which you also selected for another notebook and that notebook has an active runtime, both notebook kernels will be active in the same runtime. In this case, both notebooks will use the compute and data resources available in the runtime that they share.

If you want to avoid sharing runtimes but want to use the same environment definition for multiple notebooks, you should create multiple custom environment definitions with the same specifications and associate each notebook with its own definition.

If different users in a project work with the same environment, each user will get a separate runtime.

If you select to run a version of a notebook as a scheduled job, each scheduled job will always start in a dedicated runtime and consume capacity unit hours (CUHs) that are tracked. The runtime is stopped when the job finishes.

Next steps