In this paper, we present a fully-automatic, high-accuracy approach to predict access to persistent objects through static code analysis of object-oriented applications. The most widely-used previous technique uses a simple heuristic to make the predictions while approaches that offer higher accuracy are based on monitoring application execution. These approaches add a non-negligible overhead to the application’s execution time and/or consume a considerable amount of memory. By contrast, we demonstrate in our experimental study that our proposed approach offers better accuracy than the most common technique used to predict access to persistent objects, and makes the predictions farther in advance, without performing any analysis during appl...
Static analysis on source code or binary code retrieves information about a software program. In obj...
Persistency is vital to almost all software applications. Even the simplest application usually has ...
A key mechanism of a persistent programming language is its ability to detect and handle references ...
In this paper, we present a fully-automatic, high-accuracy approach to predict access to persistent ...
Data prefetching aims to improve access times to data storage systems by predicting data records tha...
Data prefetching has long been used as a technique to improve access times to persistent data. It is...
Today, most modern programming languages such as C # or Java use an automatic memory management syst...
This work presents an innovative system for analysing and predicting the runtime behaviour of object...
Method materialization is a promising data access optimization technique for multiple applications, ...
Dynamic storage allocation has become increasingly important in many applications, in part due to th...
Leveraging the power of scratchpad memories (SPMs) available in most embedded systems today is cruci...
Dynamic storage allocation has become increasingly important in many applications, in part due to th...
Persistent programming languages manage volatile memory as a cache for stable storage, imposing a re...
We report on a bulk object-loading algorithm for persistent object stores called Ghosted Allocation....
Dynamic storage allocation is used heavily in many application areas including interpreters, simulat...
Static analysis on source code or binary code retrieves information about a software program. In obj...
Persistency is vital to almost all software applications. Even the simplest application usually has ...
A key mechanism of a persistent programming language is its ability to detect and handle references ...
In this paper, we present a fully-automatic, high-accuracy approach to predict access to persistent ...
Data prefetching aims to improve access times to data storage systems by predicting data records tha...
Data prefetching has long been used as a technique to improve access times to persistent data. It is...
Today, most modern programming languages such as C # or Java use an automatic memory management syst...
This work presents an innovative system for analysing and predicting the runtime behaviour of object...
Method materialization is a promising data access optimization technique for multiple applications, ...
Dynamic storage allocation has become increasingly important in many applications, in part due to th...
Leveraging the power of scratchpad memories (SPMs) available in most embedded systems today is cruci...
Dynamic storage allocation has become increasingly important in many applications, in part due to th...
Persistent programming languages manage volatile memory as a cache for stable storage, imposing a re...
We report on a bulk object-loading algorithm for persistent object stores called Ghosted Allocation....
Dynamic storage allocation is used heavily in many application areas including interpreters, simulat...
Static analysis on source code or binary code retrieves information about a software program. In obj...
Persistency is vital to almost all software applications. Even the simplest application usually has ...
A key mechanism of a persistent programming language is its ability to detect and handle references ...