About
127
Publications
41,620
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
494
Citations
Introduction
Additional affiliations
February 1990 - present
Publications
Publications (127)
With the growth of autonomous vehicles and collision-avoidance systems, several approaches using deep learning and convolutional neural networks (CNNs) continually address accuracy improvement in obstacle detection. The authors introduce a three-stage architecture that adds side channels as low-level features to serve as input to existing CNNs. In...
Dado o crescimento da demanda de energia elétrica das usinas de geração de energia, faz-se necessário um conjunto de ferramentas e tecnologias para organizar, processar e fornecer informações que contribuam para o aumento da oferta de energia. A falta de informação sobre os cenários ambientais nas regiões onde as usinas podem ser implantadas termin...
Given the growth of electrical energy demand from power generating plants, a set of tools and technologies to organize, process and provide information that contribute to the increased supply of energy are required. The lack of information regarding the environmental scenarios in the regions where power plants might be established may lead to ineff...
This paper proposes the implementation of a multi-objective genetic algorithm (MOGA) on a low-end microcontroller, applying benchmark functions to evaluate its performance. A general-purpose microprocessor implementation of the same algorithm was used to compare CPU cycles spent for each generation on both platforms. The results show that although...
A capacidade intrínseca dos humanos de detectar, diferenciar e classificar rapidamente os objetos nos permite tomar decisões rápidas em relação ao que é visto. Aplicações podem se beneficiar de detecção rápida e leve de objetos para imagens ou vídeos. Embora, nos últimos 5 anos, o setor de tecnologia tenha apresentado dispositivos com recursos de p...
The construction of computational models to simulate real systems enables their dynamics to be understood and analyzed, and the future evolution of these systems to be predicted. The benefits of using computational simulations are that they are more secure, save cost and time, since systems that do not already exist can be created without incurring...
A parallel parameterizable stream-based JPEG-LS encoder architecture for scalable throughput is presented. The main contribution is the reconfigurable spatio-temporal parallelism to meet different pixel rates for lossless video compression, achieving the required throughputs with
lower processing frequencies, scaled by the degree of spatial paralle...
Proposta de Plataforma Interativa para Visualização Espacial de Dados (PIVED) em redes de distribuição de energia elétrica, composta pelos módulos ProcessData, GeoData e GraphData. A base de dados com medições elétricas das unidades consumidoras é acessada pelo ProcessData, gerando a informação a ser visualizada. O GraphData mostra os resultados pr...
The advancement in studies and research on remote experimentation and remote laboratories is very important in developing communication tools between the users and the remote laboratory. This paper presents the architecture and the implementation of a web system of remote access for measurement equipment which provides in its specifications the arc...
In recent years, online digital games have left behind the status of entertainment sources to become also professional electronic sports. Worldwide championships offer prizes up to millions of dollars for the best competitors and/or teams among different game categories such as digital collectible card games (DCCG), multiplayer online battle arena,...
In the last decade the first parallel processors were launched for desktop computers. Called CMPs (Chip Multiprocessors), they have made parallelism popular, which became the dominant computing paradigm. The high processing capacity and wide range of CMPs models existing has increased the use of virtualization. One of the most used virtual environm...
O objetivo deste trabalho é aumentar a qualidade de distribuição de energia elétrica em sistemas de grande porte visando a melhoria dos níveis de tensão ao longo dos circuitos e a diminuição das perdas elétricas, através da otimização da alocação de bancos de capacitores. Neste sentido, considerando-se uma rede de distribuição real com 2498 barras,...
This paper aims to motivate and sensitize operators of electricity distribution network to the importance of tridimen-sional visualization maps, for the representation and interpretation of a great amount of georeferenced data related to consumer units. The energy companies have been producing an increasing amount of information that should be anal...
Simulation methods to solve complex problems are usually run on supercomputers or distributed computing platforms using parallel computing resources. This work proposes a parallel implementation of a cellular automaton using as a case study of a real application of dynamic simulation of clouds. OpenMP API was used as a tool to parallelize the code....
A computação paralela está presente em quase todos os segmentos da computação atualmente, de computadores pessoais a supercomputadores,
e, por isso, este trabalho faz uma análise comparativa do paralelismo de tarefa entre duas ferramentas de programação paralela: a OpenMP e o Glasgow Parallel Haskell. Os experimentos realizados têm o objetivo de ev...
Modern multi-core platforms feature complex topologies with different cache levels and hierarchical memory subsystems. Consequently, thread and data placement become crucial to achieve good performance. In this context, CPU and memory affinity appear as a promising approach to match the application characteristics to the underlying architecture. In...
Na educação em Arquitetura de Computadores a forma mais comum de os alunos terem acesso ao processo de execução de um programa em um processador é através de softwares de simulação. O problema é que essa simulação é abstrata, pois nem todos os componentes do hardware são emulados, mas apenas seu funcionamento. Então como o aluno pode ter acesso ao...
Este trabalho faz uma comparação entre duas bibliotecas para computação paralela, a OpenMP e a Boost.Thread. Os experimentos realizados têm o objetivo de medir o desempenho e a escalabilidade dos programas que utilizam essas bibliotecas. Para fazer a comparação foi desenvolvido um algoritmo genético para aproximar a solução de uma instância do prob...
Resumo Em todo o mundo existem eventos organizados para suprir a necessidade de troca de informações entre pessoas envolvidas com educação em arquitetura de computares. Nestes encontros, geralmente anuais, ocorrem apresentações de trabalhos relacionados à educação e são criadas oportunidades para discussões e trocas de experiências entre os partici...
Many-core processors have become the main alternative to achieve petascale and exascale computing. In order to support the on-chip demand for scalability, Networks-on-Chip (NoCs) emerge as alternative to enhance the efficiency and performance. However, wire constraints based on metal properties can limit the packets throughput. For this reason, res...
Modern multi-core platforms feature complex topologies with different cache levels and hierarchical memory subsystems. Consequently, managing thread and data placement efficiently becomes crucial to improve the performance of applications. In this context, CPU and memory affinity appear as alternatives to match the application characteristics to th...
Muitos problemas relacionados ao ensino e aprendizagem de Arquitetura de Computadores podem ser observados atualmente. Um dos principais problemas é a falta de motivação da maioria dos alunos para o seu aprendizado. Este artigo apresenta uma proposta de abordagem prática para motivação ao aprendizado de Arquitetura de Computadores. Esta tem a final...
Conjugate gradient (CG) solver implementations optimized for GPUs are developed and applied to a 3D finite element (FEM) problem. Results show that our GPUs implementations have a superior improvement in computational performance than cluster and other GPU implementations, due to algorithm and other architecture dependent optimizations.
This paper presents a computational performance analysis of a parallel implementation of a conjugate gradient (CG) solver using domain decomposition and distributed memory computers, applied to a 3-D finite element method problem. The results show a superlinear speedup, which is not usually expected. The analysis shows why and how it can happen.
Current run-time reconfigurable systems present high reconfiguration times. This is a high overhead which deeply reduce these systems' performance, and it is critical when the application has tight performance requirements. Multi-level reconfiguration (MLR) model is a good strategy to reduce the size of configuration bitstreams, reducing reconfigur...
Dynamically reconfigurable split cache architecture is a reconfigurable architecture that has all advantages of a split cache and also the ability to reconfigure itself allowing computational performance improvement. Several real traces were performed in order to verify and compare the dynamically reconfigurable split cache architecture and the con...
Alguns alunos apresentam dificuldade em compreender o funcionamento do Pipeline. Com o propósito de reduzir essa dificuldade e melhorar ainda mais o aprendizado, foi desenvolvida uma nova ferramenta, o MPDSim (MIPS Pipeline Didactic Simulator 32 bits), simulador didático de Pipeline, que possui os adiantamentos padrões e contribui no incentivo ao e...
Nos últimos anos, os sistemas computacionais embutidos (SCE) têm evoluído bastante. Além disso, a diversidade de requisitos das aplicações estimula o projeto e desenvolvimento de uma grande variedade de SCEs. Entretanto, os SCEs convencionais normalmente não suportam adequação, considerando as mudanças dinâmicas da carga de trabalho e ou dos requis...
A Reconfigurable Consistency Algorithm (RCA) is an algorithm that guarantees the consistency in Distributed Shared Memory (DSM) Systems. In a RCA, there is a Configuration Control Layer (CCL) that is responsible for selecting the most suitable RCA configuration (behavior) for a specific workload and DSM system. In previous works, we defined an uppe...
Resumo Analisando vários simuladores de hierarquia de memória, percebe-se que a maioria utiliza somente simulação dirigida por rastros de acesso à memória, o que nem sempre é o ideal. Com o objetivo de disponibilizar um simulador mais abrangente foi proposto e desenvolvido o MH-TEDSim, que suporta simulações dirigidas por execução ou por rastro de...
In this work, we present a parallel implementation of an algorithm that simulates the natural convection of fluids in a closed
cavity. The method is based on the Boussinesq approximation; and it is numerically solved using the finite volume method,
based on the Power-Law interpolating scheme. The pressure-velocity coupling is solved using SIMPLEC a...
Current image segmentation implementations are not optimized to all kinds of applications. To attend the different application
kinds, the solution should allow to be reconfigured to fit their different characteristics and resource needs and to improve
performance. Our objective is to present an image segmentation architecture and its implementation...
Current parallel architectures are not optimized to all different kinds of applications since they can vary in requirements
and resource needs. An ideal system to attend different applications should be able to fit their different characteristics
and resource needs and to improve application performance. Our objective is to design and to develop a...
O projeto de processadores com arquiteturas multi-core é a atual alternativa para o aumento de
desempenho demandado pelo grande volume de processamento de informação. Estes projetos levam à
necessidade da definição de mecanismos eficientes de comunicação entre os núcleos do chip. Neste artigo é apresentado o projeto de um processador de rede intra-...
Neste artigo, apresentamos um método de aprendizado de arquitetura de computadores, que é fundamentado em aprendizado baseado em problemas e soft processor. Nosso objetivo principal é propor e desenvolver um método que estimule, facilite e otimize o processo de aprendizado de arquitetura de computadores. Para verificação deste método, foi proposto...
É fato que o processo de aprendizagem de hierarquia de memória tende a ser um tanto quanto árduo em função do alto grau de abstração exigido por parte daqueles que iniciam o estudo nesta área. Buscou-se, neste trabalho, propor e desenvolver um simulador didático e interativo de hierarquia de memória, denominado SkepsisMem, a fim de tornar o process...
Neste artigo apresentamos uma arquitetura de memória cache reconfigurável. Além disso, apresentamos a taxa de acerto de algumas cargas de trabalho reais do SPEC 2000 CPF representadas por traces obtidos do BYU Trace Distribution Center executadas em nossa arquitetura e nas organizações tradicionais de cache. Com a análise dos resultados destes expe...
O baixo desempenho e baixa flexibilidade de soluções de convolução de imagens são problemas comuns. Para solucionar estes problemas, neste artigo, apresentamos uma arquitetura parametrizada e paralela para convolução de imagens. Para verificação, codificamos em VHDL diferentes variações da arquitetura para implementação em FPGA. Resultados de ganho...
O aprendizado de hierarquia de memória utilizando os métodos convencionais de ensino (slides, livros e outros), apresenta algumas dificuldades na visualização e compreensão do que acontece durante os acessos às posições de memória nos diversos níveis hierárquicos. Com o propósito de reduzir essa dificuldade foi proposto e desenvolvido o Web-MHSim,...
This paper presents results of research into the use of the Bellman-Zadeh approach to decision making in a fuzzy environment for solving multiobjective optimization problems. Its application conforms to the principle of guaranteed result and provides constructive lines in obtaining harmonious solutions on the basis of analyzing associated maxmin pr...
Learning the various structures and levels of memory hierarchy by means of conventional procedures is a complex subject. A memory hierarchy environment (Web-MHE) was proposed and developed as part of our undergraduate research, to serve not only as an auxiliary teaching tool for the Computer's Architecture professor, but also as a learning facility...
This paper presents the proposal and development of a reconfigurable crossbar switch (RCS) architecture for network processors. Its main purpose is to increase the performance, and flexibility for environments with multiprocessors and computer clusters. The results include VHDL simulation of RCS and the use of it in a broadcast function implementat...
In this paper, we present a dynamically reconfigurable cache architecture using adaptive block allocation policy analyzed by means of simulation. Our main objectives are: to propose a reconfigurable cache architecture and to propose, implement and analyze the performance of an adaptive cache block allocation policy. First, we present a proposal of...
Learning the various structures and levels of memory hierarchy by means of conventional procedures is a complex subject. A didactic simulator of cache memory (MSCSim) was proposed and developed as part of our undergraduate research, to serve not only as an auxiliary teaching tool for the Computer's Architecture professor, but also as a learning fac...
In this paper we present and analyze an artificial neural network hardware engine, its architecture and implementation. The engine was designed to solve performance problems of the serial software implementations. It is based on a hierarchical parallel and parameterized architecture. Taking into ac-count verification results, we conclude that this...
Message Passing Interface (MPI) Collective Communication Functions (MCCF) are usually implemented in programming libraries
utilizing invariable algorithms. Not always do such algorithms yield the best performance with all kinds of applications and
over all execution environments. In this paper, we present, simulate, analytically model, verify and a...
This paper presents results of research in the use of the Bellman–Zadeh approach to decision- making in a fuzzy environment for solving multiobjective optimization problems. Its application conforms to the principle of guaranteed result and provides constructive lines in obtaining harmonious solutions on the basis of analyzing associated maxmin pro...
Os equipamentos de redes apresentaram nos últimos anos avanços consideráveis em sua arquitetura de processamento e chaveamento de pacotes de dados resultando no surgimento de unidades de chaveamento dedicadas para trabalhar com o aumento de qualidade e demanda de serviço. Entre elas podemos citar a chave crossbar. No entanto, soluções reconfiguráve...
Softwares de memória compartilhada distribuída (DSM-Distributed Shared Memory) permitem que os nós de uma arquitetura paralela distribuída compartilhem dados. Este compartilhamento permite que os nós tenham acesso concorrente/paralelo a um mesmo conjunto de dados. Então, torna-se necessário que os nós saibam quando e como realizar esses acessos sem...
Distributed shared memory (DSM) systems can share a set of objects or virtual memory pages. The data sharing enables the applications to access the data concurrently. But, these concurrently access can generate some inconsistencies in the shared data state. The consistency models are responsible for managing the state of shared data for the applica...
O objetivo principal deste artigo é apresentar as atividades realizadas ao longo dos últimos anos no Instituto de Informática da PUC Minas, onde estamos usando a pesquisa em sala de aula como uma das atividades do aluno para complementar o estudo a cerca da matéria estudada e também como nova fonte de motivação para enxergar atividades futuras em i...
The consistency models are responsible for managing the state of shared data for the applications of a distributed shared memory (DSM) systems. The already proposed consistency models are inflexible and cannot adapt to the workload and environments characteristics. So, they cannot achieve the best performance for the workloads and environments in a...
In this paper, we present, verify and analyze the performance of JSDESLib (Java simple discrete-event simulation library). It is a simplified and easy-to-use Java-based library for the development of discrete-event simulation tools of parallel systems. Our main objectives are: to propose, develop and implement JSDESLib: as a parallel event-oriented...
In this paper, we propose, implement and analyze the performance of a reconfigurable sequential consistency algorithm (RSCA) using simulation. Extending the concepts of reconfigurable devices to the algorithmic level, we model RSCA that is a reconfigurable sequential consistency algorithm for asynchronous distributed systems that manage concurrent...
Analysis of X, R > models is considered as part of a general approach to solving optimization problems with fuzzy coefficients. This approach
consists in formulating and solving one and the same problem within the framework of mutually interrelated models with constructing
equivalent analogs with fuzzy coefficients in objective functions alone. The...
We present a comparative performance evaluation of different programming paradigms and languages using multithreaded programming. We compare the procedural and object-oriented (OO) paradigms, as well as the C++ and Java languages, regarding both performance and programmability. The comparison is made upon sequential and parallel image convolution i...
Consistency is an important issue in Distributed Shared Memory (DSM) systems. These systems share a set of objects or virtual memory pages. The data sharing enables the applications in workloads to access the data concurrently. But, these concurrent accesses can generate some inconsistencies in the shared data state. The consistency models are resp...
In this paper, we propose, present and analyze the behavior and the performance of a reconfigurable algorithm for shared objects consistency management in distributed systems. Object sharing allows nodes to concurrently/parallel access a same set of replicated objects. However, it is necessary that the nodes know when and how to do these accesses,...
The broadcast function is one of the most used collective communication functions of the message passing interface (MPI) library. Broadcasts are usually implemented with invariable algorithms, which fail to yield the best performance with all kinds of applications in all execution environments. This problem should be addressed, since the performanc...
In this paper, we present a new version of ClusterSim (Cluster Simulation Tool), in which we included two new modules: Message-Passing (MP) and Distributed Shared Memory (DSM). ClusterSim supports the visual modeling and the simulation of clusters and their workloads for performance analysis. A modeled cluster is composed of single or multi-process...
Não existe um modelo de memória único que seja ideal para todas as classes de carga de trabalho, já que uma pode ter um modelo de memória mais adequado às suas características, em termos de ganho de desempenho. Neste trabalho, propomos um modelo de memória reconfigurável para sistemas paralelos chamado RMA (Reconfigurable Memory Access), visando ad...
In this tutorial we present the concepts and essential characteristics of the Ordinary Petri Nets, its algebraic and graphical representations, definitions and properties. Moreover, we present some high level Petri Nets, as the Coloured Petri Nets and the Stochastic Petri Nets. Later, we present the modeling of trivial problems using Petri Nets, me...
Arquiteturas paralelas atuais possuem modelo de memória único e estático. Entretanto, as cargas de trabalho de um sistema computacional possuem características distintas e às vezes até divergentes. Conseqüentemente, a escolha de um modelo de memória ideal é difícil e envolve custo, desempenho, disponibilidade, entre outros fatores. Neste trabalho,...
O aumento de desempenho e flexibilidade dos equipamentos de rede é uma exigência que cresce a cada dia, decorrente do grande uso dos meios de comunicação de dados, principalmente a Internet. Por este motivo, nos últimos anos, as pesquisas envolvendo os equipamentos de rede têm se tornado freqüentes nas universidades e indústrias. Neste artigo descr...
Neste artigo apresentamos uma arquitetura de cache com associatividade reconfigurável. Nossos objetivos principais são: propor e analisar uma arquitetura de memória cache com associatividade reconfigurável/variável. Apresentamos a taxa de erro da execução de algumas cargas de trabalho reais representadas por traces obtidos do BYU Trace Distribution...
As funções MPI (Message Passing Interface) de comunicação coletiva (FMCC) são comumente implementadas em bibliotecas que utilizam algoritmos invariáveis. Nem sempre elas apresentam o melhor desempenho em todos os tipos de aplicações e ambientes de execução. Neste artigo, apresentamos, simulamos, modelamos analiticamente, verificamos e analisamos FM...
Using a single traditional gang scheduling algorithm cannot provide the best performance for all workloads and parallel architectures. A solution for this problem is the use of an algorithm that is capable of dynamically changing its form (configuration) into a more appropriate one, according to environment variations and user requirements. In this...
We present the proposal and implementation of a Java-based parallel discrete-event simulation tool for cluster computing called ClusterSim (cluster simulation tool). The ClusterSim supports visual modeling and simulation of clusters and their workloads for performance analysis. A cluster is composed of single or multiprocessed nodes, parallel job s...