Besides simulation codes, supporting tools and libraries have played an important role in large-scale parallel simulations. For instance, they are used to extract meaningful information from the simulation results in order to facilitate the understanding of the underlying physical phenomena, or they can provide better feedback during an engineering design process. Some examples of these essential supporting technologies are the computational grid generator, scientific visualization software, and data I/O management libraries. As the scale of simulations increasess, and when striving for better precision and performance, these supporting tools and libraries are required to scale accordingly to match the main parallel simulation codes. Taking this into consideration, we are developing supporting tools and libraries targeting production- level simulation codes developed for the K computer, and we are also making them available to the computational science community in an effort to help promote the practical usage of large-scale simulations.
Our software development includes: (1) a large-scale parallel visualization system (HIVE); (2) a performance monitoring library (PMlib); (3) a performance visualization system (TRAiL); (4) a parallel data I/O management library (xDMlib); and (5) a workflow management system (WHEEL).
It is worth noting that these new supporting tools and libraries are being developed as cross-platform software products targeting easy portability, maintenance, and a long-term development cycle. Therefore, besides the K computer, they are designed to run on most of the major computer systems, and also the Post-K computer system.