Cookies Policy
The website need some cookies and similar means to function. If you permit us, we will use those means to collect data on your visits for aggregated statistics to improve our service. Find out More
Accept Reject
  • Menu
About
Download Photo HD

About

I'm a post-doctoral researcher at the SPeCS lab in the Faculty of Engineering, University of Porto. My area of expertise is source-to-source compilers and code generation, and I have done work both in high-level languages, such as MATLAB and C++, and low-level languages, such as assembly and VHDL.

From 2012 to 2015, my main line of research was MATLAB to C compilation, and I was the creator and main developer of the tool MATISSE (specs.fe.up.pt/tools/matisse). Currently I am working on Clava (specs.fe.up.pt/tools/clava), a C++ source-to-source transformation tool based on Clang, as part of the H2020 project ANTAREX (antarex-project.eu) which focus on strategies for autotunning and energy efficiency in HPC.

Previous work includes translation of Perl-Compatible Regular Expressions (PCRE) to HDL, and automatic runtime migration of loops found in MicroBlaze assembly traces to customized hardware (the subject of the PhD thesis).

I've received a Bachelor's degree in Computer Systems and Informatics from the Univ. of Algarve in July 2006, and in July 2012 received the Ph.D. degree from Instituto Superior Técnico (IST), Lisbon, with the thesis “Mapping Runtime-Detected Loops from Microprocessors to Reconfigurable Processing Units”.

Interest
Topics
Details

Details

Publications

2022

Pegasus: Performance Engineering for Software Applications Targeting HPC Systems

Authors
Pinto, P; Bispo, J; Cardoso, J; Barbosa, JG; Gadioli, D; Palermo, G; Martinovic, J; Golasowski, M; Slaninova, K; Cmar, R; Silvano, C;

Publication
IEEE Transactions on Software Engineering

Abstract
Developing and optimizing software applications for high performance and energy efficiency is a very challenging task, even when considering a single target machine. For instance, optimizing for multicore-based computing systems requires in-depth knowledge about programming languages, application programming interfaces, compilers, performance tuning tools, and computer architecture and organization. Many of the tasks of performance engineering methodologies require manual efforts and the use of different tools not always part of an integrated toolchain. This paper presents Pegasus, a performance engineering approach supported by a framework that consists of a source-to-source compiler, controlled and guided by strategies programmed in a Domain-Specific Language, and an autotuner. Pegasus is a holistic and versatile approach spanning various decision layers composing the software stack, and exploiting the system capabilities and workloads effectively through the use of runtime autotuning. The Pegasus approach helps developers by automating tasks regarding the efficient implementation of software applications in multicore computing systems. These tasks focus on application analysis, profiling, code transformations, and the integration of runtime autotuning. Pegasus allows developers to program their strategies or to automatically apply existing strategies to software applications in order to ensure the compliance of non-functional requirements, such as performance and energy efficiency. We show how to apply Pegasus and demonstrate its applicability and effectiveness in a complex case study, which includes tasks from a smart navigation system. IEEE

2021

A Binary Translation Framework for Automated Hardware Generation

Authors
Paulino, N; Bispo, J; Ferreira, JC; Cardoso, JMP;

Publication
IEEE Micro

Abstract

2021

Multi-language static code analysis on the LARA framework

Authors
Teixeira, G; Bispo, J; Correia, FF;

Publication
Proceedings of the 10th ACM SIGPLAN International Workshop on the State Of the Art in Program Analysis

Abstract

2021

On the Performance Effect of Loop Trace Window Size on Scheduling for Configurable Coarse Grain Loop Accelerators

Authors
Santos, T; Paulino, N; Bispo, J; Cardoso, JMP; Ferreira, JC;

Publication
International Conference on Field-Programmable Technology, (IC)FPT 2021, Auckland, New Zealand, December 6-10, 2021

Abstract

2021

FPGAs as General-Purpose Accelerators for Non-Experts via HLS: The Graph Analysis Example

Authors
Silva, PF; Bispo, J; Paulino, N;

Publication
International Conference on Field-Programmable Technology, (IC)FPT 2021, Auckland, New Zealand, December 6-10, 2021

Abstract

Supervised
thesis

2021

An Exploration of FPGAs as Accelerators for Graph Analysis via High-Level Synthesis

Author
Pedro Filipe Vilhena de Campos Oliveira e Silva

Institution
UP-FEUP

2021

Automatic Service Containerization with Docker

Author
João Carlos Cardoso Maduro

Institution
UP-FEUP

2021

Fully asynchronous Java APIs for web applications

Author
Daniel Pereira da Silva

Institution
UP-FEUP

2021

Multi-Language Software Metrics

Author
Gil Dinis Magalhães Teixeira

Institution
UP-FEUP

2021

On the Lookout for Malware in Browser Extensions

Author
Bernardo Manuel Costa Barbosa

Institution
UP-FEUP