Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

José Simão

dblp:91/10350 · DBLP profile ↗
← Back
14ranked-venue papers
7as first author
4since 2021 · last 2026
0000-0002-6564-593XORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 8 · 4 first-author · 2 since 2021Software engineering, systems software and programming languages · 1Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
1 paper
Operating systems · 100%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Cloud and datacenter computing · 100%

Topics — the 3 heaviest of 3, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Operating systems › resource management
memory management
0.412019
Runtime Object Lifetime Profiler for Latency Sensitive Big Data Applications · EuroSys 2019
Cloud and datacenter computing
big data platform
0.112019
Runtime Object Lifetime Profiler for Latency Sensitive Big Data Applications · EuroSys 2019
Cloud and datacenter computing
latency-critical applications
0.112019
Runtime Object Lifetime Profiler for Latency Sensitive Big Data Applications · EuroSys 2019

Methods — techniques the papers use, named apart from their topics

profiling · 0.8memory fragmentation analysis · 0.8
YearPublicationVenuePosition
2026 A function-as-a-service middleware for decentralized collaborative edge computing
abstract
• FaaS@Edge is a decentralized Function-as-a-Service framework that leverages volunteer computing resources at the network edge, by combining Apache OpenWhisk and IPFS technologies. • The system achieves robust operational reliability across both function submissions and invocations while efficiently managing distributed edge node resources. • While introducing some initial submission overhead, the system maintains competitive execution speeds compared to local deployments and demonstrates efficient bandwidth usage that scales well with increasing nodes, also validated in scenarios with variable network conditions, and on actual edge devices. • The framework implements a flexible prosumer model where edge nodes can simultaneously provide and consume resources, enabling effective operation within edge device constraints. Function-as-a-Service (FaaS) emerges as a sophisticated cloud computing paradigm critically suited to processing the exponentially increasing data volumes generated by Internet of Things (IoT) infrastructures. Deploying computational models proximal to data generation sources addresses critical latency and bandwidth constraints inherent in edge-distributed applications. Edge computing environments present complex architectural challenges characterized by large-scale decentralized infrastructures and resource-constrained devices, which substantially impede contemporary Function-as-a-Service implementation strategies. This research introduces FaaS@Edge, a novel framework that leverages volunteered edge node resources discovered through the InterPlanetary File System (IPFS) network and deployed via Apache OpenWhisk. The proposed system addresses computational resource distribution challenges by enabling FaaS runtime deployments across heterogeneous edge infrastructure. Comprehensive experimental evaluation shows that FaaS@Edge introduces marginal latency during function submission while maintaining performance comparable to local OpenWhisk implementations. Empirical results demonstrate request success rates that approximate 98 % for function submission and invocation processes. These findings shows FaaS@Edge’s potential as an efficient computational model for edge computing environments, characterized by low-latency performance and optimized resource allocation.
Catarina Gonçalves, José Simão, Luís Veiga
Future Gener. Comput. Syst.2
2024 Understanding Portuguese Users of Parcel Locker Services
abstract
The rise of e-commerce, greatly accelerated by the COVID-19 pandemic, has created a need for more efficient and dependable delivery methods. As a result, alternative delivery points, such as parcel lockers, are being explored as effective solutions for distributing e-commerce products. Examining the social context, distribution, and density of parcel lockers is crucial in highlighting their importance. Previous research has identified the factors that influence the selection of delivery locations, assessed environmental risks and compared delivery methods. This study confidently analyses locker usage patterns, by studying 750 lockers and more than 200,000 parcels, as well as load and turnover rates, by delving into the demographic characteristics of Portuguese parishes, focusing on age, education, and employment status. Real-world data from a prominent Portuguese parcel locker provider reveals that education and employment status significantly impact the selection of parcel locker locations.
Matilde Pato, António Serrador, Rogério Campos-Rebelo, Nuno Datia, José Simão, Pedro Sampaio 0002
IV6
2021 RATEE - Resource Auction Trading at Edge Environments
abstract
Cloud providers host compute and storage resources used by multiple services. To be able to provide these services to millions of people with great reliability, large data centers are needed. However, some limitations of this centralized model are well known, such as bandwidth, because data has to be transferred from edge devices, and also latency, due to the distance between those data centers and personal devices. To overcome this, Edge Computing promotes computations or other types of operations on devices closer to users' personal devices. These devices have less power than data-centers but provide a shorter delay and as they are closer to end-users, data is immediately processed. Resources of these edge devices have the potential do host applications due to being underutilized. These applications can be allocated in various ways, voluntarily, or by exchange. This work focus on the trading process leading to the allocation of resources to an application. An auction-based trading algorithm is proposed, using an open-cry approach (i.e. all users knows the bids of others) and double side (i.e. buyers and sellers can bid and ask to a given item). The algorithm was implemented in a P2P overlay network and the Kademlia DHT. Results show a high success match rate, meaning all buyers found their respective sellers and vice-versa. Also, the memory consumption doesn't grow with the number of nodes that exist in the overlay.
Diogo Paulo Dias, José Simão, Luís Veiga
NCA2
2021 Distributed and Decentralized Orchestration of Containers on Edge Clouds
André Pires, José Simão, Luís Veiga
J. Grid Comput.2
2020 Programming languages for data-Intensive HPC applications: A systematic mapping study
Vasco Amaral 0001, Beatriz Norberto, Miguel Goulão, Marco Aldinucci, Siegfried Benkner, Andrea Bracciali, Paulo Carreira 0001, Edgars Celms, Luís Correia 0001, Clemens Grelck, Helen D. Karatza, Christoph W. Kessler, Peter Kilpatrick, Hugo F. M. C. Martiniano, Ilias Mavridis, Sabri Pllana, Ana Respício, José Simão, Luís Veiga, Ari Visa
Parallel Comput.18
2019 Runtime Object Lifetime Profiler for Latency Sensitive Big Data Applications
abstract
Latency sensitive services such as credit-card fraud detection and website targeted advertisement rely on Big Data platforms which run on top of memory managed runtimes, such as the Java Virtual Machine (JVM). These platforms, however, suffer from unpredictable and unacceptably high pause times due to inadequate memory management decisions (e.g., allocating objects with very different lifetimes next to each other, resulting in severe memory fragmentation). This leads to frequent and long application pause times, breaking Service Level Agreements (SLAs). This problem has been previously identified, and results show that current memory management techniques are ill-suited for applications that hold in memory massive amounts of long-lived objects (which is the case for a wide spectrum of Big Data applications).
Rodrigo Bruno, Duarte Patrício, José Simão, Luís Veiga, Paulo Ferreira 0001
EuroSys3
2019 GC-Wise: A Self-adaptive approach for memory-performance efficiency in Java VMs
José Simão, Sérgio Esteves, André Pires, Luís Veiga
Future Gener. Comput. Syst.1
2016 Partial Utility-Driven Scheduling for Flexible SLA and Pricing Arbitration in Clouds
abstract
Cloud SLAs compensate customers with credits when average availability drops below certain levels. This is too inflexible because consumers lose non-measurable amounts of performance being only compensated later, in next charging cycles. We propose to schedule virtual machines (VMs), driven by range-based non-linear reductions of utility, different for classes of users and across different ranges of resource allocations: partial utility. This customer-defined metric, allows providers transferring resources between VMs in meaningful and economically efficient ways. We define a comprehensive cost model incorporating partial utility given by clients to a certain level of degradation, when VMs are allocated in overcommitted environments (Public, Private, Community Clouds). CloudSim was extended to support our scheduling model. Several simulation scenarios with synthetic and real workloads are presented, using datacenters with different dimensions regarding the number of servers and computational capacity. We show the partial utility-driven driven scheduling allows more VMs to be allocated. It brings benefits to providers, regarding revenue and resource utilization, allowing for more revenue per resource allocated and scaling well with the size of datacenters when comparing with an utility-oblivious redistribution of resources. Regarding clients, their workloads' execution time is also improved, by incorporating an SLA-based redistribution of their VM's computational power.
José Simão, Luís Veiga
IEEE Trans. Cloud Comput.1
2013 Resource-Aware Scaling of Multi-threaded Java Applications in Multi-tenancy Scenarios
abstract
Cloud platforms are becoming more prevalent in every computational domain, particularly in e-Science. A typical scientific workload will have a long execution time or be data intensive. Providing an execution environment for these applications, which belong to different tenants, has to deal with the horizontal scaling of execution flows (i.e. threads) and an effective allocation of resources that takes into account the effective progress made by each tenant. While this is trivial for Bag-of-Tasks and embarrassingly parallel jobs, it is hard for HPC single-process multi-threaded applications because they cannot be scaled up automatically just by adding more virtual machines to execute the workload. In this paper we present MengTian, a distributed execution environment or platform capable of addressing the issues above. It encompasses several extensions to the Java execution environment, ranging from middleware to the virtual machine code and libraries. Our Java-based platform provides a Single System Image abstraction supported by a Partially Global Address Space to transparently spawn threads across a cluster of machines. It monitors progress with different levels-of-detail and accounts and restricts resource consumption. The overall goal is to redistribute resources among different JVM instances, increasing the unitary outcome of the progress vs. resource usage ratio over time.
José Simão, Navaneeth Rameshan, Luís Veiga
CloudCom (1)1
2013 A Comparative Look at Adaptive Memory Management in Virtual Machines
abstract
Memory management plays a vital role in modern virtual machines. Both system- and language-level VMs manage memory to give the illusion of a unbounded allocation space although the underlying physical resources are limited. One of the main challenges for memory management is the range of dynamic characteristics of the workloads. Researchers have developed a large body of work using different mechanisms and dynamic decision making to specialize the memory management system to specific workloads. This design can be considered as a control loop where sensors are monitored, decisions are made and actions are performed by actuators. Nevertheless as is common in systems research, improvement in one property is accomplished at the expense of some other property. In this work we survey different techniques for adaptive memory management expressed as a control loop. We propose to analyse memory management in virtual machines using three seemingly orthogonal characteristics: responsiveness (R), comprehensiveness (C) and intricateness (I). We then present the details of an extensible classification framework which emphasizes the tradeoffs of different approaches. Using this framework, some representative state of the art systems are evaluated showing inherent tensions between R, C and I.
José Simão, Jeremy Singer, Luís Veiga
CloudCom (1)1
2013 Flexible SLAs in the Cloud with a Partial Utility-Driven Scheduling Architecture
abstract
Current clouds SLAs include compensation for customers (i.e. resource renters) with credits when average availability drops below a certain point. However, this credit scheme is too inflexible because consumers lose a non measurable quantity of performance and are only compensated later (i.e. in the next charging cycle). We propose to schedule cloud isolation and execution units, i.e. virtual machines (VMs), driven by the partial utility of applying a certain amount of resources (CPU, memory or bandwidth) to a given VM. This partial utility metric, specified by the customer, allows the provider to transfer resources between VMs. This is particularly relevant for private clouds where resources are not so abundant. We have defined a cost model that incorporates the partial utility the client gives to a certain level of depreciation when VMs are allocated in an over commit environment. CloudSim, a state of the art cloud simulator, was extended to support our partial utility-driven scheduling model. Using simulation scenarios with synthetic and real workloads, we show that our proposed scheduling strategy brings benefits to providers (i.e. revenue, resource utilization) and clients (i.e. workloads' execution time) by incorporating a SLA-based depreciation of computational power, allowing for more VMs to be allocated.
José Simão, Luís Veiga
CloudCom (1)1
2013 Ditto - Deterministic Execution Replayability-as-a-Service for Java VM on Multiprocessors
João M. Silva, José Simão, Luís Veiga
Middleware2
2012 VM Economics for Java Cloud Computing: An Adaptive and Resource-Aware Java Runtime with Quality-of-Execution
abstract
Resource management in Cloud Computing has been dominated by system-level virtual machines to enable the management of resources using a coarse grained approach, largely in a manner independent from the applications running on these infrastructures. However, in such environments, although different types of applications can be running, the resources are delivered equally to each one, missing the opportunity to manage the available resources in a more efficient and application driven way. So, as more applications target managed runtimes, high level virtualization is a relevant abstraction layer that has not been properly explored to enhance resource usage, control, and effectiveness. We propose a VM economics model to manage cloud infrastructures, governed by a quality-of-execution (QoE) metric and implemented by an extended virtual machine. The Adaptive and Resource-Aware Java Virtual Machine (ARA-JVM) is a cluster-enabled virtual execution environment with the ability to monitor base mechanisms (e.g. thread cheduling, garbage collection, memory or network consumptions) to assess application's performance and reconfigure these mechanisms in runtime according to previously defined resource allocation policies. Reconfiguration is driven by incremental gains in quality-of-execution (QoE), used by the VM economics model to balance relative resource savings and perceived performance degradation. Our work in progress, aims to allow cloud providers to exchange resource slices among virtual machines, continually addressing where those resources are required, while being able to determine where the reduction will be more economically effective, i.e., will contribute in lesser extent to performance degradation.
José Simão, Luís Veiga
CCGRID1
2012 A checkpointing-enabled and resource-aware Java Virtual Machine for efficient and robust e-Science applications in grid environments
abstract
SUMMARY Object‐oriented programming languages presently are the dominant paradigm of application development (e.g., Java, .NET). Lately, increasingly more Java applications have long (or very long) execution times and manipulate large amounts of data/information, gaining relevance in fields related with e‐Science (with Grid and Cloud computing). Significant examples include Chemistry, Computational Biology and Bio‐informatics, with many available Java‐based APIs (e.g., Neobio). Often, when the execution of such an application is terminated abruptly because of a failure (regardless of the cause being a hardware of software fault, lack of available resources, etc.), all of its work already performed is simply lost, and when the application is later re‐initiated, it has to restart all its work from scratch, wasting resources and time, while also being prone to another failure and may delay its completion with no deadline guarantees. Our proposed solution to address these issues is through incorporating mechanisms for checkpointing and migration in a JVM. These make applications more robust and flexible by being able to move to other nodes, without any intervention from the programmer. This article provides a solution to Java applications with long execution times, by extending a JVM (Jikes research virtual machine) with such mechanisms. Copyright © 2011 John Wiley & Sons, Ltd.
José Simão, Tiago Garrochinho, Luís Veiga
Concurr. Comput. Pract. Exp.1