13,071 research outputs found

    Un Curso práctico de programación paralela basado en problemas de Concurso Español de Programación Paralela

    Get PDF
    En este trabajo se presenta una experiencia de un curso de Introducción a la Programación Paralela. El curso está dedicado a herramientas y entornos de programación paralela, y principalmente al análisis, desarrollo y optimización de algoritmos paralelos. Tiene una orientación práctica, para lo que se utilizan problemas del Concurso Español de Programación Paralela. Los diferentes temas del curso se presentan en clases con la estructura tradicional, y para cada tema se organiza una sesión práctica, en la que se trabaja con problemas del concurso con los que se practica con los entornos de paralelismo y los paradigmas algorítmicos tratados en la clase anterior. En las sesiones prácticas los alumnos trabajan con problemas y con el entorno compu-tacional del concurso, lo que facilita el seguimiento y la validación en tiempo real de su trabajo, así como la atención personalizada y el tomar acciones correctoras de la organización de la docencia y las prácticas. De esta forma se realiza una evaluación continua que ha permitido reducir la tasa de abandono e incrementar la tasa de éxito en la asignatura.This paper presents an experience of an introductory course on Parallel Programming. The course is dedicated to parallel programming tools and environments, and in particular to the analysis, development and optimization of parallel algorithms. It has a practical orien-tation and is guided with the use of problems from the Spanish Parallel Programming Contest. The different units are presented in the traditional lecture for-mat, and a practical session accompanies each unit, with problems to work with in the tools or algorithmic paradigms presented in the previous lecture. The students work in the practical sessions on problems and using the system of the contest, which facilitates online and real time validation of their implementations. The practical approach of the course and the continuous evaluation used led to an important increase in the marks

    Aceleración de algoritmos para el cálculo de distribuciones de probabilidad alfa-estables mediante programación paralela

    Full text link
    Las distribuciones de probabilidad alfa-estables son una familia especial de distribuciones de probabilidad cuyo estudio puede resultar en sistemas predictivos avanzados de diversos tipos, como análisis de tráfico de red, procesamiento de imágenes médicas o cotizaciones bursátiles. Surgen a partir del Teorema del Límite Central Generalizado, que establece que aquella suma de variables aleatorias cuya varianza no es finita converge a distribuciones alfa-estables. Desafortunadamente, la mayoría de herramientas existentes en la actualidad no son capaces de realizar los cálculos necesarios para el procesamiento de las distribuciones con la suficiente velocidad para poder llegar a obtener herramientas verdaderamente útiles que trabajen a tiempo real con un sistema predictivo. Esto se debe principalmente a la gran complejidad computacional que supone realizar las operaciones de integración numérica necesarias para obtener una distribución alfa-estable con un nivel de precisión aceptable para su uso en un sistema predictivo. En el presente Trabajo Fin de Grado se estudia la posibilidad de conseguir acelerar un algoritmo para el cálculo de distribuciones alfa-estables mediante el uso de computación paralela, más concretamente en GPUs con el uso de la tecnología CUDA. Para ello se propone la utilización de un algoritmo de integración numérica adaptativo, diseñado para su uso en entornos paralelos CUDA como método primario de integración para el algoritmo encargado de calcular las distribuciones de probabilidad alfa-estables. De esta forma se consigue incrementar el rendimiento en la obtención de estas distribuciones, pudiendo lograr una aceleración relativa de hasta varias veces el rendimiento de la versión serie del programa, manteniendo la precisión necesaria para lograr que los resultados permanezcan igual de correctos.Alpha-stable distributions are a special subset of probability distributions whose research can result in advanced predictive systems of diverse types, such as network traffic analysis, medic images processing or stock-market prices. They emerge because of the Central Limit Theorem, which establishes that the addition of random variables with infinite variance converges into an alpha-stable distribution. Unfortunately, most currently used tools are not capable of calculating fast enough the processing of these distributions with the necessary speed in order to obtain actually useful tools capable to work within real time in a predictive system. This is mainly due to the great computational complexity required to solve all of the numeric integration operations needed in order to calculate an alpha-stable distribution with an acceptable level of precision for its usage in a predictive system. The following End-of-Degree Project studies the possibility of accelerating an algorithm to calculate alpha-stable distributions by means of parallel computing, more specifically in GPUs equipped with CUDA technology. In order to do so, we propose the usage of a multi-dimensional adaptive numeric integration algorithm designed for CUDA environments as the primary integration method for the algorithm that calculates alpha-stables. By doing so, we manage to increase the performance in the calculation of these distributions, being capable of reaching an acceleration of multiple times the performance of the serial version while maintaining the necessary precision in order for the results to remain equally correct

    Una Experiencia de iniciación al paralelismo en segundo curso del Grado de Ingeniería Informática

    Get PDF
    En este artículo se analiza una experiencia de introducción del paralelismo de forma temprana en el Grado de Ingeniería Informática. En la experiencia participan cuatro asignaturas de segundo curso, impartidas por tres departamentos distintos y con la colaboración de un centro de computación. En este curso se realiza la primera aproximación de los alumnos al paralelismo, y se pretende realizar un acercamiento coordinado y práctico a diferentes materias.SUMMARY -- This work presents an experience of early introduction to parallelism in the Degree on Computing Engineering. Four courses of the second year participate in the experience and also a computing centre. The courses are tought by three departments. In the second year the students are introduced to parallelism for the first time, and with our experience we intend to approach different topics of parallelism in a coordinated and practical way.Peer Reviewe

    Sintonización dinámica de aplicaciones MPI

    Get PDF
    En la actualidad, la computación de altas prestaciones está siendo utilizada en multitud de campos científicos donde los distintos problemas estudiados se resuelven mediante aplicaciones paralelas/distribuidas. Estas aplicaciones requieren gran capacidad de cómputo, bien sea por la complejidad de los problemas o por la necesidad de solventar situaciones en tiempo real. Por lo tanto se debe aprovechar los recursos y altas capacidades computacionales de los sistemas paralelos en los que se ejecutan estas aplicaciones con el fin de obtener un buen rendimiento. Sin embargo, lograr este rendimiento en una aplicación ejecutándose en un sistema es una dura tarea que requiere un alto grado de experiencia, especialmente cuando se trata de aplicaciones que presentan un comportamiento dinámico o cuando se usan sistemas heterogéneos. En estos casos actualmente se plantea realizar una mejora de rendimiento automática y dinámica de las aplicaciones como mejor enfoque para el análisis del rendimiento. El presente trabajo de investigación se sitúa dentro de este ámbito de estudio y su objetivo principal es sintonizar dinámicamente mediante MATE (Monitoring, Analysis and Tuning Environment) una aplicación MPI empleada en computación de altas prestaciones que siga un paradigma Master/Worker. Las técnicas de sintonización integradas en MATE han sido desarrolladas a partir del estudio de un modelo de rendimiento que refleja los cuellos de botella propios de aplicaciones situadas bajo un paradigma Master/Worker: balanceo de carga y número de workers. La ejecución de la aplicación elegida bajo el control dinámico de MATE y de la estrategia de sintonización implementada ha permitido observar la adaptación del comportamiento de dicha aplicación a las condiciones actuales del sistema donde se ejecuta, obteniendo así una mejora de su rendimiento.En l'actualitat, la computació d'altes prestacions està sent utilitzada en multitud de camps científics on els diferents problemes estudiats es resolen mitjançant aplicacions paral·leles/distribuïdes. Aquestes aplicacions requereixen gran capacitat de còmput, bé sigui per la complexitat dels problemes o per la necessitat de solucionar situacions en temps real. Per tant s'ha d'aprofitar els recursos i altes capacitats computacionals dels sistemes paral·lels en els quals s'executen aquestes aplicacions amb la finalitat d'obtenir un bon rendiment. No obstant això, assolir aquest rendiment en una aplicació executant-se en un sistema és una tasca complexa que requereix d'un alt grau d'experiència, especialment quan es tracta d'aplicacions que presenten un comportament dinàmic o quan s'usen sistemes heterogenis. En aquests casos actualment es planteja realitzar una millora de rendiment automàtica i dinàmica de les aplicacions com la millor via per l'anàlisi del rendiment. El present treball d'investigació es situa dins d'aquest àmbit d'estudi i el seu objectiu principal és és sintonitzar dinàmicament mitjançant MATE (Monitoring, Analysis and Tuning Environment) una aplicació MPI empleada en computació d'altes prestacions que segueixi un paradigma Master/Worker. Les tècniques de sintonització integrades en MATE han estat desenvolupades a partir de l'estudi d'un model de rendiment que reflecteix els colls d'ampolla propis d'aplicacions situades sota un paradigma Master/Worker: balanceig de càrrega i nombre de workers. L'execució de l'aplicació triada sota el control dinàmic de MATE i de l'estratègia de sintonització implementada ha permès observar l'adaptació del comportament d'aquesta aplicació a les condicions actuals del sistema on s'executa, obtenint així una millora en el seu rendiment.At the present time, high performance computing is used in a multitude of scientific fields, where the problems studied are resolved using parallel/distributed applications. These applications require an enormous computing capacity due to both the complexity of the problems and the necessity to solve them in real time situations. Therefore, the computational capacities and resources of the parallel systems, where these applications are executed, must be taken advantage of to attain this vital high performance. However, achieving high performance in applications executed in parallel systems is a complicated task that requires a high degree of experience, especially when dealing with applications with dynamic behaviour or those running on heterogenous systems. In these cases the use of automatic and dynamic performance improvements is proposed as a better approach to performance analysis. The research presented falls within this field of study and has the principle objective of dynamically tuning, using MATE (Monitoring, Analysis and Tuning Environment), an MPI application which employs high performance computing following the Master/Worker paradigm. The tuning techniques integrated in MATE have been developed following a study of the performance model that reflects the bottlenecks specific to the Master/Worker paradigm: load balancing and the number of workers. The execution of the chosen application under the dynamic control of MATE using the tuning strategies implemented has permitted the observation of the behaviour of said application adapting to the changing conditions in the system where it is being executed, thus obtaining an improvement in the performance

    Experiencia de organización del Primer Concurso Español de Programación Paralela

    Get PDF
    El primer Concurso Español de Programación Paralela se organizó en septiembre de 2011 en las Jornadas de Paralelismo en La Laguna. La finalidad del concurso es difundir la programación paralela entre estudiantes de informática, generando además material docente. El concurso es similar a otros concursos de programación secuencial o paralela, con equipos que resuelven problemas en un tiempo limitado, pero tiene algunas características diferenciadoras: se utiliza una herramienta automática (Mooshak) para validación, y se ha modificado para enviar las soluciones a un cluster y obtener la clasificación en función del speed-up; se puede participar de forma presencial u online; en la página del concurso se mantienen los records para cada problema, con explicaciones y códigos de las soluciones, de forma que el material se puede utilizar para docencia. El artículo resume la experiencia y perspectivas del concurso.SUMMARY -- The first Spanish Parallel Programming Contest was organized in September 2011 within the Jornadas de Paralelismo in La Laguna. The aim of the contest is to disseminate parallelism among Computer Science students who can use the material generated in the contest for educational purposes. The contest is similar to other sequential and parallel programming contests in which teams participate by solving a set of problems in a given time. But the Spanish contest has characteristics which distinguish it from other contests: an automatic tool (Mooshak) is used to validate the solutions and it has been modified to send the solutions to a cluster and to obtain the classification based on the speed-ups; candidates can participate both in situ and online; a classification with the records for each problem is maintained on the page of the contest, with explanations and codes of the record solutions so that the page can be used for educational purposes. This paper summarizes the experience and perspectives of the contest.Peer Reviewe

    Análisis de tráfico en Internet utilizando distribuciones Alfa estables en procesadores paralelos

    Full text link
    En el contexto actual de desarrollo de aplicaciones basadas en TCP/IP (Internet), el análisis del tráfico IP es una necesidad crucial con el objetivo de prever y solucionar posibles problemas de congestión que dificulten el uso adecuado de dichas aplicaciones. La disponibilidad de modelos matemáticos del tráfico permite anticiparse a futuros problemas en las redes de comunicaciones y además automatizar tareas de monitorización y control que forman parte de la gestión de redes actual. En los últimos años se han propuesto modelos estadísticos basados en las distribuciones alfa estables que se han revelado prometedores, pero que demandan una capacidad de cálculo intensa que limita su aplicación en situaciones de control de red en las que las decisiones se deben tomar en tiempo real. El abaratamiento de la tecnología de procesadores paralelos permite acelerar la ejecución de los algoritmos de estimación de parámetros de tráfico y están habilitando la utilización de las distribuciones alfa estables en el análisis y la resolución de problemas de tráfico. El objetivo de este trabajo sería partir de la situación actual en la que se han implantado algoritmos de estimación de parámetros de tráfico basados en el modelo alfa estable y adaptarlos al análisis de tráfico real, de manera que se puedan utilizar para intentar predecir el comportamiento de una red, lo que supondría la posibilidad de detectar anomalías, cambios en la red o incluso, predecir su comportamiento para llegar a prevenir posibles problemas. Para ello se realizará un estudio de la red, en las que se capturarán muestras de tráfico reales que posteriormente serán ajustadas para ser interpretadas usando distribuciones alfa estables.In the current context of developing applications based on TCP / IP (Internet), the analysis of the IP traffic is a necessity in order to anticipate and solve possible congestion problems that hinder the proper use of such applications. The existence of mathematical models of traffic allow to anticipate future problems in the communications networks and also automate monitoring and control tasks that are part of the current network management. In recent years statistical models have been proposed based on stable alpha distributions, which have been promising, but which demand an intense computational capacity that limits its implementation in situations of network control in which decisions must be taken in real time. Cheaper parallel processor technologies make possible the acceleration of the execution of algorithms for estimating traffic parameters and they are enabling the use of stable alpha distributions in the analysis and resolution of traffic problems. The objective of this work is to start from the current situation in which algorithms have been implemented to estimate traffic parameters based on the stable alpha model and to adapt them to the analysis of real traffic. So that they can be used to try to predict the behavior of a network, which would mean the possibility of detecting anomalies, changes in the network or even, predict their behavior in order to prevent potential problems. Therefore, a study of the network will be carried out, in which real traffic samples will be captured and later adjusted to be interpreted using stable alpha distributions

    Tecnologías aplicadas a la gestión de proyectos de traducción

    Get PDF
    La tecnología se ha convertido en una parte esencial en el día a día del traductor hasta el punto que traducción y tecnología ya no se conciben por separado. Esta afirmación, generalmente aceptada, ha supuesto el auge de una de las principales parcelas de especialidad del sector y que está de manera ineludible vinculada con la tecnología: la gestión de proyectos. El presente Trabajo de Fin de Grado (TFG) pretende dar una visión general de algunos de los recursos tecnológicos más importantes aplicados a la gestión de proyectos de traducción. Nuestro objetivo principal consistirá en explicar su funcionamiento, así como en presentar un análisis crítico de las razones por las que se los considera como la piedra angular de la gestión de proyectos de traducciónGrado en Traducción e Interpretació

    Implementación eficiente del teorema chino del resto

    Get PDF
    Estudio, diseño e implementación de nuevos enfoques paralelos software del Teorema Chino del Resto sobre diferentes plataformas y arquitecturas de tipo paralelo. Algunos de estos diseños típicos generan problemas conocidos de almacenamiento y gestión de la memoria en su ejecución al manejar Enteros Grandes. Este problema lleva al diseño de nuevos métodos más eficientes y refinados que vienen a solventar estas cuestiones de forma original y escalable. Los resultados obtenidos no solo mejoran de forma sustancial la implementación secuencial del mismo, sino que representan un avance en eficiencia, rendimiento y escalabilidad respecto a otras alternativas existentes actualmente
    corecore