JASAG: a gridification tool for agricultural simulation applications
Corresponding Author
M. Arroqui
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Correspondence to: Mauricio Arroqui, Facultad de Ciencias Veterinarias, UNICEN, Pinto 399, CP 7000, Tandil, Buenos Aires, Argentina.
E-mail: [email protected]
Search for more papers by this authorJ. Rodriguez Alvarez
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorH. Vazquez
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorC. Machado
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorC. Mateos
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorA. Zunino
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorCorresponding Author
M. Arroqui
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Correspondence to: Mauricio Arroqui, Facultad de Ciencias Veterinarias, UNICEN, Pinto 399, CP 7000, Tandil, Buenos Aires, Argentina.
E-mail: [email protected]
Search for more papers by this authorJ. Rodriguez Alvarez
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorH. Vazquez
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorC. Machado
Facultad de Ciencias Veterinarias – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorC. Mateos
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorA. Zunino
Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Buenos Aires, Argentina
ISISTAN Research Institute – UNICEN, Pinto 399, CP 7000 Tandil, Buenos Aires, Argentina
Search for more papers by this authorSummary
The Grid Computing paradigm aims to create a ‘virtual’ and powerful single computer with many distributed resources to solve resource intensive problems. The term ‘gridification’ involves the process of transforming a conventional application to run in a Grid environment. In that sense, the more automatic this process is, the easier is for developers with low expertise in parallel and distributed computing to take advantage of these resources. To date, many semiautomatic gridifiers were built to support different gridification approaches and application code structures or anatomies. Furthermore, agricultural simulation applications have a particular common anatomy based on biophysical entities, such as animals, crops, and pastures, which are updated by actions, such as growing animals, growing crops, and growing pastures, along simulation execution. However, this anatomy is not fully supported by any of the existing gridifiers. Thus, this paper presents Agricultural Simulation Applications Gridifier (ASAG), a method for easy gridification of agricultural simulation applications, and its Java implementation, named Java ASAG (JASAG). The main design drivers of JASAG are middleware independence, separation of business logic and Grid behavior, and performance increase. An experimental evaluation showing the feasibility of the gridification method and its implementation is also reported, which resulted in speedups of up to 25 by using a real agricultural simulation application. Copyright © 2014 John Wiley & Sons, Ltd.
References
- 1Foster I, Kesselman C, Tuecke S. The anatomy of the grid: enabling scalable virtual organizations. International Journal of High Performance Computing and Applications 2001; 15(3): 200–222.
- 2Foster I, Kesselman C. The Grid 2: Blueprint for a New Computing Infrastructure. The Elsevier Series in Grid Computing: San Francisco, CA, USA, 2003.
- 3Mateos C, Zunino A, Campo M. A survey on approaches to gridification. Software: Practice and Experience 2008; 38: 523–556.
- 4Mateos C, Zunino A, Hirsch M, Fernández M. Enhancing the BYG gridification tool with state-of-the-art grid scheduling mechanisms and explicit tuning support. Advances in Engineering Software 2012; 43(1): 27–43.
- 5Fahringer T, Jugravu A. JavaSymphony: a new programming paradigm to control and synchronize locality, parallelism and load balancing for parallel and distributed computing: research articles. Concurrency and Computation: Practice and Experience 2005; 17(7-8): 1005–1025.
- 6He T, Ni J, Wang S, Knosp B. Java grid computing library (JavaGCL) – an application framework for computational grids. The Second International Workshop on Grid and Cooperative Computing, Shanghai, China, 2003; 21–25.
- 7Laszewski GV, Gawor J, Lane P, Rehn N, Russell M. Features of Java commodity grid kit. Concurrency and Computation: Practice and Experience 2003; 14(13-15): 1045–1055.
- 8Rahman M, Ranjan R, Buyya R, Benatallah B. A taxonomy and survey on autonomic management of applications in grid computing environments. Concurrency and Computation: Practice and Experience 2011; 23(16): 1990–2019.
- 9Mateos C, Zunino A, Campo M. Grid-enabling applications with JGRIM. International Journal of Grid and High Performance Computing 2009; 1(3): 52–72.
10.4018/jghpc.2009070104 Google Scholar
- 10Mateos C, Zunino A, Campo M. An approach for non-intrusively adding malleable fork/join parallelism into ordinary JavaBean compliant applications. Computer Languages, Systems & Structures 2010; 36(3): 288–315.
- 11Giorgino T, Harvey M, de Fabritiis G. Distributed computing as a virtual supercomputer: tools to run and manage large-scale BOINC simulations. Computer Physics Communications 2010; 181(8): 1402–1409.
- 12Wang X, Yan Z, Li L. A grid computing based approach for the power system dynamic security assessment. Computers & Electrical Engineering 2010; 36(3): 553–564.
- 13Keating BA, Carberry PS, Hammer GL, Probert ME, Robertson MJ, Holzworth D, Huth NI, JNG Hargreaves, Meinke H, Hochman Z, McLean G, Verburg K, Snow V, Dimes JP, Silburn M, Wang E, Brown S, Bristowc KL, Asseng S, Chapman J, McCown RL, Freebairn DM, Smith CJ. An overview of APSIM, a model designed for farming systems simulation. European Journal of Agronomy 2003; 18(3-4): 267–288.
- 14Machado C, Morris S, Hodgson J, Arroqui M, Mangudo P. A web-based model for simulating whole-farm beef cattle systems. Computers and Electronics in Agriculture 2010; 74(1): 129–136.
- 15Zhao G, Bryan BA, King D, Luo Z, Wang E, Bende-Michl U, Song X, Yu Q. Large-scale, high-resolution agricultural systems modeling using a hybrid approach combining grid computing and parallel processing. Environmental Modelling and Software 2013; 41: 231–238.
- 16Pannell D. On the estimation of on-farm benefits of agricultural research. Agricultural Systems 1999; 61: 123–134.
- 17Jones J, Keating B, Porter C. Approaches to modular model development. Agricultural Systems 2001; 70(2-3): 421–443.
- 18Folino G, Spezzano G. An autonomic tool for building self-organizing grid-enabled applications. Future Generation Computer Systems 2007; 23: 671–679.
- 19Thain D, Tannenbaum T, Livny M. Condor and the grid 2003. 299—335.
- 20 Condor team. DAGman: a directed acyclic graph manager. (Available from: http://research.cs.wisc.edu/condor/dagman/dagman.html) [Accessed on May, 2014].
- 21Deelman E, Singh G, Su MH, Blythe J, Gil Y, Kesselman C, Mehta G, Vahi K, Berriman GB, Good J, Laity A, Jacob JC, Katz DS. Pegasus: a framework for mapping complex scientific workflows onto distributed systems. Scientific Programming 2005; 13(3): 219–237.
10.1155/2005/128026 Google Scholar
- 22Taylor I, Wang I, Shields M, Majithia S. Distributed computing with Triana on the grid: research articles. Concurrency and Computation: Practice and Experience 2005; 17(9): 1197–1214.
- 23Oinn T, Addis M, Ferris J, Marvin D, Senger M, Greenwood M, Carver T, Glover K, Pocock MR, Wipat A, et al. Taverna: a tool for the composition and enactment of bioinformatics workflows. Bioinformatics Nov 2004; 20(17): 3045–3054.
- 24Cao J, Jarvis SA, Saini S, Nudd GR. Gridflow: workflow management for grid computing. Proceedings of the 3st International Symposium on Cluster Computing and the Grid, CCGRID '03, IEEE Computer Society: Washington, DC, USA, 2003; 198–205.
- 25Johnson D, Meacham K, Kornmayer H. A middleware independent grid workflow builder for scientific applications. 2009 5th IEEE International Conference on E-Science Workshops, Oxford, United Kingdom, 2009; 86–91.
- 26Altintas I, Berkley C, Jaeger E, Jones M, Ludascher B, Mock S. Kepler: an extensible system for design and execution of scientific workflows. Proceedings. 16th International Conference on Scientific and Statistical Database Management, 2004, Santorini Island, Greece, 2004; 423–424.
- 27Kovács M, Gönczy L. Simulation and formal analysis of workflow models. Electronic Notes in Theoretical Computer Science 2008; 211(0): 221–230.
10.1016/j.entcs.2008.04.044 Google Scholar
- 28Goodheart B, Cox J. The magic garden explained: the internals of UNIX system V release 4: an open systems design. Prentice-Hall, Inc.: Upper Saddle River, NJ, USA, 1994.
- 29Fahringer T, Prodan R, Duan R, Nerieri F, Podlipnig S, Qin J, Siddiqui M, Truong HL, A Villazon, Wieczorek M. Askalon: a grid application development and computing environment. Proceedings of the 6th IEEE/ACM International Workshop on Grid Computing, GRID '05, IEEE Computer Society: Washington, DC, USA, 2005; 122–131.
- 30Hijma PL, van Nieuwpoort RV, Jacobs CJ, Bal HE. Generating synchronization statements in divide and conquer programs. Parallel Computing 2012; 38(1-2): 75–89.
- 31Mateos C, Zunino A, Hirsch M, Fernández M. Enhancing the BYG gridification tool with state-of-the-art grid scheduling mechanisms and explicit tuning support. Advances in Engineering Software 2012; 43(1): 27–43.
- 32Delaittre T, Kiss T, Goyeneche A, Terstyanszky G, Winter S, Kacsuk P. GEMLCA; running legacy code applications as grid services. Journal of Grid Computing 2005; 3(1-2): 75–90.
10.1007/s10723-005-9002-8 Google Scholar
- 33Ho QT, Hung T, Jie W, Chan HM, Sindhu E, Subramaniam G, Zang T, Li X. GRASG – a framework for “gridifying" and running applications on service-oriented grids. Proceedings of the Sixth IEEE International Symposium on Cluster Computing and the Grid, CCGRID '06, IEEE Computer Society: Washington, DC, USA, 2006; 305–312.
- 34Kommineni J, Abramson D. Griddles enhancements and building virtual applications for the grid with legacy components. Proceedings of the 2005 European Conference on Advances in Grid Computing, EGC'05, Springer-Verlag: Berlin, Heidelberg, 2005; 961–971.
- 35Johnson R. J2EE development frameworks. Computer 2005; 38(1): 107–110.
- 36Englander R. Developing Java Beans. O'Reilly Media: Sebastopol, CA, USA, 1997.
- 37Atkinson M, Deroure D, Dunlop A, Fox G, Henderson P, Hey T, Paton N, Newhouse S, S Parastatidis, Trefethen A, Watson P, Webber J. Web service grids: an evolutionary approach. Concurrency and Computation: Practice and Experience 2004; 17: 377–389.
- 38Van Nieuwpoort RV, Wrzesińska G, Jacobs CJH, Bal HE. Satin: a high-level and efficient grid programming model. ACM Transactions on Programming Languages and Systems 2010; 32(3): 9:1–9:39.
- 39Foster I. Globus Toolkit Version 4: software for service-oriented systems. Journal of Computer Science and Technology 2006; 21: 513–520. DOI: 10.1007/s11390-006-0513-y.
- 40Deelman E, Gannon D, Shields M, Taylor I. Workflows and e-Science: an overview of workflow system features and capabilities. Future Generation Computer Systems 2009; 25(5): 528–540.
- 41Romera A, Morris S, Hodgson J, Stirling W, Woodward S. A model for simulating rule-based management of cow-calf systems. Computers and Electronics in Agriculture 2004; 42(2): 67–86. DOI: 10.1016/S0168-1699(03)00118-2.
- 42Good J, Bright J. An object-oriented software framework for the farm-scale simulation of nitrate leaching from agricultural land uses – IRAP farmsim 2005.
- 43Sherlock R, Bright K. An object framework for farm system simulation. In Proc. MODSIM'99, Vol. 3, L Oxley, F Scrimgeour, A Jakeman (eds). Modeling and Simulation Society of Australia and New Zealand: Hamilton, NZ, 1999; 783–788.
- 44Hillyer C, Bolte J, van Evert F, Lamaker A. The ModCom modular simulation system. European Journal of Agronomy 2003; 18(3-4): 333–343.
- 45Scott ML. Programming Language Pragmatics, Third Edition ( 3rd edn). Morgan Kaufmann Publishers Inc.: San Francisco, CA, USA, 2009.
- 46Altintas I, Wang J, Crawl D, Li W. Challenges and approaches for distributed workflow-driven analysis of large-scale biological data: vision paper. Proceedings of the 2012 Joint EDBT/ICDT Workshops, EDBT-ICDT '12, ACM: New York, NY, USA, 2012; 73–78.
- 47Qin J, Fahringer T. Advanced data flow support for scientific grid workflow applications. Proceedings of the 2007 ACM/IEEE Conference on Supercomputing, SC '07, ACM: New York, NY, USA, 2007; 42:1–42:12.
- 48McPhillips T, Bowers S, Zinn D, Ludascher B. Scientific workflow design for mere mortals. Future Generation Computer Systems 2009; 25(5): 541–551.
- 49Tsangaris MM, Kakaletris G, Kllapi H, Papanikos G, Pentaris F, Polydoras P, Sitaridi E, V Stoumpos, Ioannidis YE. Dataflow processing and optimization on grid and cloud infrastructures. IEEE Data Engineering Bulletin 2009; 32: 67–74.
- 50Hartley TD, Saule E, Catalyurek U. Improving performance of adaptive component-based dataflow middleware. Parallel Computing 2012; 38(6-7): 289–309.
- 51Drejhammar F, Schulte C, Brand P, Haridi S. Flow Java: declarative concurrency for Java. In Logic Programming, Lecture Notes in Computer Science, Vol. 2916, C Palamidessi (ed.). Springer Berlin: Heidelberg, 2003; 346–360.
- 52Zinn D, Bowers S, Köhler S, Ludäscher B. Parallelizing XML data-streaming workflows via MapReduce. Journal of Computer and System Sciences 2010; 76(6): 447–463.
- 53Freeh VW. A comparison of implicit and explicit parallel programming. Journal of Parallel and Distributed Computing 1996; 34(1): 50–65.
- 54Taboada GL, Ramos S, Expósito RR, Touriño J, Doallo R. Java in the high performance computing arena: research, practice and experience. Science of Computer Programming 2013; 78(5): 425–444. Special section: Principles and Practice of Programming in Java 2009/2010 & Special section: Self-Organizing Coordination.
- 55 Eclipse JDT core. (Available from: http://www.eclipse.org/jdt/core/index.php) [Accessed on May, 2014].
- 56Gamma E, Helm R, Johnson R, Vlissides J. Design Patterns: Elements of Reusable Object-oriented Software. Addison-Wesley Professional: Upper Saddle River, NJ, USA, 1994.
- 57Mateos C, Zunino A, Hirsch M. EasyFJP: providing hybrid parallelism as a concern for divide and conquer Java applications. Computer Science and Information Systems 2013; 10: 1129–1163.
- 58Mateos C, Zunino A, Campo M. On the evaluation of gridification effort and runtime aspects of JGRIM applications. Future Generation Computer Systems 2010; 26(6): 797–819.
- 59Wrzesinska G, van Nieuwport R, Maassen J, Kielmann T, Bal H. Fault-tolerant scheduling of fine-grained task in grid environments. International Journal of High Performance Computing Applications 2006; 20(1): 103–114.
- 60 Gridgain. (Available from: http://www.gridgain.org)[Accessed on September, 2014].
- 61Baduel L, Baude F, Caromel D, Contes A, Huet F, Morel M, Quilici R. Programming, composing, deploying for the grid. Grid Computing: Software Environments and Tools, Springer Verlag: New York, USA, 2006; 205–229.
- 62Atzeni P, Bugiotti F, Rossi L. Uniform access to NoSQL systems. Information Systems 2014; 43(0): 117–133.
- 63Berger H. Modelling the effect of maize silage and oat winter forage crop on cow-calf systems in Argentina. International Grassland Conference. Sydney 15-19 sept, Sydney, Australia, 2013; 15–19.
- 64Wrzesinska G, Van Nieuwpoort R, Maassen J, Bal H. An simple and efficient fault tolerance mechanism for divide-and-conquer systems. IEEE International Symposium on Cluster Computing and the Grid, 2004. CCGrid 2004, Chicago, Illinois, USA, 2004; 735.
- 65De Boelelaan A, van Nieuwpoort R, Van Nieuwpoort RV, Maassen J, Maassen J, Wrzesinska G, G Wrzesińska, Kielmann T, Kielmann T, Kielmann T, Bal HE, Bal HE. Adaptive load-balancing for divide-and-conquer grid applications. Journal of Supercomputing 2004.
- 66 JPPF. (Available from: http://www.jppf.org/) [Accessed on September, 2014].
- 67 Gridgain visor. (Available from: http://www.gridgain.com/visor/) [Accessed on October, 2014].
- 68Mateos C, Zunino A, Hirsch M. EasyFJP: providing hybrid parallelism as a concern for divide and conquer Java applications. Computer Science and Information Systems 2013; 10: 1129–1163.
- 69Agrawal D, Das S, El Abbadi A. Big data and cloud computing: current state and future opportunities. Proceedings of the 14th International Conference on Extending Database Technology, ACM, Uppsala, Sweden, 2011; 530–533.
- 70Lee D, Kim J-S, Maeng S. Large-scale incremental processing with Map Reduce. Future Generation Computer Systems 2014; 36: 66–79.