La pagina spiega come eseguire la pipeline Dataflow con il tipo di GPU NVIDIA® L4. Il tipo di GPU L4 è utile per eseguire pipeline di inferenza di machine learning.
Requisiti
- Utilizza la versione 2.46 o successiva dell'SDK Apache Beam. È consigliabile utilizzare Apache Beam 2.50 o versioni successive.
- Devi disporre della quota GPU L4 (
NVIDIA_L4_GPUS
) nella regione in cui viene eseguito il job. Per ulteriori informazioni, consulta Quote GPU. - Il tipo di GPU L4 è disponibile solo con il tipo di macchina G2 ottimizzato per l'acceleratore. Per ulteriori informazioni, consulta la serie di macchine G2. Le pipeline che utilizzano il tipo di GPU L4 sono soggette alle limitazioni standard di G2.
- Il tipo di GPU NVIDIA L4 utilizza il driver NVIDIA versione 525.0 o successive e il toolkit CUDA versione 12.0 o successive. Qualsiasi codice utilizzato nella pipeline deve essere compatibile con la versione del driver NVIDIA e con la versione del toolkit CUDA. Ad esempio, se utilizzi PyTorch, devi utilizzare la versione 23.01 o successive.
Esegui le pipeline con il tipo di GPU NVIDIA® L4
Per utilizzare il tipo di GPU NVIDIA L4, devi includere le seguenti opzioni di pipeline e opzioni di servizio nel codice della pipeline.
Java
--workerMachineType=G2_MACHINE_TYPE
--dataflowServiceOptions="worker_accelerator=type:nvidia-l4;count:GPU_COUNT;install-nvidia-driver"
Python
--machine_type=G2_MACHINE_TYPE
--dataflow_service_options="worker_accelerator=type:nvidia-l4;count:GPU_COUNT;install-nvidia-driver"
Vai
--worker_machine_type=G2_MACHINE_TYPE
--dataflow_service_options="worker_accelerator=type:nvidia-l4;count:GPU_COUNT;install-nvidia-driver"
Sostituisci i seguenti valori:
- G2_MACHINE_TYPE: il tipo di macchina G2 da utilizzare
- GPU_COUNT: il numero di GPU da utilizzare. Ogni tipo di macchina G2 ha un numero fisso di GPU NVIDIA L4. Per trovare il numero corretto di GPU per il tuo tipo di macchina, consulta la colonna Numero di GPU nella tabella Tipi di macchine G2 standard.
Per ulteriori informazioni sull'esecuzione di pipeline con GPU, consulta Eseguire una pipeline con GPU.
Gestisci dipendenze
Per gestire le dipendenze, utilizza un contenitore personalizzato. Per ulteriori informazioni, consulta Utilizzare i container personalizzati in Dataflow.
Il seguente esempio di Dockerfile contiene dipendenze compatibili per una pipeline che utilizza il tipo di GPU NVIDIA L4.
RUN apt-get -y update
RUN apt-get install [system packages]
# Install the SDK.
RUN pip install --no-cache-dir apache-beam[gcp]==2.51.0
# Install the machine learning dependencies.
RUN pip install --no-cache-dir tensorflow[and-cuda]
RUN pip install xgboost
RUN pip install transformers accelerate
(etc…..)
# Verify that the image doesn't have conflicting dependencies.
RUN pip check
# Copy files from official SDK image, including the script and dependencies.
COPY --from=apache/beam_python3.10_sdk:2.51.0 /opt/apache/beam /opt/apache/beam
# Set the entrypoint to Apache Beam SDK launcher.
ENTRYPOINT ["/opt/apache/beam/boot"]
Passaggi successivi
- Scopri le best practice per l'utilizzo delle GPU Dataflow.
- Esegui una pipeline con le GPU.
- Scopri di più su Dataflow ML.