IBM Cloud Pak® for Data Version 4.7 will reach end of support (EOS) on 31 July, 2025. For more information, see the Discontinuance of service announcement for IBM Cloud Pak for Data Version 4.X.
Upgrade to IBM Software Hub Version 5.1 before IBM Cloud Pak for Data Version 4.7 reaches end of support. For more information, see Upgrading IBM Software Hub in the IBM Software Hub Version 5.1 documentation.
Capabilities on Linux on IBM Z and IBM LinuxONE
When Cloud Pak for Data is installed on the IBM Z and IBM LinuxONE platforms, Watson Studio and Watson Machine Learning users can create, train, and deploy machine learning models.
The capabilities described for Watson Studio are distinct from a standalone solution called IBM Watson Machine Learning for z/OS (WML for z/OS or WMLz). Watson Machine Learning for z/OS is an enterprise machine learning solution that runs on IBM Z and Red Hat OpenShift Container Platform (OCP). You can run WML for z/OS as a standalone solution or infuse it into your enterprise AI capability as a scalable platform. For details, see Overview of WML for z/OS.
Review the following for Cloud Pak for Data installed on IBM Z or IBM LinuxONE platforms:
- Capabilities
- Supported frameworks
- Supported storage
- Restrictions
- Using an AutoAI generated notebook outside of Cloud Pak for Data
Capabilities
Using Watson Studio, Watson Machine Learning and Analytics Engine powered by Apache Spark services, Linux on IBM Z and LinuxONE users can do the following:
-
Use the Cloud Pak for Data resource specification injection (RSI) feature to apply patches directly to pods that are associated with Kubernetes deployments, StatefulSets, replicasets, replica controllers, jobs, and cronjobs.
-
Interactively discover, cleanse, and transform your data using Data Refinery.
-
Create projects to organize assets such as data, environments, and notebooks.
-
Use data that is uploaded in a project, or connect to remote data.
-
Build and train machine learning models, or code Python functions or scripts using Jupyter notebooks or Jupyter Lab.
-
Train predictive models using AutoAI, a graphical tool in Watson Studio that analyses your data and uses data algorithms, transformations, and parameter settings to create the best predictive model. AutoAI displays various potential models as model candidate pipelines and ranks them on a leaderboard for you to review. Save a pipeline as a model asset that you can deploy.
-
Create deployment spaces for organizing the resources to deploy models and run Python functions and scripts.
-
Create jobs to run notebooks or deployments.
-
Evaluate deployments using Watson OpenScale.
-
Create Python 3.9 runtimes in Watson Studio.
-
Create and run Spark applications on an Analytics Engine powered by Apache Spark instance on Cloud Pak for Data. The supported Spark and language versions include:
- Spark 3.3 & Python 3.9
- Spark 3.2 & Python 3.9 (Spark applications with Spark 3.2 have been deprecated. Choose a Spark application with Spark 3.3 instead.)
- Spark 3.3 & Python 3.10
To run Spark jobs, see Getting started with Spark applications.
-
Leverage IBM z16 on-chip AI accelerator on IBM Z and IBM LinuxONE:
- Support for SnapML 1.9 and higher
- Support for Tensorflow 2.7.2 and higher (Tech preview)
-
Backup and restore is supported for Cloud Pak for Data on Linux on IBM Z and LinuxONE.
Supported frameworks
Build assets using these popular machine learning frameworks and software.
Python 3.9 runtimes (runtime-22.1-py3.9) with these frameworks:
- scikit-learn 1.0.2
- xgboost 1.5.2
- snapml 1.13.1
- tensorflow 2.7.2
- pytorch 1.10.2
- Opencv, torchvision
Python 3.9 runtimes (runtime_22.1-py3.9-nnpa) with IBM z16 on-chip AI accelerator capabilities on IBM Z and IBM LinuxONE:
-
snapml 1.13.1
-
tensorflow 2.7.2 (Tech preview)
-
runtime_22.1-py3.9-nnpa also supports these frameworks:
- scikit-learn 1.0.2
- xgboost 1.5.2
- pytorch 1.10.2
- Opencv, torchvision
Python 3.10 runtimes (runtime-22.2-py3.10) with these frameworks:
- scikit-learn 1.1.1
- xgboost 1.6.2
- snapml 1.11.1
- tensorflow 2.9.3
- pytorch 1.12.1
- Opencv, torchvision, and lightgbm
- AutoAI 0.1
Framework notes:
- Snap ML 1.11.1 introduces the Graph Feature Preprocessor, a Scikit-learn compatible preprocessor that enables scalable, real-time feature extraction from graph-structured data. The Graph Feature Preprocessor can generate a very rich set of edge features by analyzing the graph topology and extracting meaningful substructures. Such additional features can significantly increase the predictive power of machine learning models in practical settings, such as when monitoring suspicious transactions and account activities for money laundering.
- This release does not support rt23_1 software specifications for IBM Z and IBM LinuxONE. For details, see Supported frameworks
Supported storage
For clusters that are installed on Linux on IBM Z and LinuxONE, these storage solutions are supported:
- Openshift Container Storage (OCS) and OpenShift Container Platform version 4.9 or later, or Openshift Data Foundation (ODF). Requires OpenShift Container Platform version 4.8 or later.
- Network File System (NFS)
- IBM Storage Scale Container Native
Restrictions for Linux on IBM Z and LinuxONE users
When Cloud Pak for Data is installed on the Linux on IBM Z and LinuxONE platforms, Watson Studio and Watson Machine Learning users will not be able to use, run, or deploy the following types of assets:
- Assets trained using RStudio, such as RShiny apps or assets based on the R framework
- Assets based on these runtimes: Spark, Python 3.7 or ONNX 1.8.1
- Deep Learning assets built with deprecated or discontinued versions of frameworks; for example, assets built with TensorFlow 2.4 or PyTorch 1.7 frameworks
Limitations:
- Attempting to use, train, or deploy unsupported assets on Cloud Pak for Data running on an Linux on IBM Z or LinuxONE platform will fail with an error.
- On an upgraded Cloud Pak for Data cluster where the release version is 4.7.0 after the upgrade and the Jupyter notebook runtime is "Runtime 22.1 on Python 3.9", the highest supported value for
versionprovided in thewml_credentialobject for authentication using the Watson Machine Learning python client is 4.5. To use the latest version for the release, upgrade the Runtime 22.1 on Python 3.9. - Backup and restore is supported for Cloud Pak for Data on Linux on IBM Z and LinuxONE. However, currently
cpd-cli oadpcommands must be run from an x86_64 machine. - Offline volume backup is not supported for IBM z and LinuxONE. This feature is deprecated and will be removed in a future release.
- The
cpdbr-agentis not supported on Linux on IBM Z and IBM LinuxONE. - With the default runtimes, models trained on other platforms and deployed on Linux on IBM Z and Linux ONE might not work as expected. A potential solution is to deploy the model on a custom Python runtime.
- ORC (Optimized Row Columnar)input format is not supported for evaluating batch deployments using Watson OpenScale.
- Parquet file data format is not supported for as input for an AutoAI time series experiment.
- Batch processing in Watson OpenScale using IBM Analytics Engine with OpenShift Data Foundation (ODF) storage class storage is not supported. Use NFS storage instead.
- Running generated code to add data from a connection on IBM Z can cause kernel failure.
Using an AutoAI generated notebook outside of Cloud Pak for Data
To use an AutoAI generated notebook outside Cloud Pak for Data, use these steps to install the required packages for Linux on zSystem.
-
Install Conda on the zLinux operating system.
-
Prepare the
pyarrow 8.0.0Python package installation dependencies with Open-CE.Note: This package is not available on the zLinux conda channel.-
Create a conda environment.
Note:This example uses
/optas the working directory for the local conda channel.cd /opt conda create -y -n pyarrow-env conda activate pyarrow-env conda install -y conda-build conda install -y -c open-ce open-ce-builder python=3.10 -
Create a Git clone of the Open-CE project and check out the release to the
open-ce-r1.7branch.git clone -b open-ce-r1.7 https://github.com/open-ce/open-ce.git -
Install a patch package with the following command:
yum install patch -
Navigate to the Open-CE project and build the pyarrow dependencies.
cd open-ce open-ce build env --python_versions 3.10 --build_types cpu envs/arrow-env.yaml -
Check the condabuild folder to find the pyarrow dependencies
ls -1 condabuild/ channeldata.json index.html linux-s390x noarch opence-conda-env-py3.10-cpu-openmpi.yaml ************************************************** ls -1 condabuild/linux-s390x/ abseil-cpp-20210324.2-he499f12_0.conda arrow-cpp-8.0.0-py310h63c5c10_2_cpu.conda arrow-cpp-proc-8.0.0-cpu.conda boost-cpp-1.65.1-hebff1d6_4.conda current_repodata.json current_repodata.json.bz2 gflags-2.2.2-heb72281_0.conda glog-0.5.0-he499f12_0.conda grpc-cpp-1.41.0-hae1bb83_pb3.19_4.conda index.html libboost-1.65.1-h896dd0f_4.conda libevent-2.1.10-h8df5d65_2.conda libthrift-0.13.0-h333d347_6.conda libutf8proc-2.6.1-h63165b7_0.conda orc-1.7.4-hb4085e4_1.conda pyarrow-8.0.0-py310he9dcaf6_2_cpu.conda rapidjson-1.1.0-h4cc523a_0.conda re2-2020.11.01-hcac3278_0.conda repodata_from_packages.json repodata_from_packages.json.bz2 repodata.json repodata.json.bz2 thrift-compiler-0.13.0-h333d347_6.conda thrift-cpp-0.13.0-6.conda -
Deactivate the pyarrow-env conda virtual environment and navigate back to the /opt directory.
-
-
Prepare the Tensorflow Python package installation dependencies with Open-CE.
Note: This package is not available on the zLinux conda channel.- Create a conda environment.
cd /opt conda create -y -n tensorflow-env conda activate tensorflow-env conda install -y conda-build conda install -y -c open-ce open-ce-builder python=3.10 - Navigate to the Open-CE project and build the Tensorflow dependencies.
cd /opt/open-ce open-ce build env --python_versions 3.10 --build_types cpu envs/tensorflow-env.yaml - Check the condabuild folder to find the tensorflow-cpu dependencies.
ls -1 condabuild/ channeldata.json icons index.html linux-s390x noarch opence-conda-env-py3.10-cpu-openmpi.yaml ****************************************************** ls -1 condabuild/linux-s390x/ bazel-5.1.1-h447df78_2.conda clang-14.0.6-0.conda clang-14-14.0.6-default_hc034eec_0.conda clangdev-14.0.6-default_hc034eec_0.conda clang-format-14.0.6-default_hc034eec_0.conda clang-format-14-14.0.6-default_hc034eec_0.conda clang-tools-14.0.6-default_hc034eec_0.conda clangxx-14.0.6-default_h050e89a_0.conda current_repodata.json current_repodata.json.bz2 dm-tree-0.1.5-py310h17e39e8_5.conda flatbuffers-2.0.0-he499f12_0.conda googleapis-common-protos-1.52.0-py310hb7eb58e_0.conda googleapis-common-protos-grpc-1.52.0-h785a63c_0.conda h5py-3.6.0-py310ha7896db_0.conda index.html libclang13-14.0.6-default_h99f1993_0.conda libclang-14.0.6-default_hc034eec_0.conda libclang-cpp-14.0.6-default_hc034eec_0.conda libclang-cpp14-14.0.6-default_hc034eec_0.conda libtensorflow-2.9.3-hd9d4759_cpu_pb3.19_4.conda promise-2.3-py310h6d39d64_0.conda pybind11-2.9.2-py310he3a6269_0.conda pybind11-global-2.9.2-py310h0c46cd6_0.conda repodata_from_packages.json repodata_from_packages.json.bz2 repodata.json repodata.json.bz2 scipy-1.8.1-py310h5fdd5b3_0.conda tensorflow-addons-0.17.0-py310h88a663b_2_cpu.conda tensorflow-addons-proc-0.17.0-cpu.conda tensorflow-base-2.9.3-cpu_py310_pb3.19_4.conda tensorflow-cpu-2.9.3-py310_1.conda tensorflow-model-optimization-0.7.3-py310_2.conda tensorflow-probability-0.17.0-py310_3.conda tensorflow_select-1.0-cpu_2.conda tensorflow-text-2.9.0-hf137b60_py310_pb3.19_3.conda
- Create a conda environment.
-
Run the conda index command on the condabuild folder.
conda index condabuild -
Add the following lines in the
~/.condarcfile to make use of thecondabuildfolder as a local conda channel.channels: - /opt/open-ce/condabuild - defaults -
Check the Conda channel to find the pyarrow and tensorflow-cpu installation package.
conda search pyarrow conda search tensorflow-cpu Loading channels: done # Name Version Build Channel pyarrow 8.0.0 py310he9dcaf6_2_cpu condabuild (tensorflow) [root@recorder1 open-ce]# conda search tensorflow-cpu Loading channels: done # Name Version Build Channel tensorflow-cpu 2.9.3 py310_1 condabuild (tensorflow) [root@recorder1 open-ce]# -
Deactivate the tensorflow-env conda virtual environment and navigate back to the /opt directory.
conda deactivate cd /opt -
Create a Conda virtual environment for autoai installation and activate it.
conda create -y -n autoai python=3.10 conda activate autoai -
Create requirements.linux-s390x.txt file and add this package to it:
cython matplotlib pandas>=0.24.2,<1.6 numpy>=1.20.3,<1.24 packaging psutil importlib-metadata coverage urllib3<2 xgboost>=1.5.1,<1.7 typing_extensions pyarrow==8.0.0 scikit-learn>=1.0.2,<=1.1.1 tensorflow-cpu>=2.7.0,<2.10 joblib>=0.11 statsmodels<0.14 dill>=0.3.1.1 networkx>=2.5.1 py4j>=0.10.9,<0.10.10 jpype1>=1.3.0 simplejson==3.17.6 PyWavelets pytz traitlets<6 -
Install requirements.linux-s390x.txt file.
conda install -y --file requirements.linux-s390x.txt -
Create requirements.linux-s390x.pypi.txt file and add these packages to it:
gensim==4.1.2 pytest pytest-cov pep8 pytest-pep8 ibm-watson-machine-learning mlxtend>=0.17.0 lale>=0.6.8,<0.8 -
Install requirements.linux-s390x.pypi.txt file.
pip install -r requirements.linux-s390x.pypi.txt -
Install autoai-libs and autoai-ts-libs:
pip install autoai-libs==1.15.2 --no-deps pip install autoai-ts-libs==2.0.13 --no-deps
Learn more
Deploying and managing models and functions
Parent topic: Projects