| G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proceedings of the Scandinavian Workshop on Algorithms Theory, number 1432 in Lecture Notes in Computer Science, pages 107--118, 1998. |
....the increased complexity in disk management. 3.4 Performance Comparison Figure 26 summarizes the performance of MDP and MCS replacement schemes in comparison with the radix heap based algorithm and the optimal cache replacement algorithm. In our implementation of radix heap algorithm presented in [BK98] , we have improved its efficiency somewhat by modifying it to take advantage of all the memory available and write out buckets to disk only when this memory is used up. It can be seen that in the feasible operating regions of Cache size = 0.2 to 2 ( 6 to 60 MB for typical MPEG 2 movies) ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proceedings of the Scandinavian Workshop on Algorithms Theory, number 1432 in Lecture Notes in Computer Science, pages 107--118, 1998.
....However, radix bucket based schemes neglect to take linear access into account. Widely seperated frames map to the same bucket and end up getting written to and read from disk together, resulting in suboptimum performance. We have used a modified version of the algorithm presented in [8] and in [9] for performance comparison. Buffer management could also be treated as a cache replacement problem, with the additional property that there are at most two accesses to each block, one random (during arrival) the other serial (during playout) The optimum cache replacement strategy of writing ....
....replacement algorithm. It is clearly seen that in the feasible operating regions of Cache size = 0.2 to 2 (# 6 to 60 MB for typical MPEG 2 movies) our schemes outperform existing schemes by more than a factor of two in disk I O. In our implementation of the radix heap algorithm presented in [9], we have improved its efficiency somewhat by modifying it to take advantage of the entire memory available and write out radix buckets to disk only when this memory is used up: The performance of radix tries as described by the authors [8] would have been much worse. Array heaps [8] another ....
G. S. Brodal and J. Katajainen, "Worst-case efficient externalmemory priority queues," in Proceedings of the Scandinavian Workshop on Algorithms Theory, Berlin, 1998, vol. 1432 of Lecture Notes in Computer Science, pp. 107--118, Springer Verlag.
....constraints faced while proving optimality of resource consumption in our dynamic memory model. We believe that our techniques for memory adaptive merging apply to memory adaptive distribution and thus to a dynamically optimal distribution sort. Since the BatchMerge K ( operation used in [BK98] can be performed using a modification of our memory adaptive merging technique, we 73 conjecture that we can design a dynamically optimal memory adaptive version of the worst case optimal external priority queue of [BK98] It would be fruitful to extend our approach to other domains and ....
....optimal distribution sort. Since the BatchMerge K ( operation used in [BK98] can be performed using a modification of our memory adaptive merging technique, we 73 conjecture that we can design a dynamically optimal memory adaptive version of the worst case optimal external priority queue of [BK98] It would be fruitful to extend our approach to other domains and applications. An interesting question is whether or not we can devise a general technique that takes any external memory algorithm that is optimal for static memory and convert it into a dynamically optimal memory adaptive ....
G. S. Brodal and J. Katajainen. Worst-case efficient externalmemory priority queues. Scandinavian Workshop on Algorithmic Theory, 1998.
....the information in L. The key idea is therefore to send the needed information (flow) forward in time by inserting it in an I O efficient priority queue. This idea is similar to time forward processing [17, 10] Our new sweep algorithm works as follows. We maintain an external priority queue [10, 15] on grid points (i; j) with primary key equal to the elevation H ij and secondary key equal to (i; j) Each priority queue element also contains a flow value (the flow sent forward to (i; j) from one of its neighbors) When we process a grid point (i; j) during the sweep (scan of L) its flow ....
....(i; j) does not have any upslope neighbors and we only distribute its initial one unit of flow. The processing of a grid point is illustrated in Figure 3. As the total number of priority queue operations performed is O(N ) and as external priority queues with ) I O bound per operation exist [10, 15], the sweep uses O(sort(N) I Os. The above sweep algorithm does not directly output the flow accumulation matrix A. Instead, the flow accumulation of grid points are written to a list as they are calculated during the sweep. After the sweep, A can then be obtained by sorting this list in an ....
[Article contains additional citation context not shown here]
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....0.5 0.6 Block size vs. Fractional I O time Reads Writes Seeks Total Figure 7.3: MDP: # # vs. I O time 0 0.1 0.2 0.3 0.4 0.5 0.6 0 0.02 0.04 0.06 0.08 0.1 Block size vs. Fractional I O time (Cache Size = 0.2 ) Reads Writes Seeks Total Figure 7.4: MCS: # # vs. I O time algorithm presented in [4] , we have improved its efficiency somewhat by modifying it to take advantage of all the memory available and write out buckets to disk only when this memory is used up. It is seen that in the feasible operating regions of Cache size = 0.2 to 2 ( # 6 to 60 MB for typical MPEG 2 movies) our ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proceedings of the Scandinavian Workshop on Algorithms Theory, number 1432 in Lecture Notes in Computer Science, pages 107--118, 1998.
....increased complexity in disk management. 3.4 Performance Comparison Figure 26 summarizes the performance of MDP and MCS replacement schemes in comparison with the radix heap based algorithm and the optimal cache replacement algorithm. In our implementation of radix heap algorithm presented in [BK98] , we have improved its efficiency somewhat by modifying it 14 0 1 2 3 4 5 6 7 0 0.1 0.2 0.3 0.4 0.5 0.6 Block size vs. Fractional I O time Reads Writes Seeks Total Figure 24: MDP: vs. I O time 0 0.1 0.2 0.3 0.4 0.5 0.6 0 0.02 0.04 0.06 0.08 0.1 Block size vs. Fractional I O time (Cache ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proceedings of the Scandinavian Workshop on Algorithms Theory, number 1432 in Lecture Notes in Computer Science, pages 107--118, 1998.
....at least one I O for each vertex which is included in the MST in order to read its adjacent vertices (traverse its adjacency lists) Thus processing all vertices and edges takes V E B I Os. It also performs O(E) inserts and deletes on the priority queue. Using an external priority queue [5, 10] with O( 1 B log M=B N B ) I Os per operation we obtain: Lemma 1 The MST of an undirected weighted graph can be computed in O(V sort(E) I Os. 2.2 MST vertex reduction algorithm Our MST vertex reduction algorithm is obtained from the connected component algorithm of Munagala and Ranade ....
.... C(v) in order to maintain the invariant, we insert it in the priority queue once for each successor vertex v i of v with priority equal to the weight of the successor edge (v i ; v) the successor edges (v i ; v) and their weights are read from L) Assuming we use an I O efficient priority queue [5, 10], finding representatives uses O(sort(V ) I Os and the basic contraction algorithm uses O(sort(E) I Os in total. 3 Multi way planar graph separation In this section, we show how to separate a planar graph G using O(sort(N) I Os into Theta( N R ) subgraphs with O(R) vertices each and a set ....
[Article contains additional citation context not shown here]
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....However, radix bucket based schemes neglect to take linear access into account. Widely seperated frames map to the same bucket and end up getting written to and read from disk together, resulting in suboptimal performance. We have used a modified version of the algorithm presented in [2] and in [3] for performance comparison. Buffer management could also be treated as a cache replacement problem, with the additional property that there are at most two accesses to each block, one random (during arrival) and the other serial (during playout) The optimal cache replacement strategy of writing ....
....Figure 7.3: MDP: C vs. I O time 7.6 Performance Comparison Figure 7.5 summarizes the performance of MDP and MCS replacement schemes in comparison with the radix heap based algorithm and the optimal cache replacement algorithm. In our implementation of radix heap algorithm presented in [3] , we have improved its efficiency somewhat by modifying it to take advantage of all the memory available and write out buckets to disk only when this memory is used up. CHAPTER 7. EFFICIENT BUFFER MANAGEMENT 43 0 0.1 0.2 0.3 0.4 0.5 0.6 0 0.02 0.04 0.06 0.08 0.1 Block size vs. Fractional ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proceedings of the Scandinavian Workshop on Algorithms Theory, number 1432 in Lecture Notes in Computer Science, pages 107--118, 1998.
....away, that is, it is not batched. This is accomplished by periodically computing the O(M) smallest elements in the structure and storing them in internal memory. Kumar and Schwabe [107] and Fadel et al. 76] developed similar buffered heaps. Using a partial rebuilding idea, Brodal and Katajainen [45] developed a worst case efficient external priority queue. Using the buffer tree technique on a tournament tree, Kumar and Schwabe [107] developed a priority queue supporting update operations in O( 1 B log N B ) I Os. They also showed how to use their structure in several efficient external ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....for finding a (1 ffl) approximate nearest neighbor is an external memory version of the algorithm proposed by Arya et al. [8] We first find the leaf containing the query point q. Next, in order to enumerate leaves based on their distance 1 from q, we use an external memory priority queue [14] of nodes, where the priority of a node v is the distance between q and v. The root of the BBD tree is initially inserted in the priority queue. Then we extract the node v with the lowest priority from the queue and, starting from v, we descend the BBD tree to the leaf node closest to the query ....
....nearest neighbor finding algorithm. The first is O(log B n) The second is c(ffl) times the cost of determining the nearest cell. Inserting an item and extracting the lowest priority item from the queue takes O( 1 B (log m n) I Os, using the external priority queue by Brodal and Katajainen [14]. So the total cost of determining the nearest cell is O Gamma 1 B (log m n) log 2 n) log B n Delta . When dynamization is done using the two logarithmic methods, each tree of the forest has to be queried, hence the added factor in the query bound. ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....all these data structures require the maintenance of some kind of child pointers and some rebalancing information which may induce a space overhead and impose to write a complex rebalancing code. Recently, starting from an idea of Thorup [19] for RAM priority queues, Brodal and Katajainen [4] designed an external memory PQ consisting of a hierarchy of sorted lists that are merged upon level or internal memory overflows. Their main result is to achieve optimal worst case I O performance. However, the complicated details of the structural design make this proposal mainly of theoretical ....
....an amortized I O bound of O(1=DB) for the insert and O( 1=DB) log M (DB log C) C) for the delete min. The space requirements are optimal, and the I O constants are actually very small, thus driving us to conjecture good practical performances. Our second PQ proposal 2 is a simplification of [4], carefully adapted to exploit the simplicity of a collection of fixed size lists over balanced tree structures. The resulting array based PQ is simple to be implemented, is I O optimal in the amortized sense, does not impose any constraints on the priority values (cfr. radix heaps) and involves ....
[Article contains additional citation context not shown here]
G. S. Brodal and J. Katajainen, `Worst-case efficient external memory priority queues', Scandinavian Workshop on Algorithm Theory, LNCS 1432, 107--117, 1998.
....least one I O for each vertex which is included in the MST in order to read its adjacent vertices (traverse its adjacency lists) Thus processing all vertices and edges takes V E B I Os. It also performs O(E) insert s and extract min s on the priority queue. Using an external priority queue [5, 9] supporting these operations in O( 1 B log M=B N B ) I Os amortized we obtain: Lemma 1. The MST of an undirected weighted graph can be computed in O(V sort(E) I Os. 2.2 MST Vertex Reduction Algorithm Our MST vertex reduction algorithm is obtained using ideas from the connectedcomponent ....
....the use of a decrease key priority queue operation. We want to avoid such an operation since the I O bound of the best known external data structure with this operation is O( log 2 N B ) 22] while priority queues with O( log M=B N=B B ) I O bound are known if this operation is not supported [5, 9]. During the algorithm we maintain a list L of pairs of vertices of G R and their distances. Initially all distances are 1. We maintain the invariant that the distance of a vertex in L is identical to the distances stored in the priority queue controlling the algorithm. The algorithm repeatedly ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....on performance for any of the experiments in this paper. The presentation of PQ given here assumes that the priorityqueue never grows larger than the amount of internal memory available. Note, however, that PQ can be modified to handle overflow gracefully by using an external priority queue [2, 9], and that it can also be combined with the partitioning step along one dimension that SSSJ performs in the case of an overflow of the interval data structure. We omit these details here since they are only needed for unusual worst case input distributions. One key feature of PQ is that it ....
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
....the information in L. The key idea is therefore to send the needed information (flow) forward in time by inserting it in an I O efficient priority queue. This idea is similar to time forward processing [17, 10] Our new sweep algorithm works as follows. We maintain an external priority queue [10, 15] on grid points (i; j) with primary key equal to the elevation H ij and secondary key equal to (i; j) Each priority queue element also contains a flow value (the flow sent forward to (i; j) from one of its neighbors) When we process a grid point (i; j) during the sweep (scan of L) its flow ....
....any upslope neighbors and we only distribute its initial one unit of flow. The processing of a grid point is illustrated in Figure 3. As the total number of priority queue operations performed is O(N ) and as external priority queues with O( 1 B log M=B N B ) I O bound per operation exist [10, 15], the sweep uses O(sort(N) I Os. The above sweep algorithm does not directly output the flow accumulation matrix A. Instead, the flow accumulation of grid points are written to a list as they are calculated during the sweep. After the sweep, A can then be obtained by sorting this list in an ....
[Article contains additional citation context not shown here]
G. S. Brodal and J. Katajainen. Worst-case efficient external-memory priority queues. In Proc. Scandinavian Workshop on Algorithms Theory, LNCS 1432, pages 107--118, 1998.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC