تثبيت Tensorflow على WSL2 Ubuntu-20.04

visible
visible
date
Mar 5, 2023
thumbnail
maxresdefault.jpg
slug
تثبيت_tensorflow_على_wsl2_ubuntu_2004
author
status
Public
tags
المدونة
الذكاء الاصطناعي
summary
يوضح هذا المستند كيفية تثبيت Tensorflow و cuDNN و TensorRT على WSL2 Ubuntu-20.04، ويشرح أيضًا ما هي هذه المكتبات وكيف يمكن استخدامها في تطوير تطبيقات الذكاء الاصطناعي ذات الأداء العالي والموثوقية والكفاءة باستخدام قوة معالجة الرسومات.
type
Post
updatedAt
Dec 13, 2023 06:07 AM
Status
Done
Person

مقدمة.

TensorFlow هي إطار عمل للتعلم الآلي والذي تم تطويره بواسطة الباحثين والمطورين في جوجل. يتم استخدامه على نطاق واسع في تطوير النماذج الذكية والذي يتم تدريبها على البيانات، لتحليل النصوص والصور، وتصنيف الأصناف، وتحويل النصوص إلى كلام وكذلك لتحليل الصوت. يتم استخدام TensorFlow في مجموعة واسعة من المجالات بما في ذلك الروبوتات، والبيولوجيا، والتعليم، واللغة الطبيعية، والتعلم الآلي، والرؤية الحاسوبية، وغيرها الكثير.
WSL2 هو تطبيق يتيح للمستخدمين تشغيل نظام التشغيل لينكس على ويندوز 10. يتميز WSL2 بأنه يوفر أداءً أعلى وإمكانية الوصول إلى الكثير من الأدوات والتطبيقات التي تعمل على Linux. بالإضافة إلى ذلك، يمكن استخدام WSL2 لتشغيل تطبيقات Linux داخل بيئة ويندوز دون الحاجة إلى إعادة تشغيل الجهاز أو استخدام برنامج افتراضي. هذا يساعد على تحسين كفاءة العمل وتحسين إنتاجية المستخدمين، خاصةً لأولئك الذين يحتاجون إلى استخدام برنامج لينكس لإدارة بياناتهم أو تطوير تطبيقاتهم.

WSL2 Ubuntu-20.04

يمكن تثبيت WSL2 عن طريق الأمر الآتي:
  1. قم بفتح نافذة PowerShell كمسؤول.
  1. أدخل الأمر التالي لتحميل حزمة WSL:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  1. أدخل الأمر التالي لتحميل حزمة Virtual Machine Platform:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

الطريقة الاولى

  1. قم بإعادة تشغيل الحاسوب الخاص بك.
  1. قم بتحميل محرك WSL2 من هذا الرابط: https://aka.ms/wsl2kernel.
  1. بعد تنزيله، قم بتثبيت ملف .msi.
  1. قم بتحميل توزيعة Ubuntu-20.04 من متجر Microsoft Store.
  1. قم بتشغيل Ubuntu-20.04 وانتظر حتى يتم تثبيتها.
  1. قم بإنشاء مستخدم وكلمة مرور عند الطلب.

الطريقة الثانية

يمكن تثبيت WSL2 Ubuntu-20.04 باستخدام الأمر التالي:
wsl --install -d<Distributions>
يجب استبدال <Distributions> بتوزيعة Linux المطلوبة، في هذه الحالة Ubuntu-20.04. يمكن استخدام هذا الأمر لتثبيت WSL2 وتوزيعة Linux المحددة وتكوين المستخدم الافتراضي في خطوة واحدة بدلاً من إجراء الخطوات السابقة يدويًا.
💡
بعد التثبيت و الانتهاء من ادخال المعلومات مثل اسم المستخدم و كلمة المرور , يفضل تحديث النظام من خلال الاوامر التالية. sudo apt-get update sudo apt-get upgreade

TensorFlow.

لتثبيت TensorFlow بشكل صحيح، يجب تثبيت بعض المكتبات الأساسية أولاً. من بين هذه المكتبات:
  • NVIDIA CUDA Driver for Windows 🪟.
  • NVIDIA CUDA Toolkit.
  • cuDNN.
  • TensorRT.

Join the NVIDIA Developer Program.

للتسجيل في برنامج مطوري NVIDIA، يمكن القيام بالخطوات التالية:
  1. الانتقال إلى الموقع الرسمي لبرنامج مطوري NVIDIA: https://developer.nvidia.com/.
  1. اختيار "التسجيل" في الزاوية اليمنى العليا من الصفحة الرئيسية.
  1. إدخال البيانات المطلوبة، بما في ذلك الاسم وعنوان البريد الإلكتروني وكلمة المرور وبلد الإقامة والهدف من الاشتراك في البرنامج.
  1. قراءة الشروط والأحكام والموافقة عليها.
  1. النقر على "إرسال" لإرسال طلب التسجيل.
  1. تأكيد البريد الإلكتروني الخاص بك عبر الرابط المرسل إليه.
  1. تسجيل الدخول إلى حسابك الجديد في برنامج مطوري NVIDIA.

NVIDIA CUDA Driver For Windows

notion image
يرجى زيارة الموقع الرسمي لـ NVIDIA واتباع الخطوات التالية:
  1. الانتقال إلى موقع NVIDIA الرسمي: https://www.nvidia.com/.
  1. النقر على "حمل الآن" في الزاوية العليا اليمنى من الصفحة الرئيسية.
  1. تحديد نوع البطاقة الرسومية الخاصة بك ونظام التشغيل واللغة، ثم النقر على "بحث".
  1. النقر على "تحميل" بجانب إصدار برنامج التشغيل المطلوب.
  1. اختيار "مخصص: تثبيت برامج تشغيل الرسومات" والنقر على "التالي".
  1. قبول اتفاقية الترخيص والنقر على "التالي".
  1. النقر على "تثبيت" لتثبيت برنامج التشغيل.
  1. إعادة تشغيل الحاسوب الخاص بك.
بعد تثبيت برنامج التشغيل، يرجى تنفيذ الخطوات الإضافية التالية:
  1. قم بفتح الملف المناسب لبرنامج تشغيل CUDA الذي تم تنزيله.
  1. اختيار "تثبيت" لبدء عملية التثبيت.
  1. قبول اتفاقية الترخيص والنقر على "التالي".
  1. اختيار "التثبيت فقط" والنقر على "التالي".
  1. تحديد المكان الذي تريد تثبيت برنامج التشغيل فيه، ثم النقر على "التالي".
  1. النقر على "تثبيت" لبدء التثبيت.
  1. الانتظار حتى يتم الانتهاء من التثبيت.

NVIDIA CUDA Toolkit

لتحديث WSL2 وإغلاقه وإعادة فتحه، يرجى اتباع الخطوات التالية:
  1. فتح نافذة الـ cmd.
  1. كتابة الأمر التالي لتحديث WSL2:
wsl --update
  1. بعد تحديث WSL2، يمكنك إغلاقه بكتابة الأمر التالي:
wsl --shutdown
  1. بعد إغلاق WSL2، يمكن إعادة فتحه مرة أخرى بكتابة الأمر التالي:
wsl
بعد تنفيذ هذه الخطوات، يجب أن يكون WSL2 قد تم تحديثه وإعادة فتحه بنجاح.

Get the NVIDIA Public Key:

sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/3bf863cc.pub
notion image

Add NVIDIA to the Source List Directory:

sudo sh -c 'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64 /" > /etc/apt/sources.list.d/cuda.list'
notion image

Update the Source List and Source List Directory

تحديث النظام

بعد التثبيت و الانتهاء من ادخال المعلومات , يفضل تحديث النظام بكتابة الأوامر التالية في الـ command prompt.
sudo apt-get update
sudo apt-get upgrade -y

Install NVIDIA CUDA Toolkit.

NVIDIA CUDA Toolkit هو مجموعة من الأدوات التي تمكّن المطورين من تطوير تطبيقات CUDA المستندة إلى GPU. تعتمد مكتبة CUDA على تقنية NVIDIA CUDA المستندة إلى GPU التي تستخدم قوة معالجة الرسومات لتسريع العمليات الحسابية. يضم المجموعة مكتبات وأدوات وملفات رأس ومشغلات لتشغيل التطبيقات المستندة إلى GPU. يمكن استخدام NVIDIA CUDA Toolkit في تطوير تطبيقات ذات أداء عالي للحوسبة الموزعة والحساب العلمي والتعلم العميق والذكاء الاصطناعي وغيرها من التطبيقات المستندة إلى GPU.
تتيح مكتبة CUDA للمطورين استخدام قوة الحوسبة الموزعة عبر العديد من المعالجات المركزية المتصلة بخوادم أو شبكات موزعة. تعمل هذه التقنية على تعزيز الأداء وتقليل وقت التطوير وتحسين تجربة المستخدم النهائي.
وبالإضافة إلى ذلك، يمكن لمطوري البرامج استخدام NVIDIA CUDA Toolkit في تطوير تطبيقات للحساب العلمي والبيانات الضخمة والتعلّم الآلي وتحليل الصور والفيديو والألعاب والخرائط الذهنية وغيرها. وتتميز NVIDIA CUDA Toolkit بالأداء العالي والقدرة على العمل مع البيانات الكبيرة، مما يجعلها خيارًا شائعًا بين المطورين في العالم الحديث.
في النهاية، يعد NVIDIA CUDA Toolkit موردًا قويًا للمطورين الذين يرغبون في تطوير تطبيقات عالية الأداء والموثوقية والكفاءة باستخدام قوة معالجة الرسومات. يمكن استخدام هذه المكتبة في العديد من المجالات، بما في ذلك الحوسبة العلمية والبيانات الضخمة والتعلّم الآلي والألعاب والخرائط الذهنية وغيرها من التطبيقات المستندة إلى GPU.

تثبيت NVIDIA CUDA Toolkit

بعد الانتهاء من تحديث النظام، يمكن استخدام الأمر التالي لتثبيت CUDA.
sudo apt-get --yes install cuda
بعد الانتهاء من التثبيت:
notion image
💡
ملاحظة هامة: يجب التأكد من توافر بطاقة رسومية من نوع NVIDIA لتثبيت CUDA Toolkit و cuDNN و TensorRT بنجاح.

cuDNN

cuDNN هي مكتبة برمجية متخصصة في تسريع الشبكات العصبية الاصطناعية التي تعمل على معالجة الصور والفيديو والصوت والنصوص. تم تحسين cuDNN للاستخدام مع معالجات NVIDIA و CUDA ، وهي توفر أداءً ممتازًا وفعالية عالية في الوقت الفعلي وتسريع كبير لعمليات التدريب والتنبؤ. تستخدم cuDNN بشكل واسع في مجالات مثل الذكاء الاصطناعي والتعلم الآلي والرؤية الحاسوبية ومعالجة الصوت والنصوص والإحصاءات والفيزياء والكيمياء والأحياء والطب والصحة والعلوم الاجتماعية والعلوم الإنسانية.

تثبيت cuDNN

Add NVIDIA Machine Learning to the Source List Directory

sudo sh -c 'echo "deb https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/nvidia-ml.list'
To update the system, please enter the following command in the command prompt:
sudo apt-get update
⚠️
اذا ظهرت لك رسالة خطاء اثناء التحديث نفذ الخطوات التي في الاسفل.
حتى تكون متأكدًا من حل جميع المشاكل المحتملة، يمكن تنفيذ الخطوات التالية:
  1. قم بتنزيل المفتاح العام لمطوري NVIDIA باستخدام الأمر التالي:
wget https://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu2004/x86_64/7fa2af80.pub
  1. قم بإضافة المفتاح العام الذي تم تنزيله باستخدام الأمر التالي:
sudo apt-key add 7fa2af80.pub
  1. قم بإضافة مستودع NVIDIA Machine Learning إلى مجلد قائمة المصادر باستخدام الأمر التالي:
sudo sh -c 'echo "deb <http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu2004/x86_64> /" > /etc/apt/sources.list.d/nvidia-machine-learning.list'
  1. قم بتحديث قائمة المصادر باستخدام الأمر التالي:
sudo apt-get update

Issue apt-transport-<http>

في حال ظهور مشكلة apt-transport-<http> يمكن تثبيت المكتبة باستخدام الأمر التالي:
apt-get install apt-transport-https
إذا واجهتك مشكلة في مستودع NVIDIA، يمكنك إعادة تثبيت المفاتيح باستخدام الأمر التالي:
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu2004/x86_64/7fa2af80.pub
sudo apt-get update

cuDDN

sudo apt-get install --yes --no-install-recommends libcudnn7=7.6.5.32-1+cuda10.2 libcudnn7-dev=7.6.5.32-1+cuda10.2
notion image

TensorRT

TensorRT هو مكتبة متخصصة في تسريع تطبيقات الذكاء الاصطناعي التي تم تطويرها بواسطة شركة NVIDIA. وهي تهدف إلى تحسين أداء النماذج التعلم الآلي الخاصة بك عند تشغيلها على بطاقات الرسومات التي تدعم تقنية CUDA. يتكون TensorRT من مجموعة من التقنيات المختلفة التي تستخدم لتحسين أداء تطبيقات الذكاء الاصطناعي.
تتميز مكتبة TensorRT بالعديد من الميزات المفيدة التي تجعلها خيارًا شائعًا بين المطورين في جميع أنحاء العالم. فهي تستخدم تقنيات تحسين النمذجة وتحسين الحوسبة الأساسية وتحسين الذاكرة لتعزيز أداء عمليات تعلم الآلة الخاصة بك. وتتميز أيضًا بقدرتها على دعم العديد من البرامج والتطبيقات المختلفة، بما في ذلك TensorFlow وCaffe وPyTorch وغيرها.
تستخدم TensorRT تقنيات تحسين الأداء لتسريع العمليات الحسابية الخاصة بتطبيقات الذكاء الاصطناعي. وبهذه الطريقة، تعمل على تحسين أداء النماذج التعلم الآلي الخاصة بك، مما يؤدي إلى تحسين الكفاءة والسرعة والدقة لتطبيقات الذكاء الاصطناعي الخاصة بك. وتتيح لك هذه الميزة تطوير تطبيقات الذكاء الاصطناعي ذات الأداء العالي والموثوقية والكفاءة.
بشكل عام، يعد TensorRT موردًا هامًا للمطورين الذين يرغبون في تطوير تطبيقات الذكاء الاصطناعي ذات الأداء العالي والموثوقية والكفاءة باستخدام قوة معالجة الرسومات. ويمكن استخدام هذه المكتبة في العديد من المجالات، بما في ذلك الحوسبة العلمية والبيانات الضخمة والتعلّم الآلي والألعاب والخرائط الذهنية وغيرها من التطبيقات المستندة إلى GPU.

تثبيت TensorRT.

يمكن تثبيت TensorRT باستخدام الأمر التالي:
sudo apt-get install --yes --no-install-recommends libcudnn7=7.6.5.32-1+cuda10.2 libcudnn7-dev=7.6.5.32-1+cuda10.2
بعد التثبيت، يمكن التحقق من نجاح التثبيت باستخدام الأمر التالي:
dpkg -l | grep TensorRT

Conda

Conda

يمكن تنزيل Conda باستخدام الأمر التالي:
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
بعد تنزيل السكريبت، يجب تشغيله باستخدام الأمر التالي:
bash Miniconda3-latest-Linux-x86_64.sh
notion image
بعد الانتهاء من الإعدادات، يمكن إغلاق WSL2 بكتابة الأمر التالي في الـ command prompt:
wsl --shutdown
بعد ذلك، يمكن إعادة تشغيل WSL2 بكتابة الأمر التالي في الـ command prompt:
wsl
notion image
يجب ان يكون هناك base قبل ال command prompt

لتثبيت المكتبات المذكورة، يمكن استخدام الأمر التالي في الـ conda:
conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0
لتعيين قيمة متغير البيئة LD_LIBRARY_PATH، يجب تشغيل الأمر التالي:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/

 
بعد تشغيل WSL2 مرة أخرى، يمكن تثبيت TensorFlow باستخدام الأمر التالي:
python3 -m pip install tensorflow
بعد التثبيت، يمكن التحقق من نجاح التثبيت باستخدام الأمر التالي:
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
إذا تم طباعة قيمة عشوائية، فقد تم تثبيت TensorFlow بنجاح.
💡
لا يوجد حاجة إلى تثبيت Conda إذا كنت تفضل استخدام مدير حزم آخر، مثل pip.