ABSTRACT
One of the biggest problems in the development of high-performance scientific applications is the need for programming environments that allow source code development in an efficient way. However, there is a clear lack of approaches with specific methodologies or optimal working environments to develop high-performance computing software systems. Additionally, existing frameworks are focused on the design and implementation phases, forgetting software component reuse from the earliest stages of the development process.
An aspect-oriented and component-based approach is proposed for the development of complex parallel applications from existing functional components and new component definitions, according to business rules established by the users, through a web service entry of the platform. The proposed approach includes a specific methodology to develop high-performance scientific applications through the reuse of components from the earliest stages. Finally, an additional supercomputing-oriented framework aims to facilitate the development of these systems and to make creation, cataloguing, validation and reuse of each application and its components easier.
- Barn, B., Brown, A. W. and Cheesman, J. 1998. Methods and Tools for Component Based Development. Proceedings of Technology of Object-Oriented Languages (TOOLS), Santa Barbara, USA. 1998, 385--395. Google ScholarDigital Library
- Sevilla, D., García, J. M. and Gómez, A. 2007. Aspect-Oriented Programing Techniques to support Distribution, Fault Tolerance, and Load Balancing in the CORBA-LC Component Model. Sixth IEEE International Symposium on Network Computing and Applications NCA. Cambridge, USA. July 2007. 195--204. DOI= 10.1109/NCA.2007.8.Google Scholar
- Harbulot, B. and Gurd, J. R.. 2004. Using AspectJ to Separate Concerns in Parallel Scientific Java Code. Proceedings of the 3rd international conference on Aspect-Oriented Software Development (AOSD), March 2004. Google ScholarDigital Library
- Eidson, T., Dongarra, J. and Eijkhout, V.. 2003. Applying aspect-orient programming concepts to a component-based programming model. Proceedings International Parallel and Distributed Processing Symposium. Nice, France, 2003. DOI= 10.1109/IPDPS.2003.1213376. Google ScholarDigital Library
- Diaz, M., Romero, S., Rubio, B., Soler, E. and Troya, J. M.. 2005. An Aspect Oriented Framework for Scientific Component Development. 13th Euromicro Conference on Parallel, Distributed and Network-Based Processing. Lugano, Switzerland. 290--296. DOI= 10.1109/EMPDP.2005.11. Google ScholarDigital Library
- S.Subotic and J. Bishop. 2005. Emergent behaviour of aspects in high performance and distributed computing. SAICSIT'05 Proceedings of the 2005 annual research conference of the South African institute of computer scientists and information technologists on IT research in developing countries. 2005. Google ScholarDigital Library
- Díaz, M., Romero, S., Rubio, B., Soler, E. and Troya, J. M.. 2009. Adding Aspect-Oriented Concepts to the High-Performance Component Model of SBASCO. 17th Euromicro International Conference on Parallel, Distributed and Network-based Processing. Weimar, Germany. 2009. 21--27. DOI= 10.1109/PDP.2009.46. Google ScholarDigital Library
- Kiczales, G., Hilsdale, E., et. al.. 2001. An Overview of Aspect J. Proc. of the Europe Conference on Object-Oriented Programming, Budapest, Hungary, LNCS 2072, pp. 327--353. Google ScholarDigital Library
- Harbulot, B., Gurd J.. 2004. Using AspectJ to Separate Concerns in Parallel Scientific Java Code. Proc. of the 3rd International Conference on Aspect-Oriented Software Development. Lancaster, UK, pp. 122. Google ScholarDigital Library
- Harbulot, B., Gurd, J.. 2006. A Join Point for Loops in AspectJ. Proc. of the 5th International Conference on Aspect-Oriented Software Development. Bonn, Germany, 63--74, 2006. Google ScholarDigital Library
- Sobral, J. L.. 2006. Incrementally Developing Parallel Applications with AspectJ. Proc. of the 20th International Parallel and Distributed Processing Symposium. Rodhes, Greece. pp. 10. Google ScholarDigital Library
- Pichler, R., Ostermann, K. and Mezini. M.. 2003. On aspectualizing component models. Software, Practice and Experience, 33(10):957--974, 2003.Google ScholarCross Ref
- Armstrong, R., Kumfert, G., et. al.. 2006. The CCA Component Model for High Performance Scientific Computing, Concurrency and Computation: Practice and Experience, 18 (2), pp. 215--229. Google ScholarDigital Library
- Vanneschi, M.. 2002. The Programming Model of ASSIST, an Environment for Parallel and Distributed Portable Applications. Parallel Computing, 28 (12), pp. 1709--1732. Google ScholarDigital Library
- Pérez, C., Priol, T. and Ribes, A.. 2004. PaCO++: A Parallel Object Model for High-Performance Distributed Systems. Proc. Of 37th Hawaii International Conference on System Sciences, Hawaii, USA, pp. 274. Google ScholarDigital Library
- Papapetrou O., and Papadopoulos G.. 2004. Aspect oriented programming for a component based real life application: A case study. Symposium on Applied Computing Software Engineering track. Google ScholarDigital Library
- Quenette, S., Moresi, L., Sunter, P. D. and Appelbe, B. F.. 2007. Explaining StGermain: An aspect oriented environment for building extensible computational mechanics modeling software. IEEE International Parallel and Distributed Processing Symposium. Long Beach, USA. March, 2007. 1--8. DOI= 10.1109/IPDPS.2007.370400Google Scholar
- Nuseibeh, B., Easterbrook S.. 2000. Requirements Engineering: A Roadmap. The Future of Software Engineering, IC on Software Engineering, Ireland, pp. 35--46. Google ScholarDigital Library
- Tavolato, P. and Vincena, K.. 1984. A Prototyping Methodology and Its Tool. Approaches to Prototyping. Springer Verlag.Google Scholar
- Da Silva, W. C., Galvão, L. E.. Paradigma: Uma Ferramenta de Apoio à Elicitação e Modelagem de Requisitos Baseada em Processamento de Linguagem Natural. WER'08, Barcelona, España, 2008. 140--151.Google Scholar
- Kotonya, G. and Sommerville, I.. 1998. Requirements Engineering: Processes and Techniques. John Wiley and Sons. Google ScholarDigital Library
- IEEE. 1990. Standard Glossary of Software Engineering Terminology 610.12-1990. Institute of Electrical and Electronics Engineers.Google Scholar
- Sampaio, J. C., de Moraes, E. A. and Portela, C. E.. 2007. A Strategy for Information Source Identification. WER'07, Toronto, 25--34.Google Scholar
- Davis, A., Dieste O., Hickey, A., Juristo, N., and Moreno, A. M.. 2006. Effectiveness of Requirements Elicitation Techniques: Empirical Results derived from a Systematic Review. 14th IEEE IC Conference on Requirements Engineering. Minneapolis, 2006. 179--188. Google ScholarDigital Library
- Szyperski C.. 1998. Component Software: Beyond Object-Oriented Programming. Addison-Wesley. Google ScholarDigital Library
- Bhuta J., Boehm B.. 2007. Attribute-Based COTS Product Interoperability Assessment. ICCBSS '07, IEEE Computer Society, 2007, 163--171. Google ScholarDigital Library
- LUSITANIA Supercomputer. CénitS (Research, Technological Innovation and Supercomputing Center of Extremadura). http://www.cenits.esGoogle Scholar
Index Terms
- Methodology and framework for the development of scientific applications with high-performance computing through web services
Recommendations
High-Performance Computing Applications on Novel Architectures
As chip designers struggle to increase the speed of conventional microprocessors, the scientific computing community is turning its attention to alternative architectures that utilize computational accelerators to improve the application performance. ...
High-Performance Computing Education
Many successful efforts are currently addressing the critical shortage of a diverse, well-prepared high-performance computing (HPC) workforce. The guest editors' goal, with this issue, is to stimulate large-scale international discourse to accelerate ...
A power-measurement methodology for large-scale, high-performance computing
ICPE '14: Proceedings of the 5th ACM/SPEC international conference on Performance engineeringImprovement in the energy efficiency of supercomputers can be accelerated by improving the quality and comparability of efficiency measurements. The ability to generate accurate measurements at extreme scale are just now emerging. The realization of ...
Comments