deisa development environment d2e
play

DEISA Development Environment D2E Mohammad Shahbaz Memon - PowerPoint PPT Presentation

DEISA Development Environment D2E Mohammad Shahbaz Memon Forschungszentrum Juelich GmbH www.deisa.eu EGI User Forum 2011 Vilnius - Lithuania RI-222919 . Deisa Development Environment (D2E) is a Eclipse-PTP based tool for scientific


  1. DEISA Development Environment D2E Mohammad Shahbaz Memon Forschungszentrum Juelich GmbH www.deisa.eu EGI User Forum 2011 Vilnius - Lithuania RI-222919

  2. . Deisa Development Environment (D2E) is a Eclipse-PTP based tool for scientific applications developers and researchers, offering a standardized and uniform interface to effectively and efficiently develop applications across the heterogeneous DEISA infrastructure. LRZ - Eclipse PTP Training 2 RI-222919

  3. Key Ideas • Tool for developing message-passing and OpenMP programs • Support for running, controlling, and monitoring programs on HPC sites • Support for profiling parallel programs LRZ - Eclipse PTP Training 3 RI-222919

  4. DEISA Development Environment – 1/2 D2E platform offers:  an effective environment to facilitate the development of scientific applications;  a common user interface to allow scientists operate across different computing platforms, while remaining agnostic to the actual tools deployed on the back-ends;  an integrated interface for developing, launching, debugging and profiling applications on DEISA infrastructure; LRZ - Eclipse PTP Training 4 RI-222919

  5. DEISA Development Environment – 2/2  a dynamic platform that can be easily extended to include new tools with the benefit to provide new functionalities;  a customizable interface that permits end users personalize views and perspectives according to their needs;  a simplified approach for porting applications across heterogeneous environments. LRZ - Eclipse PTP Training 5 RI-222919

  6. D2E components The D2E platform is based on Eclipse technology and integrates: a) exiting tools: – PTP (Parallel tools Platform) – CDT (C/C++ Development Tools) – RDT (Remote Development Tools) a) DEISA developments: – support for GSI-SSH authentication and security improvement for remote connections – support for Module configuration to automatically modify remote user session environment – integration with UNICORE Grid Middleware for job submission – integration with PARAVER for application profiling LRZ - Eclipse PTP Training 6 RI-222919

  7. DEISA Development Environment LRZ - Eclipse PTP Training 7 RI-222919

  8. Demonstration LRZ - Eclipse PTP Training 8 RI-222919

  9. Backup Slides LRZ - Eclipse PTP Training 9 RI-222919

  10. Eclipse-PTP in a nutshell LRZ - Eclipse PTP Training 10 RI-222919

  11. GSI-SSH Integration LRZ - Eclipse PTP Training 11 RI-222919

  12. UNICORE-PTP Integration LRZ - Eclipse PTP Training 12 RI-222919

  13. HPC Application Development - 1/2 Developing scalable applications is becoming ever more complex:  Inconsistent interfaces  Difficult to learn  Expensive to make  Slow to keep pace with mainstream application development environment technologies  Low productivity LRZ - Eclipse PTP Training 13 RI-222919

  14. HPC Application Development - 2/2 How Can We... ?  Enable ultra scalability  Minimize time to develop and port applications  Lower entry bar for new HPC developers  Maximize productivity LRZ - Eclipse PTP Training 14 RI-222919

  15. Eclipse-PTP in a nutshell  Eclipse is a Java-based integrated development environment (IDE): all the tools necessary to develop software (editors, compilers, debuggers, profilers, etc.) are accessible from a single GUI  Parallel Tools Platform (PTP) , extends Eclipse to support parallel computing platforms  C/C++ Development Tooling , extends Eclipse to support C/C++ application development LRZ - Eclipse PTP Training 15 RI-222919

  16. Coding & Static Analysis Eclipse provides a wide variety of coding assistance tools: • Project management • Editing and formatting • Navigation • Advanced searching • Refactoring • Version control LRZ - Eclipse PTP Training 16 RI-222919

  17. Coding & Static Analysis Static analysis tools • Provides “advanced” error checking • MPI analysis • Barrier deadlock detection • OpenMP analysis • Concurrency analysis • Common OpenMP problems LRZ - Eclipse PTP Training 17 RI-222919

  18. Coding & Static Analysis – C/C++ (CDT) • Standard (Makefile) and managed builders • Support for arbitrary toolchains • Visual debugging using GDB • High level views (outline view, call hierarchy, type hierarchy, include browser) • Advanced searching (types, functions, variables, declaration, reference, etc.) • Content assist (automatic completion in the editor) • Context sensitive help • Simple refactorings (rename, extract constant, more coming...) LRZ - Eclipse PTP Training 18 RI-222919

  19. Application Execution Extensible framework for launching & monitoring • System and node status information • Job status (e.g. position in queue) & application status • Job submission & control • Debugger launch • Plug-in adapters to support different resource managers • Job schedulers (e.g LoadLeveler) • Interactive runtime systems (e.g. PE or OpenMPI) • Local or remote system support • Command-line tools executed locally or via ssh connection • Remote proxy agent (can tunnel over ssh) LRZ - Eclipse PTP Training 19 RI-222919

  20. Eclipse Parallel Environment Plug-In • Support for running interactive Parallel Environment applications within the Eclipse PTP framework – with/without LoadLeveler • Support for submitting batch LoadLeveler jobs • Monitor status of running applications • Integrates with existing PTP resource scheduler views LRZ - Eclipse PTP Training 20 RI-222919

  21. Eclipse PTP Perspective Running PE Application LRZ - Eclipse PTP Training 21 RI-222919

  22. Remote Development Tools • Adds transparent remote development capability to CDT • Builds on changes introduced into CDT 5.0 that allow projects to reside remotely • Uses PTP service model to allow development services (e.g. build, index, launch, debug, etc.) to be independently selected as local or remote • Other parts of PTP also use the service model to ensure uniformity and ensure usability • Includes a new remote project creation wizard LRZ - Eclipse PTP Training 22 RI-222919

  23. References • DEISA - http:/www.deisa.eu • D2E - https://work.deisa.eu/svn/WP8/bundle • ECLIPSE - http://www.eclipse.eu • UNICORE - http://www.unicore.eu • PARAVER - http://www.bsc.es/paraver • ECLIPSE PTP - http://www.eclipse.org/ptp/ LRZ - Eclipse PTP Training 23 RI-222919

Recommend


More recommend