  The Mancha3D code is a versatile tool for numerical simulations of
magnetohydrodynamic processes in solar/stellar atmospheres. The code includes
non-ideal physics derived from plasma partial ionization, a realistic equation
of state and radiative transfer, which allows performing high quality realistic
simulations of magneto-convection, as well as idealized simulations of
particular processes, such as wave propagation, instabilities or energetic
events. The paper summarizes the equations and methods used in the Mancha3D
code. It also describes its numerical stability and parallel performance and
efficiency. The code is based on a finite difference discretization and
memory-saving Runge-Kutta (RK) scheme. It handles non-ideal effects through
super-time stepping and Hall diffusion schemes, and takes into account thermal
conduction by solving an additional hyperbolic equation for the heat flux. The
code is easily configurable to perform different kinds of simulations. Several
examples of the code usage are given. It is demonstrated that splitting
variables into equilibrium and perturbation parts is essential for simulations
of wave propagation in a static background. A perfectly matched layer (PML)
boundary condition built into the code greatly facilitates a non-reflective
open boundary implementation. Spatial filtering is an important numerical
remedy to eliminate grid-size perturbations enhancing the code stability.
Parallel performance analysis reveals that the code is strongly memory bound,
which is a natural consequence of the numerical techniques used, such as split
variables and PML boundary conditions. Both strong and weak scalings show
adequate performance up till several thousands of CPUs.
