system and the MPI implementation for the super-
computer system. (This resolves the first difficulty
of the visualization in HPC.) In our proposal, the size
of the allocated nodes for visualization is very large;
it can be the same or even larger than the size of the
simulation nodes. (This resolves the second difficulty
of the para lleliza tion.)
A simple in-situ visualization loses the user’s inte-
ractivity such a s th e viewpoint control, which is very
important for effective a nalysis. We can overcome
this problem by making use of the multi-camera met-
hod proposed in (Kageyama and Yamada, 2014), in
which we apply multiple in-situ visualizations at once
from many view points scattered as dense as possible
in and around the simulation region. The abundant
nodes for the visualization enables us to perform such
a lavish v isualization style.
Using more nodes for the visualization than for
the simulation, our proposal can be regarded as a new
way of supercomputer usage: The machine is mor e
for the visualization rather than for the simulation.
It would not be unreasonable becau se, in extremely
large-scale HPC, researchers tend to spend more time
for the visualization than for the simulation.
We have developed an MPMD application in
which four MPI programs are executed at on c e. The
first program is for the simulation. Although we used
in this paper an MHD simula tion code as a test, this
simulation part is interchangeable in our framework.
To enab le visualization on CPU-based supercom-
puter systems with out GPU, we have developed a pa-
rallel visualization program based on KVS, which is
a general- purpose visualization framework written in
C++, in its off-screen rendering mode. To receive
data sent from simulation program, we implement a
wrapper layer for this visualization program in For-
tran 2003 over KVS.
We place a membrane-like layer betwee n the si-
mulation and the visualization pr ograms. One of the
purposes of the membrane is to fully separate the si-
mulation and visualization. From the simulation code
level, we do not “see” the existence of the visualiza-
tion program: We do not call any visualization-related
function from the simulation. All we have to do in
the simulation code is to th row numerical data to the
membrane. The invisibility reduces the burden of the
visualization-related works to simulation researchers
in realizing the in-situ visualization on supercompu-
ters. The membran e also prevents the simulation pro-
gram from being influenced by the visualization pro-
gram.
The membrane is implemented by two indepen-
dent MPI programs. The two programs correspond to
the front and back faces of the mem brane. The front
face is to receive numerical data from the simulation
and the back face is to pass the data to the visualiza-
tion.
As a proof-of-concept experiment, we have per-
formed a relatively a small-scale expe riment in which
70 M PI processes are invoked in total: 32 for the si-
mulation + 3 for the fron t face membrane + 3 for
the back face membrane + 32 for the visualization,
and confirmed that this in-situ visualization frame-
work works.
ACKNOWLEDGEMENTS
This work was supported by JSPS KAKENHI Grant
Numbers JP17H02998 and JP17K00169. This work
was also supported b y SCAT (Support Center for Ad-
vanced Telecom munications Te chnology Research,
Foundation) , Japan.
REFERENCES
Amdahl, G. M. (2007). Computer Architecture and Am-
dahl’s Law. IEEE Solid-State Circuits Newsletter,
12(3).
Bethel, E. W., Childs, H., and Hansen, C. (2013). High
performance visualization : enabling extreme-scale
scientific insight. CRC Press.
Buffat, M., Cadiou, A., Le Penven, L., and Pera, C. (2017).
In situ analysis and visualization of massively parallel
computations. International Journal of High Perfor-
mance Computing Applications, 31(1):83–90.
Kageyama, A. and Yamada, T. (2014). An approach to
exascale visualization: Interactive viewing of in-situ
visualization. Computer Physics Communications,
185:79–85.
Nonaka, J., Matsuda, M., Shimizu, T., Sakamoto, N., Fujita,
M., Onishi, K., Inacio, E. C., Ito, S., Shoji, F., and
Ono, K. (2018). A Study on Open Source Software for
Large-Scale Data Visualization on SPARC64fx based
HPC Systems. In International Conference on High
Performance Computing in Asia-Pacific Region, pages
278–288.
Sakamoto, N. and Koyamada, K. (2015). KVS: A simple
and effective framework for scientific visualization. J.
Adv. Simulation. Sci. Eng., 2(1):76–95.
Telea, A. (2014). Data visualization : principles and
practice. CRC Press, 2nd edition.