An Extensible Digital Library Service to Support Network Science

Abstract Network science research aims to understand the underlying properties of complex networks. Large-scale modeling and simulation is the core of network science research. Existing systems take a long time to run large network science experiments with high performance computing resources. Scientific data management systems currently lack the performance efficiency needed to support this type of computation and data-intensive research. Memoization provides the ability to index, archive, and reuse frequently requested and expensive to re-compute datasets. In this paper, a domain independent memoization service to increase the computational execution process performance within cyberinfrastructure-based systems is described. The service is formulated as an extensible memoization framework for the computational and simulation network science domains that is built on top of well-defined metadata objects. We present extensible concepts, discuss the proposed algorithm and framework architecture, and examine the flexible nature of the framework. The framework was utilized as a part of the CINET cyberinfrastructure-based digital library (DL). Our experimental results indicate an increase in the efficiency of the system and recommendation of the service's inclusion in scientific DLs.

[1]  William Pugh An improved replacement strategy for function caching , 1988, LFP '88.

[2]  Don W. Warren,et al.  An analysis of a logical machine using parenthesis-free notation , 1954 .

[3]  Allan Heydon,et al.  Caching function calls using precise dependencies , 2000, PLDI '00.

[4]  Peter Thiemann,et al.  Implementing Memoization for Partial Evaluation , 1996, PLILP.

[5]  Ben H. H. Juurlink,et al.  Instruction precomputation with memoization for fault detection , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[6]  F. Khalvati,et al.  Opposition-Based Window Memoization for Morphological Algorithms , 2007, 2007 IEEE Symposium on Computational Intelligence in Image and Signal Processing.

[7]  Edward A. Fox,et al.  Towards a digital library theory: a formal digital library ontology , 2008, International Journal on Digital Libraries.

[8]  Rupak Majumdar,et al.  Trigger memoization in self-triggered control , 2012, EMSOFT '12.

[9]  Timothy W. Finin,et al.  Using automatic memoization as a software engineering tool in real-world AI systems , 1995, Proceedings the 11th Conference on Artificial Intelligence for Applications.

[10]  Samarth Swarup,et al.  CINET: A cyberinfrastructure for network science , 2012, 2012 IEEE 8th International Conference on E-Science.

[11]  Aric Hagberg,et al.  Exploring Network Structure, Dynamics, and Function using NetworkX , 2008, Proceedings of the Python in Science Conference.

[12]  Felipe Maia Galvão França,et al.  The dynamic trace memoization reuse technique , 2000, Proceedings 2000 International Conference on Parallel Architectures and Compilation Techniques (Cat. No.PR00622).

[13]  James R. Larus,et al.  Fast out-of-order processor simulation using memoization , 1998, ASPLOS VIII.

[14]  Suresh Jagannathan,et al.  Partial memoization of concurrency and communication , 2009, ICFP.

[15]  Guy E. Blelloch,et al.  Selective memoization , 2003, POPL '03.

[16]  Tohru Ishihara,et al.  A way memoization technique for reducing power consumption of caches in application specific integrated processors , 2005, Design, Automation and Test in Europe.

[17]  Carol Small,et al.  A Functional Approach to Database Updates , 1993, Inf. Syst..

[18]  Walid Taha,et al.  A monadic approach for avoiding code duplication when staging memoized functions , 2006, PEPM '06.

[19]  M. Valero,et al.  Fuzzy memoization for floating-point multimedia applications , 2005, IEEE Transactions on Computers.

[20]  Hiroshi Matsuo,et al.  A Speed-Up Technique for an Auto-Memoization Processor by Collectively Reusing Continuous Iterations , 2010, 2010 First International Conference on Networking and Computing.

[21]  Stuart Weibel,et al.  The Dublin Core: A Simple Content Description Model for Electronic Resources , 2005 .

[22]  Jochen Dörre,et al.  Memoization of Coroutined Constraints , 1995, ACL.

[23]  Yanhong A. Liu,et al.  Caching intermediate results for program improvement , 1995, PEPM '95.

[24]  Matthew S. Mayernik,et al.  Drowning in data: digital library architecture to support scientific use of embedded sensor networks , 2007, JCDL '07.