论文标题

CAPRE:基于代码分析的持久对象存储的预取

CAPre: Code-Analysis based Prefetching for Persistent Object Stores

论文作者

Touma, Rizkallah, Queralt, Anna, Cortes, Toni

论文摘要

数据预取的旨在通过预测可能通过随后的请求访问的数据记录来改善对数据存储系统的访问时间,并在需要之前将其检索到内存缓存中。在持续的对象存储的情况下,先前预取的方法是基于通过分析商店模式的预测来进行的预测,该模式在执行应用程序时会生成严格的预测或监视对商店的访问模式,从而导致内存和/或计算介绍开销。在本文中,我们提出了Capre,这是一种基于面向对象的应用程序的静态代码分析的持久对象存储的新型预取系统。 CAPRE在编译时生成预测,并且不会向应用程序执行引入任何开销。此外,CAPRE能够预测将在不久的将来访问的大量对象,从而使对象存储在对象分布时,可以以比基于模式的预测算法更具侵略性的方式执行并行预取。我们将CAPRE集成到分布式持久对象存储中,并运行一系列实验,这些实验表明它可以将应用程序的执行时间从9%降低到50%以上,具体取决于应用程序的性质及其持久数据模型。

Data prefetching aims to improve access times to data storage systems by predicting data records that are likely to be accessed by subsequent requests and retrieving them into a memory cache before they are needed. In the case of Persistent Object Stores, previous approaches to prefetching have been based on predictions made through analysis of the store's schema, which generates rigid predictions, or monitoring access patterns to the store while applications are executed, which introduces memory and/or computation overhead. In this paper, we present CAPre, a novel prefetching system for Persistent Object Stores based on static code analysis of object-oriented applications. CAPre generates the predictions at compile-time and does not introduce any overhead to the application execution. Moreover, CAPre is able to predict large amounts of objects that will be accessed in the near future, thus enabling the object store to perform parallel prefetching if the objects are distributed, in a much more aggressive way than in schema-based prediction algorithms. We integrate CAPre into a distributed Persistent Object Store and run a series of experiments that show that it can reduce the execution time of applications from 9% to over 50%, depending on the nature of the application and its persistent data model.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源