diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 5b6eb2ad2a..66e1923573 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,11 @@ CHANGELOG ========= +1.9.0 +===== + +* feature: Estimators: add support for MXNet 1.2.1 + 1.8.0 ===== diff --git a/README.rst b/README.rst index b015a17180..5c285b9728 100644 --- a/README.rst +++ b/README.rst @@ -51,7 +51,7 @@ You can install from source by cloning this repository and issuing a pip install git clone https://github.com/aws/sagemaker-python-sdk.git python setup.py sdist - pip install dist/sagemaker-1.8.0.tar.gz + pip install dist/sagemaker-1.9.0.tar.gz Supported Operating Systems ~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -240,7 +240,7 @@ MXNet SageMaker Estimators With MXNet Estimators, you can train and host MXNet models on Amazon SageMaker. -Supported versions of MXNet: ``1.1.0``, ``1.0.0``, ``0.12.1``. +Supported versions of MXNet: ``1.2.1``, ``1.1.0``, ``1.0.0``, ``0.12.1``. More details at `MXNet SageMaker Estimators and Models`_. diff --git a/setup.py b/setup.py index 1358fff9b3..21f7db8098 100644 --- a/setup.py +++ b/setup.py @@ -23,7 +23,7 @@ def read(fname): setup(name="sagemaker", - version="1.8.0", + version="1.9.0", description="Open source library for training and deploying models on Amazon SageMaker.", packages=find_packages('src'), package_dir={'': 'src'}, diff --git a/src/sagemaker/mxnet/README.rst b/src/sagemaker/mxnet/README.rst index a297ab046c..bdb1916bd4 100644 --- a/src/sagemaker/mxnet/README.rst +++ b/src/sagemaker/mxnet/README.rst @@ -5,7 +5,7 @@ MXNet SageMaker Estimators and Models With MXNet Estimators, you can train and host MXNet models on Amazon SageMaker. -Supported versions of MXNet: ``1.1.0``, ``1.0.0``, ``0.12.1``. +Supported versions of MXNet: ``1.2.1``, ``1.1.0``, ``1.0.0``, ``0.12.1``. Training with MXNet ~~~~~~~~~~~~~~~~~~~ @@ -81,7 +81,7 @@ If you want to run your training script locally via the Python interpreter, look Using MXNet and numpy ^^^^^^^^^^^^^^^^^^^^^ -You can import both ``mxnet`` and ``numpy`` in your training script. When your script runs in SageMaker, it will run with access to MXNet version 1.0.0 and numpy version 1.13.3 by default. For more information on the environment your script runs in, please see `SageMaker MXNet Containers <#sagemaker-mxnet-containers>`__. +You can import both ``mxnet`` and ``numpy`` in your training script. When your script runs in SageMaker, it will run with access to MXNet version 1.2.1 and numpy version 1.14.5 by default. For more information on the environment your script runs in, please see `SageMaker MXNet Containers <#sagemaker-mxnet-containers>`__. Running an MXNet training script in SageMaker ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -584,23 +584,23 @@ When training and deploying training scripts, SageMaker runs your Python script SageMaker runs MXNet Estimator scripts in either Python 2.7 or Python 3.5. You can select the Python version by passing a ``py_version`` keyword arg to the MXNet Estimator constructor. Setting this to ``py2`` (the default) will cause your training script to be run on Python 2.7. Setting this to ``py3`` will cause your training script to be run on Python 3.5. This Python version applies to both the Training Job, created by fit, and the Endpoint, created by deploy. -Your MXNet training script will be run on version 1.1.0 by default. (See below for how to choose a different version, and currently supported versions.) The decision to use the GPU or CPU version of MXNet is made by the ``train_instance_type``, set on the MXNet constructor. If you choose a GPU instance type, your training job will be run on a GPU version of MXNet. If you choose a CPU instance type, your training job will be run on a CPU version of MXNet. Similarly, when you call deploy, specifying a GPU or CPU deploy_instance_type, will control which MXNet build your Endpoint runs. +Your MXNet training script will be run on version 1.2.1 by default. (See below for how to choose a different version, and currently supported versions.) The decision to use the GPU or CPU version of MXNet is made by the ``train_instance_type``, set on the MXNet constructor. If you choose a GPU instance type, your training job will be run on a GPU version of MXNet. If you choose a CPU instance type, your training job will be run on a CPU version of MXNet. Similarly, when you call deploy, specifying a GPU or CPU deploy_instance_type, will control which MXNet build your Endpoint runs. The Docker images have the following dependencies installed: -+-------------------------+--------------+-------------+-------------+ -| Dependencies | MXNet 0.12.1 | MXNet 1.0.0 | MXNet 1.1.0 | -+-------------------------+--------------+-------------+-------------+ -| Python | 2.7 or 3.5 | 2.7 or 3.5| 2.7 or 3.5| -+-------------------------+--------------+-------------+-------------+ -| CUDA | 9.0 | 9.0 | 9.0 | -+-------------------------+--------------+-------------+-------------+ -| numpy | 1.13.3 | 1.13.3 | 1.13.3 | -+-------------------------+--------------+-------------+-------------+ ++-------------------------+--------------+-------------+-------------+-------------+ +| Dependencies | MXNet 0.12.1 | MXNet 1.0.0 | MXNet 1.1.0 | MXNet 1.2.1 | ++-------------------------+--------------+-------------+-------------+-------------+ +| Python | 2.7 or 3.5 | 2.7 or 3.5| 2.7 or 3.5| 2.7 or 3.5| ++-------------------------+--------------+-------------+-------------+-------------+ +| CUDA | 9.0 | 9.0 | 9.0 | 9.0 | ++-------------------------+--------------+-------------+-------------+-------------+ +| numpy | 1.13.3 | 1.13.3 | 1.13.3 | 1.14.5 | ++-------------------------+--------------+-------------+-------------+-------------+ The Docker images extend Ubuntu 16.04. -You can select version of MXNet by passing a ``framework_version`` keyword arg to the MXNet Estimator constructor. Currently supported versions are listed in the above table. You can also set ``framework_version`` to only specify major and minor version, e.g ``1.1``, which will cause your training script to be run on the latest supported patch version of that minor version, which in this example would be 1.1.0. +You can select version of MXNet by passing a ``framework_version`` keyword arg to the MXNet Estimator constructor. Currently supported versions are listed in the above table. You can also set ``framework_version`` to only specify major and minor version, e.g ``1.2``, which will cause your training script to be run on the latest supported patch version of that minor version, which in this example would be 1.2.1. Alternatively, you can build your own image by following the instructions in the SageMaker MXNet containers repository, and passing ``image_name`` to the MXNet Estimator constructor. You can visit the SageMaker MXNet containers repository here: https://github.com/aws/sagemaker-mxnet-containers/ diff --git a/src/sagemaker/mxnet/defaults.py b/src/sagemaker/mxnet/defaults.py index 99819a9bfc..31efe94ff7 100644 --- a/src/sagemaker/mxnet/defaults.py +++ b/src/sagemaker/mxnet/defaults.py @@ -12,4 +12,4 @@ # language governing permissions and limitations under the License. from __future__ import absolute_import -MXNET_VERSION = '1.1' +MXNET_VERSION = '1.2' diff --git a/tests/conftest.py b/tests/conftest.py index fc6b383d82..7c379a9f06 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -76,7 +76,7 @@ def tf_version(request): return request.param -@pytest.fixture(scope='module', params=['0.12', '0.12.1', '1.0', '1.0.0', '1.1', '1.1.0']) +@pytest.fixture(scope='module', params=['0.12', '0.12.1', '1.0', '1.0.0', '1.1', '1.1.0', '1.2', '1.2.1']) def mxnet_version(request): return request.param @@ -96,7 +96,7 @@ def tf_full_version(request): return request.param -@pytest.fixture(scope='module', params=['0.12.1', '1.0.0', '1.1.0']) +@pytest.fixture(scope='module', params=['0.12.1', '1.0.0', '1.1.0', '1.2.1']) def mxnet_full_version(request): return request.param