Adriano Marques Garcia
Current Organizations / Institutes
The organizations/institutes from the scholar's latest article
Previous Organizations / Institutes
The organizations / institutes from the scholar's other articles in the past ten years
Adriano Marques Garcia has a total of 23 co-authors. Here are the top co-authors by number of shared publications:
- Luiz Gustavo Fernandes
School of Technology, Pontifical Catholic University of Rio Grande do Sul, Porto Alegre, Brazil
7 shared publications - Claudio Schepke
Federal University of Pampa (UNIPAMPA)
6 shared publications Claudio Schepke
Federal University of Pampa (UNIPAMPA)
5 shared publications- Dalvan Griebler
Pontifical Catholic University of Rio Grande do Sul (PUCRS)
5 shared publications Dalvan Griebler
Pontifical Catholic University of Rio Grande do Sul (PUCRS)
4 shared publicationsSérgio Luis Sardi Mergen
3 shared publications
Latest Publications
- 2 July 2026
- Published by Springer Nature
- p. 253-264
Thread Monitoring Tool: Transparent Characterization of Threading Patterns with eBPF
- 2 July 2026
- Published by Springer Nature
- p. 253-264
Thread Monitoring Tool: Transparent Characterization of Threading Patterns with eBPF
- 8 November 2025
- Published by Elsevier in Future Generation Computer Systems
- Vol. 177
Inference performance of large language models on a 64-core RISC-V CPU with silicon-enabled vectors
- 8 November 2025
- Published by Elsevier in Future Generation Computer Systems
- Vol. 177
Inference performance of large language models on a 64-core RISC-V CPU with silicon-enabled vectors
- Open Access
- 6 November 2023
- Published by Springer Nature in Research Square
Performance and Programmability of GrPPI for Parallel Stream Processing on Multi-Cores
GrPPI library aims to simplify the burdening task of parallel programming. It provides a unified, abstract, and generic layer while promising minimal overhead on performance. Although it supports stream parallelism, GrPPI lacks an evaluation regarding representative performance metrics for this domain, such as throughput and latency. This work evaluates GrPPI focused on parallel stream processing. We compare the performance, memory usage, and programmability of GrPPI against handwritten parallel code. For this, we use the benchmarking framework SPBench to build custom GrPPI benchmarks and benchmarks with handwritten parallel code using the same backends supported by GrPPI. The basis of the benchmarks is real applications, such as Lane Detection, Bzip2, Face Recognizer, and Ferret. Experiments show that while performance is competitive with handwritten code in many cases, the infeasibility of fine-tuning GrPPI is a crucial drawback. Despite this, programmability experiments estimate that GrPPI has the potential to reduce by about three times the development time of parallel applications.
- 6 November 2023
- Published by Springer Nature in Research Square
Open AccessPerformance and Programmability of GrPPI for Parallel Stream Processing on Multi-Cores
GrPPI library aims to simplify the burdening task of parallel programming. It provides a unified, abstract, and generic layer while promising minimal overhead on performance. Although it supports stream parallelism, GrPPI lacks an evaluation regarding representative performance metrics for this domain, such as throughput and latency. This work evaluates GrPPI focused on parallel stream processing. We compare the performance, memory usage, and programmability of GrPPI against handwritten parallel code. For this, we use the benchmarking framework SPBench to build custom GrPPI benchmarks and benchmarks with handwritten parallel code using the same backends supported by GrPPI. The basis of the benchmarks is real applications, such as Lane Detection, Bzip2, Face Recognizer, and Ferret. Experiments show that while performance is competitive with handwritten code in many cases, the infeasibility of fine-tuning GrPPI is a crucial drawback. Despite this, programmability experiments estimate that GrPPI has the potential to reduce by about three times the development time of parallel applications.
- 9 January 2023
- Published by Springer Nature in The Journal of Supercomputing
- Vol. 79 (8) , 9206-9244
Micro-batch and data frequency for stream processing on multi-cores
- 9 January 2023
- Published by Springer Nature in The Journal of Supercomputing
- Vol. 79 (8) , 9206-9244
Micro-batch and data frequency for stream processing on multi-cores
- Open Access
- 3 August 2022
- Published by Springer Nature in Research Square
Micro-batch and Data Frequency for Stream Processing on Multi-cores
Latency or throughput are often critical performance metrics in stream processing. Applications' performance can fluctuate depending on the input stream. This unpredictability is tied to variations in data arrival frequency, data size, complexity, and other factors. Researchers are constantly investigating new ways to mitigate the impact of these variations on performance with self-adaptive techniques involving elasticity or micro-batching. However, there is a lack of benchmarks capable of creating test scenarios to further evaluate these techniques. This work extends and improves the SPBench benchmarking framework to support dynamic micro-batching and data stream frequency management. We also propose a set of algorithms that generate the most commonly used frequency patterns for benchmarking stream processing in related work. It allows the creation of a wide variety of test scenarios. To validate our solution, we use SPBench to create custom benchmarks and evaluate the impact of micro-batching and data stream frequency on the performance of Intel TBB and FastFlow. These are two libraries that leverage stream parallelism for multi-core architectures. Our results demonstrated that most test cases benefited from micro-batches, especially high throughput applications with ordering constraints. For different data stream frequency configurations, TBB ensured the lowest latency, while FastFlow assured higher throughput in shorter pipelines.
- 3 August 2022
- Published by Springer Nature in Research Square
Open AccessMicro-batch and Data Frequency for Stream Processing on Multi-cores
Latency or throughput are often critical performance metrics in stream processing. Applications' performance can fluctuate depending on the input stream. This unpredictability is tied to variations in data arrival frequency, data size, complexity, and other factors. Researchers are constantly investigating new ways to mitigate the impact of these variations on performance with self-adaptive techniques involving elasticity or micro-batching. However, there is a lack of benchmarks capable of creating test scenarios to further evaluate these techniques. This work extends and improves the SPBench benchmarking framework to support dynamic micro-batching and data stream frequency management. We also propose a set of algorithms that generate the most commonly used frequency patterns for benchmarking stream processing in related work. It allows the creation of a wide variety of test scenarios. To validate our solution, we use SPBench to create custom benchmarks and evaluate the impact of micro-batching and data stream frequency on the performance of Intel TBB and FastFlow. These are two libraries that leverage stream parallelism for multi-core architectures. Our results demonstrated that most test cases benefited from micro-batches, especially high throughput applications with ordering constraints. For different data stream frequency configurations, TBB ensured the lowest latency, while FastFlow assured higher throughput in shorter pipelines.
- Open Access
- 18 April 2022
- Published by Sociedade Brasileira de Computação
- p. 97-98
Um Framework para Criar Benchmarks de Aplicações Paralelas de Stream
Este trabalho apresenta o SPBENCH, um framework para o desenvolvimento de benchmarks de processamento de stream em C++. O SPBENCH fornece um conjunto de aplicações realísticas através de abstrações de alto nível e permite customizações nos dados de entrada e métricas de desempenho. Este trabalho apresenta o SPBENCH, um framework para o desenvolvimento de benchmarks de processamento de stream em C++. O SPBENCH fornece um conjunto de aplicações realísticas através de abstrações de alto nível e permite customizações nos dados de entrada e métricas de desempenho.
- 18 April 2022
- Published by Sociedade Brasileira de Computação
- p. 97-98
Open AccessUm Framework para Criar Benchmarks de Aplicações Paralelas de Stream
Este trabalho apresenta o SPBENCH, um framework para o desenvolvimento de benchmarks de processamento de stream em C++. O SPBENCH fornece um conjunto de aplicações realísticas através de abstrações de alto nível e permite customizações nos dados de entrada e métricas de desempenho. Este trabalho apresenta o SPBENCH, um framework para o desenvolvimento de benchmarks de processamento de stream em C++. O SPBENCH fornece um conjunto de aplicações realísticas através de abstrações de alto nível e permite customizações nos dados de entrada e métricas de desempenho.
- 10 January 2022
- Published by Springer Nature in Computing
- Vol. 105 (5) , 1077-1099
SPBench: a framework for creating benchmarks of stream processing applications
- 10 January 2022
- Published by Springer Nature in Computing
- Vol. 105 (5) , 1077-1099
SPBench: a framework for creating benchmarks of stream processing applications
- 30 September 2020
- Published by Springer Nature
- Vol. 12254, 142-157
The Impact of CPU Frequency Scaling on Power Consumption of Computing Infrastructures
Since the demand for computing power increases, new architectures emerged to obtain better performance. Reducing the power and energy consumption of these architectures is one of the main challenges to achieving high-performance computing. Current research trends aim at developing new software and hardware techniques to achieve the best performance and energy trade-offs. In this work, we investigate the impact of different CPU frequency scaling techniques such as ondemand, performance, and powersave on the power and energy consumption of multi-core based computer infrastructure. We apply these techniques in PAMPAR, a parallel benchmark suite implemented in PThreads, OpenMP, MPI-1, and MPI-2 (spawn). We measure the energy and execution time of 10 benchmarks, varying the number of threads. Our results show that although powersave consumes up to 43.1% less power than performance and ondemand governors, it consumes the triple of energy due to the high execution time. Our experiments also show that the performance governor consumes up to 9.8% more energy than ondemand for CPU-bound benchmarks. Finally, our results show that PThreads has the lowest power consumption, consuming less than the sequential version for memory-bound benchmarks. Regarding performance, the performance governor achieved 3% of performance over the ondemand.
- 30 September 2020
- Published by Springer Nature
- Vol. 12254, 142-157
The Impact of CPU Frequency Scaling on Power Consumption of Computing Infrastructures
Since the demand for computing power increases, new architectures emerged to obtain better performance. Reducing the power and energy consumption of these architectures is one of the main challenges to achieving high-performance computing. Current research trends aim at developing new software and hardware techniques to achieve the best performance and energy trade-offs. In this work, we investigate the impact of different CPU frequency scaling techniques such as ondemand, performance, and powersave on the power and energy consumption of multi-core based computer infrastructure. We apply these techniques in PAMPAR, a parallel benchmark suite implemented in PThreads, OpenMP, MPI-1, and MPI-2 (spawn). We measure the energy and execution time of 10 benchmarks, varying the number of threads. Our results show that although powersave consumes up to 43.1% less power than performance and ondemand governors, it consumes the triple of energy due to the high execution time. Our experiments also show that the performance governor consumes up to 9.8% more energy than ondemand for CPU-bound benchmarks. Finally, our results show that PThreads has the lowest power consumption, consuming less than the sequential version for memory-bound benchmarks. Regarding performance, the performance governor achieved 3% of performance over the ondemand.