The paper addresses the problem of devising a systematic approach and software tools to support development of interactive supercomputer applications on the basis of low level codes that are typically used on supercomputers for numerical simulation and data processing. An interactive application should help a user to systematically organize all the activities associated with solution of some class of problems on remote high performance computing systems. Activities include input data preparation, chaining of remotely run computing jobs, visualization, search and comparison of results, performance optimization and others. A platform for development of interactive supercomputer applications is proposed. The core of the platform is a visual language that allows a developer to formally describe activities (operations) and their relations to immutable data objects (“inputs” and “outputs”). Such a representation of a problem domain contains information about meaningful combinations of operations and becomes a basis for automated derivation of necessary user scenarios. A developer collects a library of UI components to represent data objects and a library of program modules that implement operations. These libraries are used in generation of a web-application that provides end users with appropriate interface to support derived scenarios.
- Domain specific language
- Interactive supercomputer application
- Structural synthesis of programs
- User interfaces
- 1.02 COMPUTER AND INFORMATION SCIENCES
- 1.02.EX COMPUTER SCIENCE, THEORY & METHODS
- 2.02 ELECTRICAL ENG, ELECTRONIC ENG