English
Related papers

Related papers: Optimal Cache-Oblivious Mesh Layouts

200 papers

We consider the problem of laying out a tree with fixed parent/child structure in hierarchical memory. The goal is to minimize the expected number of block transfers performed during a search along a root-to-leaf path, subject to a given…

Data Structures and Algorithms · Computer Science 2007-05-23 Stephen Alstrup , Michael A. Bender , Erik D. Demaine , Martin Farach-Colton , Theis Rauhe , Mikkel Thorup

This paper proposes a general framework for generating cache-oblivious layouts for binary search trees. A cache-oblivious layout attempts to minimize cache misses on any hierarchical memory, independent of the number of memory levels and…

Data Structures and Algorithms · Computer Science 2013-07-29 Peter Lindstrom , Deepak Rajan

Mining large graphs for information is becoming an increasingly important workload due to the plethora of graph structured data becoming available. An aspect of graph algorithms that has hitherto not received much interest is the effect of…

Data Structures and Algorithms · Computer Science 2012-03-27 Amitabha Roy

Partial persistence is a general transformation that takes a data structure and allows queries to be executed on any past state of the structure. The cache-oblivious model is the leading model of a modern multi-level memory hierarchy.We…

Data Structures and Algorithms · Computer Science 2014-07-02 Pooya Davoodi , Jeremy T. Fineman , John Iacono , Özgür Özkan

We present priority queues in the cache-oblivious external memory model with block size $B$ and main memory size $M$ that support on $N$ elements, operation \textsc{UPDATE} (combination of \textsc{INSERT} and \textsc{DECREASEKEY}) in $O…

Data Structures and Algorithms · Computer Science 2020-08-05 John Iacono , Riko Jacob , Konstantinos Tsakalidis

While a lot of work in theoretical computer science has gone into optimizing the runtime and space usage of data structures, such work very often neglects a very important component of modern computers: the cache. In doing so, very often,…

Data Structures and Algorithms · Computer Science 2019-07-04 Jeffrey Barratt , Brian Zhang

The emerging hybrid DRAM-NVM architecture is challenging the existing memory management mechanism in operating system. In this paper, we introduce memos, which can schedule memory resources over the entire memory hierarchy including cache,…

Operating Systems · Computer Science 2017-03-23 Lei Liu , Mengyao Xie , Hao Yang

Consistent hashing is used in distributed systems and networking applications to spread data evenly and efficiently across a cluster of nodes. In this paper, we present MementoHash, a novel consistent hashing algorithm that eliminates known…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-02-28 Massimo Coluzzi , Amos Brocco , Alessandro Antonucci , Tiziano Leidi

Mesh plays an indispensable role in dense real-time reconstruction essential in robotics. Efforts have been made to maintain flexible data structures for 3D data fusion, yet an efficient incremental framework specifically designed for…

Robotics · Computer Science 2018-03-13 Wei Dong , Jieqi Shi , Weijie Tang , Xin Wang , Hongbin Zha

We consider Oblivious Shuffling and K-Oblivious Shuffling, a refinement thereof. We provide efficient algorithms for both and discuss their application to the design of Oblivious RAM. The task of K-Oblivious Shuffling is to obliviously…

Cryptography and Security · Computer Science 2017-10-19 Sarvar Patel , Giuseppe Persiano , Kevin Yeo

Let X[0..n-1] and Y[0..m-1] be two sorted arrays, and define the mxn matrix A by A[j][i]=X[i]+Y[j]. Frederickson and Johnson gave an efficient algorithm for selecting the k-th smallest element from A. We show how to make this algorithm…

Data Structures and Algorithms · Computer Science 2008-04-08 Mark de Berg , Shripad Thite

Programs written in C/C++ can suffer from serious memory fragmentation, leading to low utilization of memory, degraded performance, and application failure due to memory exhaustion. This paper introduces Mesh, a plug-in replacement for…

Programming Languages · Computer Science 2020-04-30 Bobby Powers , David Tench , Emery D. Berger , Andrew McGregor

Classic cache-oblivious parallel matrix multiplication algorithms achieve optimality either in time or space, but not both, which promotes lots of research on the best possible balance or tradeoff of such algorithms. We study modern…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-11-14 Yuan Tang

Distributed attention is a fundamental problem for scaling context window for Large Language Models (LLMs). The state-of-the-art method, Ring-Attention, suffers from scalability limitations due to its excessive communication traffic. This…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-12-25 Sirui Chen , Jingji Chen , Siqi Zhu , Ziheng Jiang , Yanghua Peng , Xuehai Qian

In recent years the Cache-Oblivious model of external memory computation has provided an attractive theoretical basis for the analysis of algorithms on massive datasets. Much progress has been made in discovering algorithms that are…

Data Structures and Algorithms · Computer Science 2008-02-08 Benjamin Sach , Raphaël Clifford

Nowadays, embedded systems are provided with cache memories that are large enough to influence in both performance and energy consumption as never occurred before in this kind of systems. In addition, the cache memory system has been…

Neural and Evolutionary Computing · Computer Science 2023-03-07 Josefa Díaz Álvarez , J. Manuel Colmenar , José L. Risco-Martín , Juan Lanchares , Oscar Garnica

Write-optimized dictionaries are a class of cache-efficient data structures that buffer updates and apply them in batches to optimize the amortized cache misses per update. For example, a B^epsilon tree inserts updates as messages at the…

Data Structures and Algorithms · Computer Science 2024-04-29 Christopher Chung , William Jannen , Samuel McCauley , Bertrand Simon

Refresh is an important operation to prevent loss of data in dynamic random-access memory (DRAM). However, frequent refresh operations incur considerable power consumption and degrade system performance. Refresh power cost is especially…

Hardware Architecture · Computer Science 2020-04-08 Yongjune Kim , Won Ho Choi , Cyril Guyot , Yuval Cassuto

We have developed a new programming framework, called Sieve, to support parallel numerical PDE algorithms operating over distributed meshes. We have also developed a reference implementation of Sieve in C++ as a library of generic…

Computational Engineering, Finance, and Science · Computer Science 2010-09-02 Matthew G. Knepley , Dmitry A. Karpeev

We present data-oblivious algorithms in the external-memory model for compaction, selection, and sorting. Motivation for such problems comes from clients who use outsourced data storage services and wish to mask their data access patterns.…

Data Structures and Algorithms · Computer Science 2011-03-29 Michael T. Goodrich
‹ Prev 1 2 3 10 Next ›