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

João P. Cachopo

dblp:47/2798 · DBLP profile ↗
← Back
17ranked-venue papers
2as first author
0since 2021 · last 2016
0000-0002-7290-0417ORCID · reported

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

Systems, architecture and hardware · 10Software engineering, systems software and programming languages · 3 · 2 first-authorDatabases, data management, data science and information retrieval · 3 · 1 first-authorArtificial intelligence and machine learning · 2Applied, interdisciplinary, general and emerging computing · 1

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
2 papers
Concurrent programming · 64% Runtime systems and virtual machines · 36%
Computer architecture, parallel and distributed computing, and storage systems
2 papers
High-performance computing · 57% Storage systems · 43%

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

TopicWeightPapersLastEvidence papers
Concurrent programming
transactional memory
0.212013
Runtime elision of transactional barriers for captured memory · PPoPP 2013
Concurrent programming › transactional memory
software transactional memory
0.112011
Lock-free and scalable multi-version software transactional memory · PPoPP 2011
High-performance computing
performance optimization
0.012013
Runtime elision of transactional barriers for captured memory · PPoPP 2013
Storage systems › flash and SSD › flash memory management
garbage collection
0.012011
Lock-free and scalable multi-version software transactional memory · PPoPP 2011

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

runtime elision · 0.3captured memory identification · 0.3lock-free commit · 0.2garbage collection · 0.2
YearPublicationVenuePosition
2016 Design of a Method-Level Speculation framework for boosting irregular JVM applications
Ivo Anjo, João P. Cachopo
J. Parallel Distributed Comput.2
2016 Optimizing memory transactions for large-scale programs
Fernando Miguel Carvalho, João P. Cachopo
J. Parallel Distributed Comput.2
2015 Adaptive transaction scheduling for mixed transactional workloads
Hugo Rito, João P. Cachopo
Parallel Comput.2
2014 ProPS: A Progressively Pessimistic Scheduler for Software Transactional Memory
Hugo Rito, João P. Cachopo
Euro-Par2
2013 Exploring Data Locality for Clustered Enterprise Applications
Stoyan Garbatov, João P. Cachopo
DEXA (1)2
2013 Improving Continuation-Powered Method-Level Speculation for JVM Applications
Ivo Anjo, João P. Cachopo
ICA3PP (1)2
2013 Lightweight Identification of Captured Memory for Software Transactional Memory
Fernando Miguel Carvalho, João P. Cachopo
ICA3PP (1)2
2013 Runtime elision of transactional barriers for captured memory
abstract
In this paper, we propose a new technique that can identify transaction-local memory (i.e. captured memory), in managed environments, while having a low runtime overhead. We implemented our proposal in a well known STM framework (Deuce) and we tested it in STMBench7 with two different STMs: TL2 and LSA. In both STMs the performance improved significantly (4 times and 2.6 times, respectively). Moreover, running the STAMP benchmarks with our approach shows improvements of 7 times in the best case for the Vacation application.
Fernando Miguel Carvalho, João P. Cachopo
PPoPP2
2013 Practical Parallel Nesting for Software Transactional Memory
Nuno Diegues, João P. Cachopo
DISC2
2012 Decreasing Memory Footprints for Better Enterprise Java Application Performance
Stoyan Garbatov, João P. Cachopo
DEXA (1)2
2011 Lightweight Transactional Arrays for Read-Dominated Workloads
Ivo Anjo, João P. Cachopo
ICA3PP (2)2
2011 STM with Transparent API Considered Harmful
Fernando Miguel Carvalho, João P. Cachopo
ICA3PP (1)2
2011 Lock-free and scalable multi-version software transactional memory
abstract
Software Transactional Memory (STM) was initially proposed as a lock-free mechanism for concurrency control. Early implementations had efficiency limitations, and soon obstruction-free proposals appeared, to tackle this problem, often simplifying STM implementation. Today, most of the modern and top-performing STMs use blocking designs, relying on locks to ensure an atomic commit operation. This approach has revealed better in practice, in part due to its simplicity. Yet, it may have scalability problems when we move into many-core computers, requiring fine-tuning and careful programming to avoid contention. In this paper we present and discuss the modifications we made to a lock-based multi-version STM in Java, to turn it into a lock-free implementation that we have tested to scale at least up to 192 cores, and which provides results that compete with, and sometimes exceed, some of today's top-performing lock-based implementations. The new lock-free commit algorithm allows write transactions to proceed in parallel, by allowing them to run their validation phase independently of each other, and by resorting to helping from threads that would otherwise be waiting to commit, during the write-back phase. We also present a new garbage collection algorithm to dispose of old unused object versions that allows for asynchronous identification of unnecessary versions, which minimizes its interference with the rest of the transactional system.
Sergio Miguel Fernandes, João P. Cachopo
PPoPP2
2010 Predicting Data Access Patterns in Object-Oriented Applications Based on Markov Chains
abstract
This work aims to create an innovative system for analyzing and predicting the behaviour of object-oriented applications, with respect to the domain objects they manipulate, based on Markov Chains. The results are validated by the execution of the TPC-W and oo7 benchmarks. The oo7 benchmark has been modelled as a stochastic process through Monte Carlo simulations. The system is sufficiently flexible to be applied to a broad spectrum of object-oriented applications. The results are precise, regarding the observed behaviour, and the overheads introduced by the data acquisition are low.
Stoyan Garbatov, João P. Cachopo
ICSEA2
2006 Combining software transactional memory with a domain modeling language to simplify web application development
abstract
Current best practices on web application development build on a plethora of design patterns, frameworks, and tools to support commontasks such as handling requests from the user and persisting domain entities: Even the simplest web applications need suchthings. Thus, web application developers are forced to learn anenormous amount of technology before they can start being productivein the development process.This paper proposes a simpler approach to the development of web applications, based on the combination of two elements. First, the use of Software Transactional Memory to bring the transactionsemantics into the programming language level. Second, we propose an object-oriented Domain Modeling Language to specify the domain model.This domain model is transformed into classes that haveinterfaces that an object-oriented programmer would expect, but the objects of these classes are transparently transactional andpersistent.This approach significantly reduces both the effort and the errorsmade during the development of new applications. Rather thandealing with multiple configuration files and tools, which have norelation to the domain problem, programmers can concentrate exclusively on an object-oriented model of the problem they want to solve. By using this approach, we can delay, or completely avoid,the commitment to a particular technology.
João P. Cachopo, António Manuel Ferreira Rito da Silva
ICWE1
2006 Versioned boxes as the basis for memory transactions
João P. Cachopo, António Manuel Ferreira Rito da Silva
Sci. Comput. Program.1
2004 Supporting Evolution in Workflow Definition Languages
Sergio Miguel Fernandes, João P. Cachopo, António Manuel Ferreira Rito da Silva
SOFSEM2