![]() To add an analysis routine to SENSEI, one provides a concrete implementation for the analysis adaptor API. Thus when no analysis is enabled, the SENSEI instrumentation overhead is almost nonexistent. By providing an API that encourages lazy mapping to VTK data model for the mesh and attribute arrays, the data adaptor avoids any work to map simulation data to VTK data when not needed. The data adaptor API provides the analysis code with access to mesh and attributes arrays as needed. ![]() To instrument an application with SENSEI, one provides a concrete implementation for the data adaptor API. initialize the data adaptor and execute selected analysis routines. The in situ bridge is a simple mechanism to put together the analysis workflow i.e. The analysis adaptor passes the data described in form of VTK data objects to any analysis code, doing any necessary transformations. The data adaptor provides a mapping between simulation data structures and the VTK data model. The figure shows the main components of the SENSEI interface. This allows for mapping data arrays from application codes to the VTK data model without additional memory copying (zero-copy).īesides the data model, the other components that comprise the SENSEI interface are simple and quite light weight. VTK now natively supports the commonly encountered structure-of- arrays and array-of-structures layouts. To minimize effort and memory overhead when mapping memory layouts for data arrays from applications to VTK, we enhanced the VTK data model to support arbitrary layouts for multi-component arrays. ![]() The VTK data model is widely used in the scientific and engineering data analysis and visualization community, leveraged by visualization tools like ParaView and VisIt and hence already familiar to a broader community. For the SENSEI interface, we selected the VTK data model. This write once, use anywhere goal is only achievable when we have a mutually agreed platform for communicating the data between the simulation and analysis components – the data model. Furthermore, since ParaView/Catalyst and VisIt/Libsim both are treated as analysis routines under SENSEI, these visualizations can be run in situ, or in transit using ADIOS transparently. For example, if the application is instrumented with the SENSEI interface, application end-users can easily choose between ParaView/Catalyst and VisIt/Libsim for generating visualizations in situ. Both of these components are independent of the in situ infrastructure being used and hence provide both the simulation and the analysis routine isolation from which in situ infrastructure is being used. Second, it provides analysis developers with a data model that they may use to write analysis routines. First, it provides application developers with a generic data interface that they then tailor for a particular use. The SENSEI generic data interface addresses both these key challenges. It is not feasible to write analysis code once and use it in various infrastructure without modifications. Second, on the analysis side, analysis developers face the challenge of having to decide on the infrastructure in which to implement their analysis. Each infrastructure has their own idiosyncrasies that the application developer has to endure, including mapping simulation data structures to the target infrastructure. Presently, one has to instrument their simulation codes separately for each of the infrastructures. First, on the simulation side, is the complexity of instrumenting simulation codes to use any in situ infrastructure. There are two main challenges to using in situ analysis for advanced modeling and simulation workflows. SENSEI then passes this data to zero or more analysis and visualization tasks each time the simulation provides more data. SENSEI provides simulations with a generic data interface that they use to provide access to their state.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |