chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
.. Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
.. http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
.. Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
|
||||
.. _docker-images:
|
||||
|
||||
Docker Images
|
||||
=============
|
||||
We provide docker utility scripts to help developers to setup development environment.
|
||||
They are also helpful run through TVM demo and tutorials.
|
||||
We need `docker <https://docs.docker.com/engine/installation/>`_ and
|
||||
`NVIDIA Container Toolkit <https://github.com/NVIDIA/nvidia-container-toolkit>`_
|
||||
if we want to use CUDA.
|
||||
|
||||
Get a tvm source distribution or clone the GitHub repo to get the auxiliary scripts
|
||||
|
||||
.. code:: bash
|
||||
|
||||
git clone --recursive https://github.com/apache/tvm tvm
|
||||
|
||||
|
||||
We can then use the following command to launch a docker image.
|
||||
|
||||
.. code:: bash
|
||||
|
||||
/path/to/tvm/docker/bash.sh <image-name>
|
||||
|
||||
Here the image-name can be a local docker image name, e.g. ``tvm.ci_cpu`` after you have done the local build.
|
||||
|
||||
This auxiliary script does the following things:
|
||||
|
||||
- Mount current directory to ``/workspace``
|
||||
- Switch user to be the same user that calls the ``bash.sh`` (so you can read/write host system)
|
||||
- Use the host-side network on Linux. Use the bridge network and expose port 8888 on macOS,
|
||||
because host networking driver isn't supported. (so you can use ``jupyter notebook``)
|
||||
|
||||
|
||||
Then you can start a Jupyter notebook by typing
|
||||
|
||||
.. code:: bash
|
||||
|
||||
jupyter notebook
|
||||
|
||||
You might see an error ``OSError: [Errno 99] Cannot assign requested address`` when starting
|
||||
a Jupyter notebook on macOS. You can change the binding IP address by
|
||||
|
||||
.. code:: bash
|
||||
|
||||
jupyter notebook --ip=0.0.0.0
|
||||
|
||||
Note that on macOS, because ``bash.sh`` uses the Docker bridge network, Jupyter will be reportedly running
|
||||
at an URL like ``http://{container_hostname}:8888/?token=...``. You should replace the ``container_hostname``
|
||||
with ``localhost`` when pasting it into browser.
|
||||
|
||||
|
||||
Docker Source
|
||||
-------------
|
||||
Check out `the docker source <https://github.com/apache/tvm/tree/main/docker>`_ if you are interested in
|
||||
building your own docker images.
|
||||
|
||||
|
||||
Run the following command to build the docker image.
|
||||
|
||||
.. code:: bash
|
||||
|
||||
/path/to/tvm/docker/build.sh <image-name>
|
||||
|
||||
|
||||
You can find some un-official third party pre-built images at `<https://hub.docker.com/r/tlcpack/>`_.
|
||||
These images are used for test purposes and are NOT of the ASF release.
|
||||
Reference in New Issue
Block a user