Apache Spark 3.0 ajoute la prise en charge du GPU Nvidia pour l'apprentissage automatique

Apache Spark, le cadre de traitement du Big Data en mémoire, deviendra entièrement accéléré par GPU dans sa version 3.0 bientôt disponible. Mieux encore, les applications Spark d'aujourd'hui peuvent tirer parti de l'accélération GPU sans modification; les API Spark existantes fonctionnent toutes telles quelles.

Les composants d'accélération GPU, fournis par Nvidia, sont conçus pour compléter toutes les phases des applications Spark, y compris les opérations ETL, la formation à l'apprentissage automatique et le service d'inférence.

Les contributions Spark de Nvidia s'appuient sur la suite RAPIDS de bibliothèques de science des données accélérées par GPU. De nombreuses structures de données internes de RAPIDS, comme les dataframes, complètent celles de Spark, mais faire en sorte que Spark utilise RAPIDS de manière native a nécessité près de quatre ans de travail.

Les accélérations de Spark 3.0 ne proviennent pas uniquement de l'accélération GPU. Spark 3.0 réalise également des gains de performances en minimisant les mouvements de données vers et depuis les GPU. Lorsque les données doivent être déplacées dans un cluster, le framework Unified Communication X les fait passer directement d'un bloc de mémoire GPU à un autre avec une surcharge minimale.

Selon Nvidia, une version préliminaire de Spark 3.0 exécutée sur la plate-forme Databricks a multiplié par sept les performances lors de l'utilisation de l'accélération GPU, bien que les détails sur la charge de travail et son ensemble de données ne soient pas disponibles. 

Aucune date ferme n'a été donnée pour la disponibilité générale de Spark 3.0. Vous pouvez télécharger les versions d'aperçu à partir du site Web du projet Apache Spark.