Distributed garbage collection algorithms for timestamped data

被引:1
作者
Ramachandran, Umakishore
Knobe, Kathleen
Harel, Nissim
Mandviwala, Hasnain A.
机构
[1] Georgia Inst Technol, Coll Comp, Atlanta, GA 30332 USA
[2] Intel, Micropro Technol Labs, Cambridge Ctr 1, Cambridge, MA 02142 USA
基金
美国国家科学基金会;
关键词
garbage collection; distributed programming; logical timestamps; virtual time; soft real-time systems; performance evaluation; cluster computing; multimedia systems; ubiquitous computing;
D O I
10.1109/TPDS.2006.138
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
There is an important class of interactive multimedia applications that deals with stream data from distributed sources. Indexing the data temporally facilitates ordering individual streams as well as correlating items from different streams. The Stampede programming system organizes stream data into channels that are distributed and synchronized data structures that contain timestamped items. A Stampede program is a data flow graph of threads and channels. Stampede semantics for channels allow concurrent access from multiple threads for input and output. While a channel holds timestamped items, the semantics do not place any restriction on either the production or consumption order of these items. Furthermore, timestamps of items in a channel need not be contiguous. These flexibilities are required due to the dynamic and parallel structure of stream- oriented applications targeted by the Stampede system. Under such circumstances, a key issue is the "garbage collection" (GC) of channel items. In this paper, we present and compare three different GC algorithms: 1) REF is a simple algorithm that keeps a reference count on individual items; 2) TGC is a distributed algorithm for computing a global low watermark for timestamp values of interest in the entire application; 3) DGC is another distributed algorithm that uses information about the dependencies between the producers and consumers of data streams to compute a low water mark local to each node of the data flow graph. DGC can simultaneously eliminate garbage from channels and unneeded computations from threads. In tests performed using an interactive application, DGC enjoys nearly 30 percent reduction in the application memory footprint compared to TGC and REF. DGC and REF are also shown to be more scalable compared to TGC.
引用
收藏
页码:1057 / 1071
页数:15
相关论文
共 19 条
  • [1] [Anonymous], 1977, MITLCSTR188
  • [2] A computational model of everything
    Carriero, N
    Gelernter, D
    [J]. COMMUNICATIONS OF THE ACM, 2001, 44 (11) : 77 - 81
  • [3] ASYNCHRONOUS DISTRIBUTED SIMULATION VIA A SEQUENCE OF PARALLEL COMPUTATIONS
    CHANDY, KM
    MISRA, J
    [J]. COMMUNICATIONS OF THE ACM, 1981, 24 (04) : 198 - 206
  • [4] FUJIMOTO RM, 1990, P WINT SIM C DEC, V33
  • [5] GENERATIVE COMMUNICATION IN LINDA
    GELERNTER, D
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1985, 7 (01): : 80 - 112
  • [6] HAREL N, 2002, P 2002 INT C PAR PRO
  • [7] JEFFERSON DR, 1985, ACM T PROGR LANG SYS, V7, P404, DOI 10.1145/3916.3988
  • [8] Jones R.E., 1996, Garbage Collection: Algorithms for Automatic Dynamic Memory Management
  • [9] LEHMAN TJ, 1999, P HAW INT C SYST SCI
  • [10] MANDVIWALA HA, 2002, P 15 WORKSH LANG COM