7 research outputs found

    Analyzing the impact of the MPI allreduce in distributed training of convolutional neural networks

    Get PDF
    For many distributed applications, data communication poses an important bottleneck from the points of view of performance and energy consumption. As more cores are integrated per node, in general the global performance of the system increases yet eventually becomes limited by the interconnection network. This is the case for distributed data-parallel training of convolutional neural networks (CNNs), which usually proceeds on a cluster with a small to moderate number of nodes. In this paper, we analyze the performance of the Allreduce collective communication primitive, a key to the efficient data-parallel distributed training of CNNs. Our study targets the distinct realizations of this primitive in three high performance instances of Message Passing Interface (MPI), namely MPICH, OpenMPI, and IntelMPI, and employs a cluster equipped with state-of-the-art processor and network technologies. In addition, we apply the insights gained from the experimental analysis to the optimization of the TensorFlow framework when running on top of Horovod. Our study reveals that a careful selection of the most convenient MPI library and Allreduce (ARD) realization accelerates the training throughput by a factor of 1.2脳 compared with the default algorithm in the same MPI library, and up to 2.8脳 when comparing distinct MPI libraries in a number of relevant combinations of CNN model+dataset

    Using machine learning to model the training scalability of convolutional neural networks on clusters of GPUs

    Get PDF
    In this work, we build a general piece-wise model to analyze data-parallel (DP) training costs of convolutional neural networks (CNNs) on clusters of GPUs. This general model is based on i) multi-layer perceptrons (MLPs) in charge of modeling the NVIDIA cuDNN/cuBLAS library kernels involved in the training of some of the state-of-the-art CNNs; and ii) an analytical model in charge of modeling the NVIDIA NCCL Allreduce collective primitive using the Ring algorithm. The CNN training scalability study performed using this model in combination with the Roofline technique on varying batch sizes, node (floating-point) arithmetic performance, node memory bandwidth, network link bandwidth, and cluster dimension unveil some crucial bottlenecks at both GPU and cluster level. To provide evidence of this analysis, we validate the accuracy of the proposed model against a Python library for distributed deep learning training.Funding for open access charge: CRUE-Universitat Jaume

    PyDTNN: A user-friendly and extensible framework for distributed deep learning

    Get PDF
    We introduce a framework for training deep neural networks on clusters of computers with the following appealing properties: (1) It is developed in Python, exposing an amiable interface that provides an accessible entry point for the newcomer; (2) it is extensible, offering a customizable tool for the more advanced user in deep learning; (3) it covers the main functionality appearing in convolutional neural networks; and (4) it delivers reasonable inter-node parallel performance exploiting data parallelism by leveraging MPI via MPI4Py for communication and NumPy for the efficient execution of (multithreaded) numerical kernels

    Desarrollo y evaluaci贸n de los esquemas de paralelizaci贸n de datos y de modelo para el entrenamiento de redes neuronales convolucionales

    Full text link
    [ES] En los 煤ltimos a帽os, las Redes Neuronales Profundas (RNPs) han resurgido debido a la confluencia de tres importantes factores: i) la avalancha de datos disponibles (big data), que incrementan la robustez de las RNPs; ii) el aumento de la capacidad de c贸mputo de los sistemas de c贸mputo actuales, que permite el entrenamiento de las redes en un tiempo razonable; y iii) los avances algor铆tmicos y los entornos de programaci贸n de c贸digo abierto para RNPs, que facilitan su uso y la investigaci贸n en este campo. No obstante, las altas demandas computacionales de la etapa de entrenamiento requiere el uso t茅cnicas paralelas eficientes en plataformas de memoria distribuida. En este trabajo se propone el an谩lisis, desarrollo e implementaci贸n de los esquemas de paralelismo de datos y de modelo para el entrenamiento de RNPs sobre cl煤steres de computadores. La implementaci贸n de estos esquemas de paralelismo se llevar谩 a cabo en PyDTNN, un entorno simple de entrenamiento de RNPs, mediante el uso de la interfaz de paso de mensajes MPI para plataformas de memoria distribuida. Una vez desarrollados ambos esquemas de paralelismo, se evaluar谩n las ganancias y la escalabilidad obtenidas en diferentes configuraciones de n煤mero de nodos y modelos de RNP. Esta evaluaci贸n experimental se complementar谩 con el an谩lisis de perfiles y trazas de ejecuci贸n obtenidas con ambos esquemas de paralelismo.Catal谩n Carb贸, M. (2020). Desarrollo y evaluaci贸n de los esquemas de paralelizaci贸n de datos y de modelo para el entrenamiento de redes neuronales convolucionales. http://hdl.handle.net/10251/149418TFG

    Innovaci贸n de la Did谩ctica de Fuciones en 3潞 ESO

    No full text
    Treball Final de M脿ster Universitari en Professor/a d'Educaci贸 Secund脿ria Obligat貌ria i Batxillerat, Formaci贸 Professional i Ensenyaments d'Idiomes. Codi: SAP509. Curs: 2017/2018.El presente Trabajo Final de M aster se clasi ca como una mejora de unidad did actica. En el se presenta una investigaci on sobre innovaci on pedag ogica en el aula de matem aticas que se ha llevado a cabo experimentalmente en el centro de educaci on secundaria IES Bovalar de Castell on. La unidad did actica que se desarrolla en este trabajo est a enfocada a la ense~nanza del temario de funciones en un aula de 3. ESO. En ella se han dise~nado cinco actividades diferentes que trabajan los conceptos de dicho temario: funciones lineales, ecuaciones de la recta y funciones cuadr aticas. Todo lo incluido en este trabajo tiene como objetivo el aumento de la implicaci on y motivaci on del alumnado, as como la mejora de la comprensi on de los contenidos matem aticos desarrollados. La puesta en pr actica de la unidad did actica se llev o a cabo a lo largo de ocho sesiones, durante las cuales se intent o hacer part cipe y protagonista al alumnado de su propio aprendizaje. En este trabajo se analizan todos los resultados recogidos durante este periodo y nalmente se discute el efecto, tanto de las teor as en las que se ha basado la mejora, como de las actividades de la misma
    corecore