Cookies Policy
We use cookies to improve our site and your experience. By continuing to browse our site you accept our cookie policy. Find out More
Close
  • Menu
About

About

I'm currently enrolled in a doctoral program in Informatics Engineering at the Faculty of Engineering of the University of Porto. At the end of 2012, I obtained my MSc from the same institution.

Since graduating, I have been involved in several research projects in the area of compilers, including source-to-source compilation and the specification of strategies to identify program faults or to instrument the code for profiling. My main research interests include source-to-source compilation, application analysis as well as optimizations and code transformations. Finally, my interests also include broader topics such as programming languages, high-performance computing and machine learning.

Between 2015 and 2018 I was a researcher in the University of Porto's team in the European H2020 project ANTAREX, where my main responsibilities include the development of a source-to-source compiler and the development of strategies to enhance applications with runtime adaptivity.

Interest
Topics
Details

Details

  • Name

    Pedro Miguel Pinto
  • Cluster

    Computer Science
  • Role

    Research Assistant
  • Since

    01st November 2018
Publications

2018

Aspect composition for multiple target languages using LARA

Authors
Pinto, P; Carvalho, T; Bispo, J; Ramalho, MA; Cardoso, JMP;

Publication
Computer Languages, Systems and Structures

Abstract
Usually, Aspect-Oriented Programming (AOP) languages are an extension of a specific target programming language (e.g., AspectJ for JAVA and AspectC++ for C++). Although providing AOP support with target language extensions may ease the adoption of an approach, it may impose constraints related with constructs and semantics. Furthermore, by tightly coupling the AOP language to the target language the reuse potential of many aspects, especially the ones regarding non-functional requirements, is lost. LARA is a domain-specific language inspired by AOP concepts, having the specification of source-to-source transformations as one of its main goals. LARA has been designed to be, as much as possible, independent of the target language and to provide constructs and semantics that ease the definition of concerns, especially related to non-functional requirements. In this paper, we propose techniques to overcome some of the challenges presented by a multilanguage approach to AOP of cross-cutting concerns focused on non-functional requirements and applied through the use of a weaving process. The techniques mainly focus on providing well-defined library interfaces that can have concrete implementations for each supported target language. The developer uses an agnostic interface and the weaver provides a specific implementation for the target language. We evaluate our approach using 8 concerns with varying levels of language agnosticism that support 4 target languages (C, C++, JAVA and MATLAB) and show that the proposed techniques contribute to more concise LARA aspects, high reuse of aspects, and to significant effort reductions when developing weavers for new imperative, object-oriented programming languages. © 2018 Elsevier Ltd

2018

SOCRATES - A seamless online compiler and system runtime autotuning framework for energy-aware applications

Authors
Gadioli, D; Nobre, R; Pinto, P; Vitali, E; Ashouri, AH; Palermo, G; Cardoso, JMP; Silvano, C;

Publication
2018 Design, Automation & Test in Europe Conference & Exhibition, DATE 2018, Dresden, Germany, March 19-23, 2018

Abstract

2018

Autotuning and adaptivity in energy efficient HPC systems: the ANTAREX toolbox

Authors
Silvano, C; Palermo, G; Agosta, G; Ashouri, AH; Gadioli, D; Cherubin, S; Vitali, E; Benini, L; Bartolini, A; Cesarini, D; Cardoso, J; Bispo, J; Pinto, P; Nobre, R; Rohou, E; Besnard, L; Lasri, I; Sanna, N; Cavazzoni, C; Cmar, R; Martinovic, J; Slaninova, K; Golasowski, M; Beccari, AR; Manelfi, C;

Publication
Proceedings of the 15th ACM International Conference on Computing Frontiers, CF 2018, Ischia, Italy, May 08-10, 2018

Abstract
Designing and optimizing applications for energy-efficient High Performance Computing systems up to the Exascale era is an extremely challenging problem. This paper presents the toolbox developed in the ANTAREX European project for autotuning and adaptivity in energy efficient HPC systems. In particular, the modules of the ANTAREX toolbox are described as well as some preliminary results of the application to two target use cases. © 2018 Association for Computing Machinery.

2018

ANTAREX: A DSL-Based Approach to Adaptively Optimizing and Enforcing Extra-Functional Properties in High Performance Computing

Authors
Silvano, C; Agosta, G; Bartolini, A; Beccari, AR; Benini, L; Besnard, L; Bispo, J; Cmar, R; Cardoso, JMP; Cavazzoni, C; Cherubin, S; Gadioli, D; Golasowski, M; Lasri, I; Martinovic, J; Palermo, G; Pinto, P; Rohou, E; Sanna, N; Slaninová, K; Vitali, E;

Publication
21st Euromicro Conference on Digital System Design, DSD 2018, Prague, Czech Republic, August 29-31, 2018

Abstract
The ANTAREX project relies on a Domain Specific Language (DSL) based on Aspect Oriented Programming (AOP) concepts to allow applications to enforce extra functional properties such as energy-efficiency and performance and to optimize Quality of Service (QoS) in an adaptive way. The DSL approach allows the definition of energy-efficiency, performance, and adaptivity strategies as well as their enforcement at runtime through application autotuning and resource and power management. In this paper, we present an overview of the ANTAREX DSL and some of its capabilities through a number of examples, including how the DSL is applied in the context of one of the project use cases. © 2018 IEEE.