For a quick overview on Fiend, please check the project's Gitlab repository.
We recommend using Docker images for running simulations on your personal
computer. For supercomputers and clusters, we recommend either installing
the entire package from source or with pip.
To use the prepared Docker image, first install Docker to your PC.
The docker image for
Fiend can fetched with the
command docker pull solanpaa/fiend. Please note that the image is a few GB in size.
By default, running the docker image for interactive process,
docker run -it solanpaa/fiend
drops you in a Unix shell. All the scripts are pre-installed,
and you can switch between the complex and
real PETSc installations with commands ml petsc/real and
ml petsc/complex.
You can inquire preinstalled commands from the docker image with
docker run solanpaa/fiend help
To enable GUIs for the scripts, you should launch the docker container with the commands executed on the HOST machine (works on Linux)
$ xhost +local:docker
$ docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -it solanpaa/fiend
As you probably wish to save the datafiles computed within the container, you
should create a directory data on your HOST and mount it to the container
with
$ docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -v `pwd`/data:/home/fiend/data:Z -it solanpaa/fiend
This also allows you to provide the laser parameters by saving it to a file
within data on the HOST and passing the argument --vecpot data/filename
to docker run solanpaa/fiend fiend_linpol_propagate.
For non-interactive use, you can pass the above command arguments corresponding to the script you would like to execute together with its arguments, e.g.,
$ docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -v `pwd`/data:/home/fiend/data:Z solanpaa/fiend fiend_linpol_tise --radius 10 --how_many 3
Parallelization of the linear algebra backend can be achieved with the flag
-e OPENBLAS_NUM_THREADS N of docker run. MPI-parallelized simulations
can be achieved with the environment variable NMPIPROC, e.g.,
$ docker run -e NMPIPROC=3 -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix:ro -v `pwd`/data:/home/fiend/data:Z solanpaa/fiend fiend_linpol_tise --radius 10 --how_many 3
Janne Solanpää
Content type
Image
Digest
Size
3.2 GB
Last updated
almost 8 years ago
docker pull solanpaa/fiend