2025
|
Faé, Leonardo; Griebler, Dalvan Towards GPU Parallelism Abstractions in Rust: A Case Study with Linear Pipelines Inproceedings doi In: Anais do XXIX Simpósio Brasileiro de Linguagens de Programação, pp. 75-83, SBC, Recife/PE, 2025. @inproceedings{FAE:SBLP:25,
title = {Towards GPU Parallelism Abstractions in Rust: A Case Study with Linear Pipelines},
author = {Leonardo Faé and Dalvan Griebler},
url = {https://sol.sbc.org.br/index.php/sblp/article/view/36951/36736},
doi = {10.5753/sblp.2025.13152},
year = {2025},
date = {2025-09-01},
booktitle = {Anais do XXIX Simpósio Brasileiro de Linguagens de Programação},
pages = {75-83},
publisher = {SBC},
address = {Recife/PE},
series = {SBLP'25},
abstract = {Programming Graphics Processing Units (GPUs) for general-purpose computation remains a daunting task, often requiring specialized knowledge of low-level APIs like CUDA or OpenCL. While Rust has emerged as a modern, safe, and performant systems programming language, its adoption in the GPU computing domain is still nascent. Existing approaches often involve intricate compiler modifications or complex static analysis to adapt CPU-centric Rust code for GPU execution. This paper presents a novel high-level abstraction in Rust, leveraging procedural macros to automatically generate GPU-executable code from constrained Rust functions. Our approach simplifies the code generation process by imposing specific limitations on how these functions can be written, thereby avoiding the need for complex static analysis. We demonstrate the feasibility and effectiveness of our abstraction through a case study involving linear pipeline parallel patterns, a common structure in data-parallel applications. By transforming Rust functions annotated as source, stage, or sink in a pipeline, we enable straightforward execution on the GPU. We evaluate our abstraction's performance and programmability using two benchmark applications: sobel (image filtering) and latbol (fluid simulation), comparing it against manual OpenCL implementations. Our results indicate that while incurring a small performance overhead in some cases, our approach significantly reduces development effort and, in certain scenarios, achieves comparable or even superior throughput compared to CPU-based parallelism.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
Programming Graphics Processing Units (GPUs) for general-purpose computation remains a daunting task, often requiring specialized knowledge of low-level APIs like CUDA or OpenCL. While Rust has emerged as a modern, safe, and performant systems programming language, its adoption in the GPU computing domain is still nascent. Existing approaches often involve intricate compiler modifications or complex static analysis to adapt CPU-centric Rust code for GPU execution. This paper presents a novel high-level abstraction in Rust, leveraging procedural macros to automatically generate GPU-executable code from constrained Rust functions. Our approach simplifies the code generation process by imposing specific limitations on how these functions can be written, thereby avoiding the need for complex static analysis. We demonstrate the feasibility and effectiveness of our abstraction through a case study involving linear pipeline parallel patterns, a common structure in data-parallel applications. By transforming Rust functions annotated as source, stage, or sink in a pipeline, we enable straightforward execution on the GPU. We evaluate our abstraction's performance and programmability using two benchmark applications: sobel (image filtering) and latbol (fluid simulation), comparing it against manual OpenCL implementations. Our results indicate that while incurring a small performance overhead in some cases, our approach significantly reduces development effort and, in certain scenarios, achieves comparable or even superior throughput compared to CPU-based parallelism. |
Ahmad, Sunna I.; Araújo, Adriel S.; Teixeira, Vinicius C.; Gomes, Carlos F. A.; Dutra, Vinicius; Roederer, Quinn; Conley, R. Scott; Griebler, Dalvan; Pinho, Márcio S.; Turkkahraman, Hakan A Novel AI-driven Automated Orthodontic Model Analysis to Improve Classification of Orthodontic Extraction Cases Inproceedings doi In: 2025 IEEE 49th Annual Computers, Software, and Applications Conference (COMPSAC), pp. 1853-1860, IEEE, Toronto, Canada, 2025. @inproceedings{AHMAD:COMPSAC:25,
title = {A Novel AI-driven Automated Orthodontic Model Analysis to Improve Classification of Orthodontic Extraction Cases},
author = {Sunna I. Ahmad and Adriel S. Araújo and Vinicius C. Teixeira and Carlos F. A. Gomes and Vinicius Dutra and Quinn Roederer and R. Scott Conley and Dalvan Griebler and Márcio S. Pinho and Hakan Turkkahraman},
url = {https://doi.org/10.1109/COMPSAC65507.2025.00254},
doi = {10.1109/COMPSAC65507.2025.00254},
year = {2025},
date = {2025-07-01},
booktitle = {2025 IEEE 49th Annual Computers, Software, and Applications Conference (COMPSAC)},
pages = {1853-1860},
publisher = {IEEE},
address = {Toronto, Canada},
abstract = {Malocclusion, a prevalent dental condition worldwide, necessitates orthodontic intervention to correct tooth misalignment and improve oral health. Treatment can involve extraction of permanent teeth, depending on dental crowding, jaw relationships, and facial aesthetics. Today, clinical decision support systems have introduced machine learning (ML) to assist orthodontists in determining optimal treatment plans. This study explores the development of a novel, fully automated method for extracting dentoalveolar features from 3D intraoral scans (IOS), aiming to enhance orthodontic decision-making. Using deep learning-based IOS segmentation as basis, dental measurements were developed and utilized to train supervised ML classifiers, including support vector machines (SVM), logistic regression, decision trees, and random forests. An ensemble of SVM models demonstrated the highest accuracy (73%) in predicting extraction decisions, with these novel domain-specific features proving more informative than traditional dental arch measurements. While we can make further improvements not only in the automated segmentation but also by applying feature selection, the results highlight the potential of AI-driven analysis to streamline orthodontic workflows, reduce manual intervention and improve clinical efficiency.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
Malocclusion, a prevalent dental condition worldwide, necessitates orthodontic intervention to correct tooth misalignment and improve oral health. Treatment can involve extraction of permanent teeth, depending on dental crowding, jaw relationships, and facial aesthetics. Today, clinical decision support systems have introduced machine learning (ML) to assist orthodontists in determining optimal treatment plans. This study explores the development of a novel, fully automated method for extracting dentoalveolar features from 3D intraoral scans (IOS), aiming to enhance orthodontic decision-making. Using deep learning-based IOS segmentation as basis, dental measurements were developed and utilized to train supervised ML classifiers, including support vector machines (SVM), logistic regression, decision trees, and random forests. An ensemble of SVM models demonstrated the highest accuracy (73%) in predicting extraction decisions, with these novel domain-specific features proving more informative than traditional dental arch measurements. While we can make further improvements not only in the automated segmentation but also by applying feature selection, the results highlight the potential of AI-driven analysis to streamline orthodontic workflows, reduce manual intervention and improve clinical efficiency. |
Guder, Larissa; Aires, João Paulo; Manssour, Isabel H; Griebler, Dalvan GoViz: A Visualization Tool for Empowering Transparency in Government Speech Inproceedings doi In: Annual International Conference on Digital Government Research, pp. 954, Digital Government Society, Porto Alegre, Brasil, 2025. @inproceedings{GUDER:DGO:25,
title = {GoViz: A Visualization Tool for Empowering Transparency in Government Speech},
author = {Larissa Guder and João Paulo Aires and Isabel H Manssour and Dalvan Griebler},
url = {https://doi.org/10.59490/dgo.2025.954},
doi = {10.59490/dgo.2025.954},
year = {2025},
date = {2025-05-01},
booktitle = {Annual International Conference on Digital Government Research},
volume = {26},
pages = {954},
publisher = {Digital Government Society},
address = {Porto Alegre, Brasil},
abstract = {Public speech from government figures often describes relevant actions that can impact the population's lives. However, most people do not have time and access to analyze and understand public speech. Such a scenario narrows the participation of the people in the main discussions, which leads to multiple misunderstandings. In this work, we propose GoViz, a tool that automatically produces visual representations to outline governmental speeches regarding the subject, its main actors, and how they connect to the discussion topics. GoViz processes natural language from speech transcriptions in a pipeline that identifies part-of-speech elements, named-entities, and the relation between persons, making speech content more accessible and insightful. Using publicly available data, we evaluate our tool in two different languages (Portuguese and English). The results demonstrate that the visualizations from both data facilitate understanding the speech content. Thus, our main contribution is to encourage the participation of citizens in parliamentary issues, allowing a simplified and visually engaging avenue to access long speeches and fostering improved communication between parliamentarians and the population.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
Public speech from government figures often describes relevant actions that can impact the population's lives. However, most people do not have time and access to analyze and understand public speech. Such a scenario narrows the participation of the people in the main discussions, which leads to multiple misunderstandings. In this work, we propose GoViz, a tool that automatically produces visual representations to outline governmental speeches regarding the subject, its main actors, and how they connect to the discussion topics. GoViz processes natural language from speech transcriptions in a pipeline that identifies part-of-speech elements, named-entities, and the relation between persons, making speech content more accessible and insightful. Using publicly available data, we evaluate our tool in two different languages (Portuguese and English). The results demonstrate that the visualizations from both data facilitate understanding the speech content. Thus, our main contribution is to encourage the participation of citizens in parliamentary issues, allowing a simplified and visually engaging avenue to access long speeches and fostering improved communication between parliamentarians and the population. |
Czarnul, Paweł; Antal, Marcel; Baniata, Hamza; Griebler, Dalvan; Kertesz, Attila; Kessler, Christoph W.; Kouloumpris, Andreas; Kovačić, Salko; Markus, Andras; Michael, Maria K.; Nikolaou, Panagiota; Öz, Isil; Prodan, Radu; Rakić, Gordana Optimization of resource-aware parallel and distributed computing: a review Journal Article doi In: The Journal of Supercomputing, vol. 81, no. 7, pp. 848, 2025. @article{CZARNUL:Supercomputing:25,
title = {Optimization of resource-aware parallel and distributed computing: a review},
author = {Paweł Czarnul and Marcel Antal and Hamza Baniata and Dalvan Griebler and Attila Kertesz and Christoph W. Kessler and Andreas Kouloumpris and Salko Kovačić and Andras Markus and Maria K. Michael and Panagiota Nikolaou and Isil Öz and Radu Prodan and Gordana Rakić},
url = {https://doi.org/10.1007/s11227-025-07295-7},
doi = {10.1007/s11227-025-07295-7},
year = {2025},
date = {2025-05-01},
urldate = {2025-05-01},
journal = {The Journal of Supercomputing},
volume = {81},
number = {7},
pages = {848},
publisher = {Springer},
abstract = {This paper presents a review of state-of-the-art solutions concerning the optimization of computing in the field of parallel and distributed systems. Firstly, we contribute by identifying resources and quality metrics in this context including servers, network interconnects, storage systems, computational devices as well as execution time/performance, energy, security, and error vulnerability, respectively. We subsequently identify commonly used problem formulations and algorithms for integer linear programming, greedy algorithms, dynamic programming, genetic algorithms, particle swarm optimization, ant colony optimization, game theory, and reinforcement learning. Afterward, we characterize frequently considered optimization problems by stating these terms in domains such as data centers, cloud, fog, blockchain, high performance, and volunteer computing. Based on the extensive analysis, we identify how particular resources and corresponding quality metrics are considered in these domains and which problem formulations are used for which system types, either parallel or distributed environments. This allows us to formulate open research problems and challenges in this field and analyze research interest in problem formulations/domains in recent years.},
keywords = {},
pubstate = {published},
tppubtype = {article}
}
This paper presents a review of state-of-the-art solutions concerning the optimization of computing in the field of parallel and distributed systems. Firstly, we contribute by identifying resources and quality metrics in this context including servers, network interconnects, storage systems, computational devices as well as execution time/performance, energy, security, and error vulnerability, respectively. We subsequently identify commonly used problem formulations and algorithms for integer linear programming, greedy algorithms, dynamic programming, genetic algorithms, particle swarm optimization, ant colony optimization, game theory, and reinforcement learning. Afterward, we characterize frequently considered optimization problems by stating these terms in domains such as data centers, cloud, fog, blockchain, high performance, and volunteer computing. Based on the extensive analysis, we identify how particular resources and corresponding quality metrics are considered in these domains and which problem formulations are used for which system types, either parallel or distributed environments. This allows us to formulate open research problems and challenges in this field and analyze research interest in problem formulations/domains in recent years. |
Martins, Eduardo M.; Griebler, Dalvan Proposta de Tolerância a Falhas Baseada em Log para Paralelismo de Stream Inproceedings doi In: Escola Regional de Alto Desempenho (ERAD-RS), pp. 129-130, Sociedade Brasileira de Computação (SBC), Foz do Iguaçu, PR, BR, 2025. @inproceedings{MARTINS:ERAD:25,
title = {Proposta de Tolerância a Falhas Baseada em Log para Paralelismo de Stream},
author = {Eduardo M. Martins and Dalvan Griebler},
url = {https://doi.org/10.5753/eradrs.2025.6505},
doi = {10.5753/eradrs.2025.6505},
year = {2025},
date = {2025-04-01},
booktitle = {Escola Regional de Alto Desempenho (ERAD-RS)},
pages = {129-130},
publisher = {Sociedade Brasileira de Computação (SBC)},
address = {Foz do Iguaçu, PR, BR},
abstract = {Sistemas de processamento de stream precisam ser capazes de lidar com grandes volumes de dados e por tempo indeterminado. A necessidade de analises em tempo real tornam o paralelismo e mecanismos de tolerância a falhas essenciais nesse contexto. Nesta pesquisa propomos implementar suporte à um protocolo de tolerância a falhas baseado em log em uma biblioteca para processamento de stream de alto nível para C++.},
keywords = {},
pubstate = {published},
tppubtype = {inproceedings}
}
Sistemas de processamento de stream precisam ser capazes de lidar com grandes volumes de dados e por tempo indeterminado. A necessidade de analises em tempo real tornam o paralelismo e mecanismos de tolerância a falhas essenciais nesse contexto. Nesta pesquisa propomos implementar suporte à um protocolo de tolerância a falhas baseado em log em uma biblioteca para processamento de stream de alto nível para C++. |