The International Arab Journal of Information Technology (IAJIT)

..............................
..............................
..............................


Paradigma: A Distributed Framework for Parallel Programming

Recent advances in high-speed networks and the newfound ubiquity of powerful processors have revolutionized the nature of parallel computing. It is becoming increasingly attractive to perform parallel tasks on distant, autonomous, and heterogeneous networked machines. This paper presents a simple and efficient new distributed framework for parallel programming known as Paradigma. In this framework, parallel program development is simplified using the Gamma formalism, providing sequential programmers with a straightforward mechanism for solving large-scale problems in parallel. The programmer simply specifies the action to be performed on an atomic data element known as a molecule. The workers compete in simultaneously running the action specified on the various molecules extracted from the input until the entire dataset is processed. The proposed framework is dedicated for fine-grained parallel processing and supports both the Simple program multiple data and multiple program multiple data programming models.


[1] Al-Jaroodi J., Mohamed N., Jiang H., and Swanson D., JOPI: A Java Object-Passing Interface, in Proceedings of the Joint ACM- ISCOPE Conference on Java Grande, Seattle, pp. 37-45, 2002.

[2] Al-Jaroodi J., Mohamed N., Jiang H., and Swanson D., Middleware Infrastructure for Parallel and Distributed Programming Models in Heterogeneous Systems, IEEE Transactions on Parallel and Distributed Systems, vol. 14, no. 11, pp. 1100-1111, 2003.

[3] Allen G., Benger W., Dramlitsch T., Goodale T., Hege H., Lanfermann G., Merzky A., Radke T., and Seidel E., Cactus Grid Computing: Review of Current Development, in Proceedings 7th 942 The International Arab Journal of Information Technology, Vol. 15, No. 5, September 2018 International Conference Euro-Parallel, Manchester, pp. 817-824, 2001.

[4] Allen G., Goodale T., Mass J., and Seidel E., The Cactus Computational Toolkit and Using Distributed Computing to Collide Neutron Stars, in Proceedings 8th International Symposium on High Performance Distributed Computing, Redondo Beach, pp. 57-61, 1999.

[5] Bader D., Kanade V., and Madduri K., SWARM: A Parallel Programming Framework for Multicore Processors, in Proceedings of 1st Workshop on Multithreaded Architectures and Applications, Long Beach, pp. 1966-1971, 2007.

[6] Baker M., Carpenter B., and ShafiA., MPJ Express: Towards Thread Safe Java HPC, in Proceedings IEEE International Conference on Cluster Computing, Barcelona, pp. 1-10, 2006.

[7] Baker M., Carpenter B., and Shafi A., MPJ: A New Look at MPI for Java, in Proceeding of UK E-Science All Hands Meeting, Nottingham, pp. 666-669, 2005.

[8] Baker M., Carpenter B., Fox G., Ko S., and Lim S., MpiJava: An Object-Oriented Java Interface to MPI, in Proceedings of International Parallel and Distributed Processing Symposium, San Juan, pp. 748-762, 1999.

[9] Balay S., Gropp W., McInnes L., and Smith B., Efficient Management of Parallelism in Object Oriented Numerical Software Libraries, Modern Software Tools in Scientific Computing, pp. 163- 202, 1997.

[10] Banatre J., Fradet P., and Le Metayer D., Gamma and the Chemical Reaction Model: Fifteen Years Later, in Proceedings of International Conference on Membrane Computing, Curtea de Arges, pp. 17-44, 2000.

[11] Banatre J., Fradet P., and Radenac Y., Higher- Order Chemistry, in Proceedings of International Workshop on Membrane Computing, Tarragona, pp. 102-111, 2003.

[12] Blumofe R., Joerg C., Kuszmaul B., Leiserson C., Randall K., and ZhouY., Cilk: An Efficient Multithreaded Runtime System, in Proceedings of 5thACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, Santa Barbara, pp. 207-216, 1995.

[13] BrowneM., The PETScLibrary: Portable, Extensible Toolkit for Scientific Computing, technicalreport,www.ichec.ie/support/tutorials/pet sc.pdf, Last Visited, 2016.

[14] Carpenter B. and Fox G., HPJAVA: A Data Parallel Programming Alternative, Journal of Computing in Science and Engineering, vol. 5, no. 3, pp. 60-64, 2003.

[15] Christiansen B., Cappello P., Ionescu M., Neary M.,Schauser K., and Wu D., Javelin: Internet- Based Parallel Computing Using Java, Concurrency: Practice and Experience, vol. 9, no. 11, pp. 1139-1160, 1997.

[16] Dijkstra E., Feijen W., and VanGasteren A., Derivation of A Termination Detection Algorithm For Distributed Computations, Information Processing Letter, vol. 16, no. 5, pp. 217-219, 1983.

[17] Foster I., Globus Toolkit Version 4: Software for Service-Oriented Systems, in Proceedings of IFIP International Conference on Network and Parallel Computing, Beijing, pp. 2-13, 2005.

[18] Goodale T., Allen G., Lanfermann G., Mass o J., Radke T., Seidel E., and Shalf J., The Cactus Framework and Toolkit: Design and Applications, in Proceedings of 5th International Meeting on High Performance Computing for Computational Science, Porto, pp. 197-227, 2002.

[19] Goux J., Kulkarni S., Linderoth J., and Yoder M., An Enabling Framework For Master- Worker Applications on the Computational Grid, in Proceedings of 9th International Symposium on High-Performance Distributed Computing, Pittsburgh, pp. 43-50, 2000.

[20] Goux J., Kulkarni S., Yoder M., and Linderoth J., Master-Worker: An Enabling Framework for Applications on the Computational Grid, Cluster Computing, vol. 4, no. 1, pp. 63-70, 2001.

[21] Helen-Ma H. and YangL., Improvement of Object Serialization in Java Remote Method Invocation, in Proceedings 7th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel Distributed Computing, Las Vegas, pp. 35-42, 2006.

[22] Karonis T., Toonen B., and Foster I., Mpich- G2: A Grid-Enabled Implementation of the Message Passing Interface, Journal of Parallel and Distributed Computing, vol. 63, no. 5, pp. 551-563, 2003.

[23] Launay P. and Pazaty J., The Do! Project: Distributed Programming-Using Java, in Proceedings of 1st UK Workshop on Java for High Performance Network Computing, Europar, pp. 76-84, 1998.

[24] Leiserson C. and Plaat A., Programming Parallel Applications InCilk, Society of Industrial and Applied Mathematics News, vol. 31, no. 4, pp. 122-126, 1998.

[25] Lin H., Kemp J., and Gilbert P., Computer Engineering: Concepts, Methodologies, Tools and Applications, IGI-Global, 2012.

[26] Lin H., Kemp J., and Gilbert P., Computing GAMMA Calculus on Computer Cluster, International Journal of Technology Diffusion, vol. 1, no. 4, pp. 42-52, 2010. Paradigma: A Distributed Framework for Parallel Programming 943

[27] Lin H., Kemp J., and Molina W., Parallel Computing in Chemical Reaction Metaphor with Tuple Space, International Journal of Computer Science and Security, vol. 4, no. 2, pp. 149-159, 2010.

[28] Meehean J. and Livny M., A Service Migration Case Study: Migrating the Condor Schedd, in Proceedings of the 38th Symposium on Instruction and Computing, Wisconsin, pp. 456-472, 2005.

[29] Morin S., Koren I., and Krishna C., JMPI: Implementing the Message Passing Standard in Java, in Proceedings 16th International Parallel and Distributed Processing Symposium, Ft. Lauderdale, pp. 1956-1962, 2002.

[30] Philippsen M. and Zenger M., Javaparty- Transparent Remote Objects in Java, Concurrency Practice and Experience, vol. 9, no. 11, pp. 1225-1242, 1997.

[31] Ragab H., Sarhan A., Sallam A., and Ammar R., Balanced Workload Clusters for Distributed Object Oriented Software, The International Arab Journal of Information Technology, vol. 12, no. 4, pp. 379-388, 2015.

[32] Snell Q., Judd G., and Clement M., The DOGMA Approach to Parallel and Distributed Computing, Scientific International Journal for Parallel and Distributed Computing, vol. 2, no. 2, pp. 23-34, 2001.

[33] Sqalli M. and Sirajuddint S., An Adaptive Load- Balancing Approach to XML-Based Network Management Using JPVM, in Proceedings of 13th IEEE International Conference on Networks, Kuala Lumpur, pp. 202-207, 2005.

[34] Taboada G., Tourino J., and Doallo R., Performance Analysis of Java Message-Passing Libraries On Fast Ethernet, Myrinet and SCI Clusters, in Proceedings IEEE International Conference on Cluster Computing, Hong Kong, pp. 118-126, 2003.

[35] Thain D., Tannenbaum T., and Livny M., Distributed Computing in Practice: The Condor Experience, Concurrency and Computation: Practice and Experience, vol. 17, no. 2, pp. 323- 356, 2005.

[36] Touir A., Al-Athel D., and Mathkour H., An application of Gamma Formalism to Database Design, in Proceedings of International Conference on Computer and Communication Engineering, Kuala Lumpur, pp. 974-977, 2008.

[37] Touir A., Al-Twairesh N., and Mathkour H., A Gamma-Based PM-Quadtree Specification, in Proceedings of the 9th World Multi-Conference on Systemics, Cybernetics and Informatics, Orlando, pp. 215-221, 2005.

[38] Van Nieuwport R., Maassen J., Bal H., Kielmann T., and Veldema R., Wide-Area Parallel Programming using the Remote Method Invocation Model, Concurrency: Practice and Experience, vol. 12, no. 8, pp. 643-666, 2000.

[39] WeiQin T., Hua Y., and WenSheng Y., PJMPI: Pure Java implementation of MPI, in Proceedings of 4th International Conference/Exhibition on High Performance Computing in the Asia-Pacific Region, Beijing, pp. 533-535, 2000.

[40] www.jppf.org, Last Visited, 2009.

[41] Yelick K., Semenzato L., Pike G., Miyamoto C., Liblit B., Krishnamurthy A., Hilfinger P., Graham S., Gay D., Colelia P., and Aiken A., Titanium: A high-performance Java dialect, in Proceedings of ACM Workshop on Java for High-Performance Network Computing, Stanford, pp. 825-836, 1998. Sofien Gannouni received his Master degree in Computer Science from Paul Sabatier University (Toulouse III - France), and his PhD degree in Computer Science from Pierre & Marie Curie University (Paris VI - France). Currently, he is an Assistant Professor at College of Computer and Information Sciences, King Saud University. His main research interests include service-oriented computing, distributed computing, parallel processing, middleware grid computing and cloud computing. Ameur Touir received his Master degree in Computer Science from Ecole National Superieure des Techniques Avancees (INSTA/Paris VI, Paris - France), and his PhD from Sup. Telecom. Paris. Currently, he is an Associate Professor at College of Computer and Information Sciences, King Saud University. His main research interests include spatial data structure and GIS, semantic web services, database. Hassan Mathkour received his Master degree and PhD degree in Computer Science from the University of Iowa, USA. Currently, he is a Professor and former Dean of College of Computer and Information Sciences, King Saud University. His main research interests include service-oriented computing, distributed computing, artificial intelligence, bioinformatics, image processing and software engineering.