Attend the Women in ML Symposium on December 7 Register now

ติดตั้ง TensorFlow ด้วย pip

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

คู่มือนี้มีไว้สำหรับ TensorFlow เวอร์ชันเสถียรล่าสุด สำหรับการสร้างตัวอย่าง (ทุกคืน) ให้ใช้แพ็คเกจ pip ชื่อ tf-nightly โปรดดู ตารางเหล่านี้ สำหรับข้อกำหนดเวอร์ชันเก่าของ TensorFlow สำหรับบิลด์เฉพาะ CPU ให้ใช้แพ็คเกจ pip ชื่อ tensorflow-cpu

ต่อไปนี้เป็นคำสั่งติดตั้งเวอร์ชันย่อ เลื่อนลงเพื่อดูคำแนะนำทีละขั้นตอน

ลีนุกซ์

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/
python3 -m pip install tensorflow
# Verify install:
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

แมคโอเอส

# There is currently no official GPU support for MacOS.
python3 -m pip install tensorflow
# Verify install:
python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

Windows เนทีฟ

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0
# Anything above 2.10 is not supported on the GPU on Windows Native
python3 -m pip install "tensorflow<2.11"
# Verify install:
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

วินโดวส์ WSL2

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/
python3 -m pip install tensorflow
# Verify install:
python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

ซีพียู

python3 -m pip install tensorflow
# Verify install:
python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

ทุกคืน

python3 -m pip install tf-nightly
# Verify install:
python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

ข้อกำหนดของฮาร์ดแวร์

รองรับอุปกรณ์ที่รองรับ GPU ต่อไปนี้:

  • การ์ด NVIDIA® GPU พร้อมสถาปัตยกรรม CUDA® 3.5, 5.0, 6.0, 7.0, 7.5, 8.0 และสูงกว่า ดูรายการ การ์ด GPU ที่เปิดใช้งาน CUDA®
  • สำหรับ GPU ที่มีสถาปัตยกรรม CUDA® ที่ไม่รองรับ หรือเพื่อหลีกเลี่ยงการคอมไพล์ JIT จาก PTX หรือหากต้องการใช้ไลบรารี NVIDIA® เวอร์ชันต่างๆ โปรดดูคู่มือการ สร้าง Linux จากซอร์ส
  • แพ็คเกจไม่มีรหัส PTX ยกเว้นสถาปัตยกรรม CUDA® ที่รองรับล่าสุด ดังนั้น TensorFlow จึงไม่สามารถโหลด GPU รุ่นเก่าได้เมื่อตั้งค่า CUDA_FORCE_PTX_JIT=1 (ดูรายละเอียด ความเข้ากันได้ของแอปพลิเคชัน )

ความต้องการของระบบ

  • Ubuntu 16.04 หรือสูงกว่า (64 บิต)
  • macOS 10.12.6 (Sierra) หรือสูงกว่า (64 บิต) (ไม่รองรับ GPU)
  • Windows Native - Windows 7 หรือสูงกว่า (64 บิต)
  • Windows WSL2 - Windows 10 19044 หรือสูงกว่า (64 บิต)

ข้อกำหนดของซอฟต์แวร์

ซอฟต์แวร์ NVIDIA® ต่อไปนี้จำเป็นสำหรับการรองรับ GPU เท่านั้น

คำแนะนำทีละขั้นตอน

ลีนุกซ์

1. ข้อกำหนดของระบบ

  • Ubuntu 16.04 หรือสูงกว่า (64 บิต)

TensorFlow รองรับ Ubuntu อย่างเป็นทางการเท่านั้น อย่างไรก็ตาม คำแนะนำต่อไปนี้อาจใช้ได้กับ Linux distros อื่นๆ

2. ติดตั้ง Miniconda

Miniconda เป็นแนวทางที่แนะนำสำหรับการติดตั้ง TensorFlow พร้อมการรองรับ GPU มันสร้างสภาพแวดล้อมแยกต่างหากเพื่อหลีกเลี่ยงการเปลี่ยนแปลงซอฟต์แวร์ที่ติดตั้งในระบบของคุณ นี่เป็นวิธีที่ง่ายที่สุดในการติดตั้งซอฟต์แวร์ที่จำเป็นโดยเฉพาะสำหรับการตั้งค่า GPU

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Miniconda ระหว่างการติดตั้ง คุณอาจต้องกด Enter แล้วพิมพ์ "ใช่"

curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -o Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

คุณอาจต้องรีสตาร์ทเทอร์มินัลหรือ source ~/.bashrc เพื่อเปิดใช้งานคำสั่ง conda ใช้ conda -V เพื่อทดสอบว่าติดตั้งสำเร็จหรือไม่

3. สร้างสภาพแวดล้อม conda

สร้างสภาพแวดล้อม conda ใหม่ชื่อ tf ด้วยคำสั่งต่อไปนี้

conda create --name tf python=3.9

คุณสามารถปิดและเปิดใช้งานได้ด้วยคำสั่งต่อไปนี้

conda deactivate
conda activate tf

ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานสำหรับการติดตั้งที่เหลือ

4. การตั้งค่า GPU

คุณสามารถข้ามส่วนนี้ได้หากคุณเรียกใช้ TensorFlow บน CPU เท่านั้น

ก่อนอื่นให้ติดตั้ง ไดรเวอร์ NVIDIA GPU หากคุณยังไม่มี คุณสามารถใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่ามีการติดตั้งแล้ว

nvidia-smi

จากนั้นติดตั้ง CUDA และ cuDNN ด้วย conda

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0

กำหนดค่าเส้นทางของระบบ คุณสามารถทำได้โดยใช้คำสั่งต่อไปนี้ทุกครั้งที่คุณเริ่มต้นเทอร์มินัลใหม่หลังจากเปิดใช้งานสภาพแวดล้อม conda

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/

เพื่อความสะดวกของคุณ ขอแนะนำให้คุณดำเนินการโดยอัตโนมัติด้วยคำสั่งต่อไปนี้ เส้นทางของระบบจะได้รับการกำหนดค่าโดยอัตโนมัติเมื่อคุณเปิดใช้งานสภาพแวดล้อม conda นี้

mkdir -p $CONDA_PREFIX/etc/conda/activate.d
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/' > $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh

5. ติดตั้ง TensorFlow

TensorFlow ต้องการ pip เวอร์ชันล่าสุด ดังนั้นอัปเกรดการติดตั้ง pip เพื่อให้แน่ใจว่าคุณกำลังเรียกใช้เวอร์ชันล่าสุด

pip install --upgrade pip

จากนั้นติดตั้ง TensorFlow ด้วย pip

pip install tensorflow

6. ตรวจสอบการติดตั้ง

ตรวจสอบการตั้งค่า CPU:

python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

หากมีการส่งคืนเทนเซอร์ แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

ตรวจสอบการตั้งค่า GPU:

python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

หากมีการส่งคืนรายการอุปกรณ์ GPU แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

แมคโอเอส

1. ข้อกำหนดของระบบ

  • macOS 10.12.6 (Sierra) หรือสูงกว่า (64 บิต)

ขณะนี้ยังไม่มีการรองรับ GPU อย่างเป็นทางการสำหรับการเรียกใช้ TensorFlow บน MacOS ต่อไปนี้เป็นคำแนะนำสำหรับการรันบน CPU

2. ตรวจสอบเวอร์ชันของ Python

ตรวจสอบว่าสภาพแวดล้อม Python ของคุณได้รับการกำหนดค่าแล้วหรือไม่:

python3 --version
python3 -m pip --version

2. ติดตั้ง Miniconda

Miniconda เป็นแนวทางที่แนะนำสำหรับการติดตั้ง TensorFlow พร้อมการรองรับ GPU มันสร้างสภาพแวดล้อมแยกต่างหากเพื่อหลีกเลี่ยงการเปลี่ยนแปลงซอฟต์แวร์ที่ติดตั้งในระบบของคุณ นี่เป็นวิธีที่ง่ายที่สุดในการติดตั้งซอฟต์แวร์ที่จำเป็นโดยเฉพาะสำหรับการตั้งค่า GPU

curl https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh -o Miniconda3-latest-MacOSX-x86_64.sh
bash Miniconda3-latest-MacOSX-x86_64.sh

คุณอาจต้องรีสตาร์ทเทอร์มินัลหรือ source ~/.bashrc เพื่อเปิดใช้งานคำสั่ง conda ใช้ conda -V เพื่อทดสอบว่าติดตั้งสำเร็จหรือไม่

4. สร้างสภาพแวดล้อม conda

สร้างสภาพแวดล้อม conda ใหม่ชื่อ tf ด้วยคำสั่งต่อไปนี้

conda create --name tf python=3.9

คุณสามารถปิดและเปิดใช้งานได้ด้วยคำสั่งต่อไปนี้

conda deactivate
conda activate tf

ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานสำหรับการติดตั้งที่เหลือ

5. ติดตั้ง TensorFlow

TensorFlow ต้องการ pip เวอร์ชันล่าสุด ดังนั้นอัปเกรดการติดตั้ง pip เพื่อให้แน่ใจว่าคุณกำลังเรียกใช้เวอร์ชันล่าสุด

pip install --upgrade pip

จากนั้นติดตั้ง TensorFlow ด้วย pip

pip install tensorflow

6. ตรวจสอบการติดตั้ง

python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

หากมีการส่งคืนเทนเซอร์ แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

Windows เนทีฟ

1. ข้อกำหนดของระบบ

  • Windows 7 หรือสูงกว่า (64 บิต)

2. ติดตั้ง Microsoft Visual C++ แบบแจกจ่ายต่อได้

ติดตั้ง Microsoft Visual C++ Redistributable สำหรับ Visual Studio 2015, 2017 และ 2019 เริ่มต้นด้วยเวอร์ชัน TensorFlow 2.1.0 จำเป็นต้องมีไฟล์ msvcp140_1.dll จากแพ็คเกจนี้ (ซึ่งอาจไม่ได้มาจากแพ็คเกจแบบแจกจ่ายต่อได้รุ่นเก่ากว่า) redistributable มาพร้อมกับ Visual Studio 2019 แต่สามารถติดตั้งแยกกันได้:

  1. ไปที่การ ดาวน์โหลด Microsoft Visual C++
  2. เลื่อนหน้าลงไปที่ส่วน Visual Studio 2015, 2017 และ 2019
  3. ดาวน์โหลดและติดตั้ง Microsoft Visual C++ Redistributable สำหรับ Visual Studio 2015, 2017 และ 2019 สำหรับแพลตฟอร์มของคุณ

ตรวจสอบให้แน่ใจว่า เปิดใช้งานเส้นทางยาว บน Windows

3. ติดตั้ง Miniconda

Miniconda เป็นแนวทางที่แนะนำสำหรับการติดตั้ง TensorFlow พร้อมการรองรับ GPU มันสร้างสภาพแวดล้อมแยกต่างหากเพื่อหลีกเลี่ยงการเปลี่ยนแปลงซอฟต์แวร์ที่ติดตั้งในระบบของคุณ นี่เป็นวิธีที่ง่ายที่สุดในการติดตั้งซอฟต์แวร์ที่จำเป็นโดยเฉพาะสำหรับการตั้งค่า GPU

ดาวน์โหลด โปรแกรมติดตั้ง Windows Miniconda ดับเบิลคลิกไฟล์ที่ดาวน์โหลดและทำตามคำแนะนำบนหน้าจอ

4. สร้างสภาพแวดล้อม conda

สร้างสภาพแวดล้อม conda ใหม่ชื่อ tf ด้วยคำสั่งต่อไปนี้

conda create --name tf python=3.9

คุณสามารถปิดและเปิดใช้งานได้ด้วยคำสั่งต่อไปนี้

conda deactivate
conda activate tf

ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานสำหรับการติดตั้งที่เหลือ

5. การตั้งค่า GPU

คุณสามารถข้ามส่วนนี้ได้หากคุณเรียกใช้ TensorFlow บน CPU เท่านั้น

ก่อนอื่นให้ติดตั้ง ไดรเวอร์ NVIDIA GPU หากคุณยังไม่มี

จากนั้นติดตั้ง CUDA, cuDNN พร้อม conda

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0

6. ติดตั้ง TensorFlow

TensorFlow ต้องการ pip เวอร์ชันล่าสุด ดังนั้นอัปเกรดการติดตั้ง pip เพื่อให้แน่ใจว่าคุณกำลังเรียกใช้เวอร์ชันล่าสุด

pip install --upgrade pip

จากนั้นติดตั้ง TensorFlow ด้วย pip

# Anything above 2.10 is not supported on the GPU on Windows Native
pip install "tensorflow<2.11" 

7. ตรวจสอบการติดตั้ง

ตรวจสอบการตั้งค่า CPU:

python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

หากมีการส่งคืนเทนเซอร์ แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

ตรวจสอบการตั้งค่า GPU:

python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

หากมีการส่งคืนรายการอุปกรณ์ GPU แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

วินโดวส์ WSL2

1. ข้อกำหนดของระบบ

  • Windows 10 19044 หรือสูงกว่า (64 บิต) สิ่งนี้สอดคล้องกับ Windows 10 เวอร์ชัน 21H2 ซึ่งเป็นการอัปเดตเดือนพฤศจิกายน 2021

ดูเอกสารต่อไปนี้เพื่อ:

2. ติดตั้ง Miniconda

Miniconda เป็นแนวทางที่แนะนำสำหรับการติดตั้ง TensorFlow พร้อมการรองรับ GPU มันสร้างสภาพแวดล้อมแยกต่างหากเพื่อหลีกเลี่ยงการเปลี่ยนแปลงซอฟต์แวร์ที่ติดตั้งในระบบของคุณ นี่เป็นวิธีที่ง่ายที่สุดในการติดตั้งซอฟต์แวร์ที่จำเป็นโดยเฉพาะสำหรับการตั้งค่า GPU

คุณสามารถใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Miniconda ระหว่างการติดตั้ง คุณอาจต้องกด Enter แล้วพิมพ์ "ใช่"

curl https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -o Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

คุณอาจต้องรีสตาร์ทเทอร์มินัลหรือ source ~/.bashrc เพื่อเปิดใช้งานคำสั่ง conda ใช้ conda -V เพื่อทดสอบว่าติดตั้งสำเร็จหรือไม่

3. สร้างสภาพแวดล้อม conda

สร้างสภาพแวดล้อม conda ใหม่ชื่อ tf ด้วยคำสั่งต่อไปนี้

conda create --name tf python=3.9

คุณสามารถปิดและเปิดใช้งานได้ด้วยคำสั่งต่อไปนี้

conda deactivate
conda activate tf

ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานสำหรับการติดตั้งที่เหลือ

4. การตั้งค่า GPU

คุณสามารถข้ามส่วนนี้ได้หากคุณเรียกใช้ TensorFlow บน CPU เท่านั้น

ก่อนอื่นให้ติดตั้ง ไดรเวอร์ NVIDIA GPU หากคุณยังไม่มี คุณสามารถใช้คำสั่งต่อไปนี้เพื่อตรวจสอบว่ามีการติดตั้งแล้ว

nvidia-smi

จากนั้นติดตั้ง CUDA และ cuDNN ด้วย conda

conda install -c conda-forge cudatoolkit=11.2 cudnn=8.1.0

กำหนดค่าเส้นทางของระบบ คุณสามารถทำได้โดยใช้คำสั่งต่อไปนี้ทุกครั้งที่คุณเริ่มต้นเทอร์มินัลใหม่หลังจากเปิดใช้งานสภาพแวดล้อม conda

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/

เพื่อความสะดวกของคุณ ขอแนะนำให้คุณดำเนินการโดยอัตโนมัติด้วยคำสั่งต่อไปนี้ เส้นทางของระบบจะได้รับการกำหนดค่าโดยอัตโนมัติเมื่อคุณเปิดใช้งานสภาพแวดล้อม conda นี้

mkdir -p $CONDA_PREFIX/etc/conda/activate.d
echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/' > $CONDA_PREFIX/etc/conda/activate.d/env_vars.sh

5. ติดตั้ง TensorFlow

TensorFlow ต้องการ pip เวอร์ชันล่าสุด ดังนั้นอัปเกรดการติดตั้ง pip เพื่อให้แน่ใจว่าคุณกำลังเรียกใช้เวอร์ชันล่าสุด

pip install --upgrade pip

จากนั้นติดตั้ง TensorFlow ด้วย pip

pip install tensorflow

6. ตรวจสอบการติดตั้ง

ตรวจสอบการตั้งค่า CPU:

python3 -c "import tensorflow as tf; print(tf.reduce_sum(tf.random.normal([1000, 1000])))"

หากมีการส่งคืนเทนเซอร์ แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

ตรวจสอบการตั้งค่า GPU:

python3 -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"

หากมีการส่งคืนรายการอุปกรณ์ GPU แสดงว่าคุณติดตั้ง TensorFlow สำเร็จแล้ว

สถานที่บรรจุ

กลไกการติดตั้งบางอย่างต้องใช้ URL ของแพ็คเกจ TensorFlow Python ค่าที่คุณระบุขึ้นอยู่กับเวอร์ชัน Python ของคุณ

รุ่น URL
ลีนุกซ์
รองรับ GPU Python 3.7 https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.11.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Python 3.7 CPU เท่านั้น https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
รองรับ Python 3.8 GPU https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Python 3.8 CPU เท่านั้น https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
รองรับ Python 3.9 GPU https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Python 3.9 CPU เท่านั้น https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
รองรับ GPU Python 3.10 https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-2.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Python 3.10 CPU เท่านั้น https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow_cpu-2.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
macOS (เฉพาะ CPU)
ไพธอน 3.7 https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.11.0-cp37-cp37m-macosx_10_14_x86_64.whl
ไพธอน 3.8 https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.11.0-cp38-cp38-macosx_10_14_x86_64.whl
ไพธอน 3.9 https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.11.0-cp39-cp39-macosx_10_14_x86_64.whl
ไพธอน 3.10 https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-2.11.0-cp310-cp310-macosx_10_14_x86_64.whl
หน้าต่าง
รองรับ GPU Python 3.7 https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.11.0-cp37-cp37m-win_amd64.whl
Python 3.7 CPU เท่านั้น https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.11.0-cp37-cp37m-win_amd64.whl
รองรับ Python 3.8 GPU https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.11.0-cp38-cp38-win_amd64.whl
Python 3.8 CPU เท่านั้น https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.11.0-cp38-cp38-win_amd64.whl
รองรับ Python 3.9 GPU https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.11.0-cp39-cp39-win_amd64.whl
Python 3.9 CPU เท่านั้น https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.11.0-cp39-cp39-win_amd64.whl
รองรับ GPU Python 3.10 https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.11.0-cp310-cp310-win_amd64.whl
Python 3.10 CPU เท่านั้น https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow_cpu-2.11.0-cp310-cp310-win_amd64.whl