تلتزم Google بتعزيز المساواة العرقية للمجتمعات السوداء. أنظر كيف.
ترجمت واجهة Cloud Translation API‏ هذه الصفحة.
Switch to English

عامل ميناء

يستخدم Docker حاويات لإنشاء بيئات افتراضية تعزل تثبيت TensorFlow عن بقية النظام. يتم تشغيل برامج TensorFlow ضمن هذه البيئة الافتراضية التي يمكنها مشاركة الموارد مع الجهاز المضيف (أدلة الوصول ، واستخدام GPU ، والاتصال بالإنترنت ، وما إلى ذلك). يتم اختبار صور TensorFlow Docker لكل إصدار.

Docker هو أسهل طريقة لتمكين دعم TensorFlow GPU على Linux نظرًا لأن برنامج تشغيل NVIDIA® GPU فقط مطلوب على الجهاز المضيف (لا يلزم تثبيت NVIDIA® CUDA® Toolkit ).

متطلبات TensorFlow Docker

  1. قم بتثبيت Docker على جهاز المضيف المحلي.
  2. للحصول على دعم GPU على Linux ، قم بتثبيت دعم NVIDIA Docker .
    • انتبه إلى إصدار Docker الخاص بك مع docker -v . الإصدارات الأقدم من 19.03 تتطلب nvidia-docker2 و --runtime --runtime=nvidia flag. في الإصدارات بما في ذلك 19.03 وبعده ، ستستخدم حزمة nvidia-container-toolkit و - --gpus all flag. تم توثيق كلا الخيارين على الصفحة المرتبطة أعلاه.

قم بتنزيل صورة TensorFlow Docker

توجد صور TensorFlow Docker الرسمية في مستودع tensorflow / tensorflow Docker Hub. يتم وضع علامة على إصدارات الصور باستخدام التنسيق التالي:

بطاقة شعار وصف
latest أحدث إصدار من الصورة الثنائية لوحدة المعالجة المركزية TensorFlow. إفتراضي.
nightly يبني صورة TensorFlow ليلا. (غير مستقر)
version حدد إصدار الصورة الثنائية TensorFlow ، على سبيل المثال: 2.1.0
devel يبني ليلا من بيئة تطوير master TensorFlow. يتضمن كود مصدر TensorFlow.
custom-op صورة تجريبية خاصة لتطوير العمليات المخصصة TF.

:: مزيد من المعلومات هنا: https://github.com/tensorflow/custom-op :

تحتوي كل علامة أساسية على متغيرات تضيف وظائف أو تغيرها:

المتغيرات الوسم وصف
tag -gpu إصدار العلامة المحدد بدعم GPU. ( انظر أدناه )
tag -jupyter إصدار العلامة المحدد مع Jupyter (يتضمن دفاتر TensorFlow التعليمية)

يمكنك استخدام العديد من المتغيرات في وقت واحد. على سبيل المثال ، تقوم التنزيلات التالية بتنزيل صور إصدار TensorFlow إلى جهازك:

docker pull tensorflow/tensorflow                     # latest stable release
docker pull tensorflow/tensorflow:devel-gpu           # nightly dev release w/ GPU support
docker pull tensorflow/tensorflow:latest-gpu-jupyter  # latest release w/ GPU support and Jupyter

بدء حاوية TensorFlow Docker

لبدء حاوية مكونة من TensorFlow ، استخدم نموذج الأمر التالي:

docker run [-it] [--rm] [-p hostPort : containerPort ] tensorflow/tensorflow[: tag ] [ command ]

للحصول على التفاصيل ، راجع مرجع تشغيل عامل الميناء .

أمثلة على استخدام صور وحدة المعالجة المركزية فقط

دعونا نتحقق من تثبيت TensorFlow باستخدام latest صورة موسومة. يقوم Docker بتنزيل صورة TensorFlow جديدة عند تشغيلها لأول مرة:

docker run -it --rm tensorflow/tensorflow \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

دعونا نوضح بعض وصفات TensorFlow Docker. بدء جلسة shell bash داخل حاوية مكونة من TensorFlow:

docker run -it tensorflow/tensorflow bash

داخل الحاوية ، يمكنك بدء جلسة python واستيراد TensorFlow.

لتشغيل برنامج TensorFlow الذي تم تطويره على الجهاز المضيف داخل حاوية ، قم بتحميل دليل المضيف وتغيير دليل عمل الحاوية ( -v hostDir:containerDir -w workDir ):

docker run -it --rm -v $PWD:/tmp -w /tmp tensorflow/tensorflow python ./script.py

يمكن أن تنشأ مشكلات الإذن عندما تتعرض الملفات التي تم إنشاؤها داخل الحاوية للمضيف. من الأفضل عادةً تحرير الملفات على النظام المضيف.

ابدأ خادم Jupyter Notebook باستخدام بنية TensorFlow الليلية:

docker run -it -p 8888:8888 tensorflow/tensorflow:nightly-jupyter

اتبع التعليمات وافتح عنوان URL في متصفح الويب المضيف: http://127.0.0.1:8888/?token=...

دعم GPU

Docker هي أسهل طريقة لتشغيل TensorFlow على وحدة معالجة الرسومات لأن الجهاز المضيف لا يتطلب سوى برنامج تشغيل NVIDIA® ( NVIDIA® CUDA® Toolkit غير مطلوب).

قم بتثبيت Nvidia Container Toolkit لإضافة دعم NVIDIA® GPU إلى Docker. nvidia-container-runtime متاح فقط لنظام التشغيل Linux. راجع الأسئلة الشائعة حول دعم منصة nvidia-container-runtime للحصول على التفاصيل.

تحقق من توفر GPU:

lspci | grep -i nvidia

تحقق nvidia-docker تثبيت nvidia-docker :

docker run --gpus all --rm nvidia/cuda nvidia-smi

أمثلة على استخدام الصور التي تدعم GPU

قم بتنزيل وتشغيل صورة TensorFlow التي تدعم GPU (قد تستغرق بضع دقائق):

docker run --gpus all -it --rm tensorflow/tensorflow:latest-gpu \
   python -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

قد يستغرق الأمر بعض الوقت لإعداد الصورة التي تدعم GPU. في حالة تشغيل البرامج النصية المستندة إلى GPU بشكل متكرر ، يمكنك استخدام docker exec لإعادة استخدام الحاوية.

استخدم أحدث صورة TensorFlow GPU لبدء جلسة قشرة bash في الحاوية:

docker run --gpus all -it tensorflow/tensorflow:latest-gpu bash