992 resultados para Hardware reconfigurable
Resumo:
En termes de temps d'execució i ús de dades, les aplicacions paral·leles/distribuïdes poden tenir execucions variables, fins i tot quan s'empra el mateix conjunt de dades d'entrada. Existeixen certs aspectes de rendiment relacionats amb l'entorn que poden afectar dinàmicament el comportament de l'aplicació, tals com: la capacitat de la memòria, latència de la xarxa, el nombre de nodes, l'heterogeneïtat dels nodes, entre d'altres. És important considerar que l'aplicació pot executar-se en diferents configuracions de maquinari i el desenvolupador d'aplicacions no port garantir que els ajustaments de rendiment per a un sistema en particular continuïn essent vàlids per a d'altres configuracions. L'anàlisi dinàmica de les aplicacions ha demostrat ser el millor enfocament per a l'anàlisi del rendiment per dues raons principals. En primer lloc, ofereix una solució molt còmoda des del punt de vista dels desenvolupadors mentre que aquests dissenyen i evaluen les seves aplicacions paral·leles. En segon lloc, perquè s'adapta millor a l'aplicació durant l'execució. Aquest enfocament no requereix la intervenció de desenvolupadors o fins i tot l'accés al codi font de l'aplicació. S'analitza l'aplicació en temps real d'execució i es considra i analitza la recerca dels possibles colls d'ampolla i optimitzacions. Per a optimitzar l'execució de l'aplicació bioinformàtica mpiBLAST, vam analitzar el seu comportament per a identificar els paràmetres que intervenen en el rendiment d'ella, com ara: l'ús de la memòria, l'ús de la xarxa, patrons d'E/S, el sistema de fitxers emprat, l'arquitectura del processador, la grandària de la base de dades biològica, la grandària de la seqüència de consulta, la distribució de les seqüències dintre d'elles, el nombre de fragments de la base de dades i/o la granularitat dels treballs assignats a cada procés. El nostre objectiu és determinar quins d'aquests paràmetres tenen major impacte en el rendiment de les aplicacions i com ajustar-los dinàmicament per a millorar el rendiment de l'aplicació. Analitzant el rendiment de l'aplicació mpiBLAST hem trobat un conjunt de dades que identifiquen cert nivell de serial·lització dintre l'execució. Reconeixent l'impacte de la caracterització de les seqüències dintre de les diferents bases de dades i una relació entre la capacitat dels workers i la granularitat de la càrrega de treball actual, aquestes podrien ser sintonitzades dinàmicament. Altres millores també inclouen optimitzacions relacionades amb el sistema de fitxers paral·lel i la possibilitat d'execució en múltiples multinucli. La grandària de gra de treball està influenciat per factors com el tipus de base de dades, la grandària de la base de dades, i la relació entre grandària de la càrrega de treball i la capacitat dels treballadors.
Resumo:
La tecnologia GPGPU permet paral∙lelitzar càlculs executant operacions aritmètiques en els múltiples processadors de que disposen els xips gràfics. S'ha fet servir l'entorn de desenvolupament CUDA de la companyia NVIDIA, que actualment és la solució GPGPU més avançada del mercat. L'algorisme de neuroimatge implementat pertany a un estudi VBM desenvolupat amb l'eina SPM. Es tracta concretament del procés de segmentació d'imatges de ressonància magnètica cerebrals, en els diferents teixits dels quals es composa el cervell: matèria blanca, matèria grisa i líquid cefaloraquidi. S'han implementat models en els llenguatges Matlab, C i CUDA, i s'ha fet un estudi comparatiu per plataformes hardware diferents.
Resumo:
La virtualització és una tecnologia que permet l’abstracció del programari respecte dels recursos del maquinari, tant d’aplicacions com del sistema operatiu. Aquesta tecnologia està constantment en evolució, i el que fa pocs anys era un entorn de treball exclusiu per test de laboratori i aplicacions molt especifiques, ara permet oferir aplicacions i serveis d'entorns empresarials, permetent aprofitar el màxim els recursos disponibles. Aquest projecte tracta de plantejar la virtualització com a solució per a maximitzar el rendiments dels equips informàtics de una empresa. Introduirem la tecnologia de virtualització, planificarem la conversió dels serveis de l’empresa en màquines virtuals, detallarem els aspectes tècnics de la implementació i mostrarem els resultats d’aquesta virtualització.
Resumo:
Los procesadores multi-core y el multi-threading por hardware permiten aumentar el rendimiento de las aplicaciones. Por un lado, los procesadores multi-core combinan 2 o más procesadores en un mismo chip. Por otro lado, el multi-threading por hardware es una técnica que incrementa la utilización de los recursos del procesador. Este trabajo presenta un análisis de rendimiento de los resultados obtenidos en dos aplicaciones, multiplicación de matrices densas y transformada rápida de Fourier. Ambas aplicaciones se han ejecutado en arquitecturas multi-core que explotan el paralelismo a nivel de thread pero con un modelo de multi-threading diferente. Los resultados obtenidos muestran la importancia de entender y saber analizar el efecto del multi-core y multi-threading en el rendimiento.
Resumo:
Coronary magnetic resonance angiography (MRA) is a technique aimed at establishing a noninvasive test for the assessment of significant coronary stenoses. There are certain boundary conditions that have hampered the clinical success of coronary MRA and coronary vessel wall imaging. Recent advances in hardware and software allow for consistent visualization of the proximal and mid portions of the native coronary arteries. Current research focuses on the use of intravascular MR contrast agents and black blood coronary angiography. One common goal is to create a noninvasive test which might allow for screening for major proximal and mid coronary artery disease. These novel approaches will represent a major step forward in diagnostic cardiology.
Resumo:
En els últims anys printed electronics està aixecant un gran interès entre la indústria electrònica. Aquest tipus de procés consisteix en imprimir circuits amb tècniques d'impressió convencionals utilitzant tintes conductores, resistives, dielèctriques o semiconductores sobre substrats flexibles de baix cost com paper o plàstic. Fer servir aquestes tècniques s'espera que suposi una reducció dels costos de producció degut a que és un procés totalment additiu el que fa que sigui més senzill i es redueixi la quantitat de material emprat. El disseny de dispositius bàsics com resistències, condensadors i bobines per posteriorment veure la relació entre simulacions i valors obtinguts ha ocupat la primera part del projecte. La segona s’ha centrat en fer prototips d’antenes per a RFID (Radio Frequency IDentification) amb la tecnologia que es disposa a CEPHIS (Centre de Prototips i Solucions Hardwre-Software). Tot això ha servit per caracteritzar la tecnologia de la que es disposa i saber en quins apartats s’ha de seguir treballant per aconseguir millors prestacions.
Resumo:
Aquest projecte es tracta de la optimització i la implementació de l’etapa d’adquisició d’un receptor GPS. També inclou una revisió breu del sistema GPS i els seus principis de funcionament. El procés d’adquisició s’ha estudiat amb detall i programat en els entorns de treball Matlab i Simulink. El fet d’implementar aquesta etapa en dos entorns diferents ha estat molt útil tant de cara a l’aprenentatge com també per la comprovació dels resultats obtinguts. El principal objectiu del treball és el disseny d’un model Simulink que es capaç d’adquirir una senyal capturada amb hardware real. En realitat, s’han fet dues implementacions: una que utilitza blocs propis de Simulink i l’altra que utilitza blocs de la llibreria Xilinx. D’aquesta manera, posteriorment, es facilitaria la transició del model a la FPGA utilitzant l’entorn ISE de Xilinx. La implementació de l’etapa d’adquisició es basa en el mètode de cerca de fase de codi en paral·lel, el qual empra la operació correlació creuada mitjançant la transformada ràpida de Fourier (FFT). Per aquest procés es necessari realitzar dues transformades (per a la senyal entrant i el codi de referència) i una antitransformada de Fourier (per al resultat de la correlació). Per tal d’optimitzar el disseny s’utilitza un bloc FFT, ja que tres blocs consumeixen gran part dels recursos d’una FPGA. En lloc de replicar el bloc FFT, en el model el bloc és compartit en el temps gràcies a l’ús de buffers i commutadors, com a resultat la quantitat de recursos requerits per una implementació en una FPGA es podria reduir considerablement.
Resumo:
Una característica importante de la robótica es la comunicación entre sistema base y robot que puede establecerse de forma remota. Ello representa la base del proyecto que se describe a continuación, el cual se descompone de dos partes, una por cada miembro del proyecto: sistema software y sistema hardware. En el sistema software analizaremos las diferentes tecnologías inalámbricas (características, funcionamiento, seguridad, etc.), se realizará una comparativa de los diferentes módulos de comunicación y finalmente decidiremos aquellos que nos interesa para la implementación en Radiofrecuencia (RF) y Bluetooth. En este sistema también estudiaremos la interfaz gráfica que se utilizará, así como los programas creados en este entorno para realizar las implementaciones. En el sistema hardware trataremos de realizar el control de dos periféricos de forma independiente, un servomotor y un sonar, que nos servirán como ejemplo para analizar una posible comunicación entre varios robots y un PC. Por lo tanto, en este apartado analizaremos a fondo los diferentes componentes que harán posible tanto la comunicación, vía RF y Bluetooth, como el control de los diferentes dispositivos.
Resumo:
La virtualització és una técnica que té els seus origens a la dècada dels seixanta i que s’ha anat desenvolupant d’una manera desigual fins als nostres dies. Amb ella es pot simular diverses màquines dintre d’un mateix computador. Durant el transcurs d’aquest projecte, es veurà l’estat actual d’aquesta tecnologia, es farà un estudi de rendiment de diferents components del hardware del nostre computador i per últim, es mostrarà l’aplicació que s’ha desenvolupat per treure profit de les característiques de les màquines virtuals, mitjançant la creació, gestió i modificació a partir d’un interface Web.
Resumo:
Con la mayor capacidad de los nodos de procesamiento en relación a la potencia de cómputo, cada vez más aplicaciones intensivas de datos como las aplicaciones de la bioinformática, se llevarán a ejecutar en clusters no dedicados. Los clusters no dedicados se caracterizan por su capacidad de combinar la ejecución de aplicaciones de usuarios locales con aplicaciones, científicas o comerciales, ejecutadas en paralelo. Saber qué efecto las aplicaciones con acceso intensivo a dados producen respecto a la mezcla de otro tipo (batch, interativa, SRT, etc) en los entornos no-dedicados permite el desarrollo de políticas de planificación más eficientes. Algunas de las aplicaciones intensivas de E/S se basan en el paradigma MapReduce donde los entornos que las utilizan, como Hadoop, se ocupan de la localidad de los datos, balanceo de carga de forma automática y trabajan con sistemas de archivos distribuidos. El rendimiento de Hadoop se puede mejorar sin aumentar los costos de hardware, al sintonizar varios parámetros de configuración claves para las especificaciones del cluster, para el tamaño de los datos de entrada y para el procesamiento complejo. La sincronización de estos parámetros de sincronización puede ser demasiado compleja para el usuario y/o administrador pero procura garantizar prestaciones más adecuadas. Este trabajo propone la evaluación del impacto de las aplicaciones intensivas de E/S en la planificación de trabajos en clusters no-dedicados bajo los paradigmas MPI y Mapreduce.
Resumo:
La gestión de recursos en los procesadores multi-core ha ganado importancia con la evolución de las aplicaciones y arquitecturas. Pero esta gestión es muy compleja. Por ejemplo, una misma aplicación paralela ejecutada múltiples veces con los mismos datos de entrada, en un único nodo multi-core, puede tener tiempos de ejecución muy variables. Hay múltiples factores hardware y software que afectan al rendimiento. La forma en que los recursos hardware (cómputo y memoria) se asignan a los procesos o threads, posiblemente de varias aplicaciones que compiten entre sí, es fundamental para determinar este rendimiento. La diferencia entre hacer la asignación de recursos sin conocer la verdadera necesidad de la aplicación, frente a asignación con una meta específica es cada vez mayor. La mejor manera de realizar esta asignación és automáticamente, con una mínima intervención del programador. Es importante destacar, que la forma en que la aplicación se ejecuta en una arquitectura no necesariamente es la más adecuada, y esta situación puede mejorarse a través de la gestión adecuada de los recursos disponibles. Una apropiada gestión de recursos puede ofrecer ventajas tanto al desarrollador de las aplicaciones, como al entorno informático donde ésta se ejecuta, permitiendo un mayor número de aplicaciones en ejecución con la misma cantidad de recursos. Así mismo, esta gestión de recursos no requeriría introducir cambios a la aplicación, o a su estrategia operativa. A fin de proponer políticas para la gestión de los recursos, se analizó el comportamiento de aplicaciones intensivas de cómputo e intensivas de memoria. Este análisis se llevó a cabo a través del estudio de los parámetros de ubicación entre los cores, la necesidad de usar la memoria compartida, el tamaño de la carga de entrada, la distribución de los datos dentro del procesador y la granularidad de trabajo. Nuestro objetivo es identificar cómo estos parámetros influyen en la eficiencia de la ejecución, identificar cuellos de botella y proponer posibles mejoras. Otra propuesta es adaptar las estrategias ya utilizadas por el Scheduler con el fin de obtener mejores resultados.
Resumo:
Computer chips implementation technologies evolving to obtain more performance are increasing the probability of transient faults. As this probability grows and on-chip solutions are expensive or tend to degrade processor performance, the efforts to deal with these transient faults in higher levels (such as the operating system or even at the application level) are increasing. Mostly, these efforts are trying to avoid silent data corruptions using hardware, software and hybrid based techniques to add redundancy to detect the errors generated by the transient faults. This work presents our proposal to improve the robustness of applications with source code based transformation adding redundancy. Also, our proposal takes account of the tradeoff between the improved robustness and the overhead generated by the added redundancy.
Resumo:
La acelerada invención de nuevos hardware y software van modificando, casi diariamente, la percepción del mundo, y, por lo tanto, la producción cultural, permeabilizando conceptos como arte-literatura, cuadro-libro, imagen-texto. Si bien estas parejas han sido siempre objeto del discurso teórico, la discusión asume hoy una urgencia creciente al momento que las nuevas tecnologías exponen lo que estaba refugiado en el reino de la teoría. La misma forma de comprender la realidad se ve afectada por la inmediatez de estos medios. La investigación analiza la obra de diferentes autores de los nuevos medios que trabajan en torno a la problemática de la representación de la memoria en esta perspectiva contemporánea. El trabajo de investigación desarrollado en la Tesis Doctoral se centra en la forma de representación de la memoria, así como esta planteada en la obra de Chris Marker. Interesan especialmente los últimos dispositivos creados por el autor en el marco de las llamadas nuevas tecnologías y los nuevos espacios de exposición de cine. El proyecto propone un análisis en torno a la memoria que dichos discursos sugieren a través de los temas que les son propios: archivo, identidades culturales, contribución del espectador, base de datos y tratamiento tecnológico de la información. Se ha seleccionado la obra de Chris Marker por las características de realización y de discurso que permiten una amplia discusión sobre las llamadas nuevas tecnologías y el mundo que éstas representan en el nuevo espacio híbrido construido entre las artes visuales, la literatura y la tecnología.
Resumo:
Debido al gran número de transistores por mm2 que hoy en día podemos encontrar en las GPU convencionales, en los últimos años éstas se vienen utilizando para propósitos generales gracias a que ofrecen un mayor rendimiento para computación paralela. Este proyecto implementa el producto sparse matrix-vector sobre OpenCL. En los primeros capítulos hacemos una revisión de la base teórica necesaria para comprender el problema. Después veremos los fundamentos de OpenCL y del hardware sobre el que se ejecutarán las librerías desarrolladas. En el siguiente capítulo seguiremos con una descripción del código de los kernels y de su flujo de datos. Finalmente, el software es evaluado basándose en comparativas con la CPU.
Resumo:
For the execution of the scientific applications, different methods have been proposed to dynamically provide execution environments for such applications that hide the complexity of underlying distributed and heterogeneous infrastructures. Recently virtualization has emerged as a promising technology to provide such environments. Virtualization is a technology that abstracts away the details of physical hardware and provides virtualized resources for high-level scientific applications. Virtualization offers a cost-effective and flexible way to use and manage computing resources. Such an abstraction is appealing in Grid computing and Cloud computing for better matching jobs (applications) to computational resources. This work applies the virtualization concept to the Condor dynamic resource management system by using Condor Virtual Universe to harvest the existing virtual computing resources to their maximum utility. It allows existing computing resources to be dynamically provisioned at run-time by users based on application requirements instead of statically at design-time thereby lay the basis for efficient use of the available resources, thus providing way for the efficient use of the available resources.