Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • wslda wslda
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • wtools
  • wsldawslda
  • Wiki
  • Installing the toolkit

Installing the toolkit · Changes

Page history
Update Installing the toolkit authored Oct 16, 2025 by Gabriel Wlazłowski's avatar Gabriel Wlazłowski
Hide whitespace changes
Inline Side-by-side
Installing-the-toolkit.md
View page @ 034b4aab
...@@ -11,11 +11,11 @@ ...@@ -11,11 +11,11 @@
* [ELPA library](https://elpa.mpcdf.mpg.de/) (optionally) * [ELPA library](https://elpa.mpcdf.mpg.de/) (optionally)
* [CUDA compiler](https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html) (optionally, for ELPA) * [CUDA compiler](https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/index.html) (optionally, for ELPA)
*Note 1*: compilers and libraries (FFTW, LAPACK, ScaLAPACK) are installed by default on most of the computing clusters. If the computing system is equipped with GPUs most likely CUDA Toolkit is also installed. On many systems, ELPA is also installed by default. If not you can compile it yourself. *Note 1*: compilers and libraries (FFTW, LAPACK, ScaLAPACK) are installed by default on most of the computing clusters. If the computing system is equipped with GPUs, it is likely that the CUDA Toolkit is also installed. On many systems, ELPA is also installed by default. If not, you can compile it yourself.
*Note 2*: LAPACK and ScaLAPACK libraries are part of Intel® Math Kernel Library. *Note 2*: LAPACK and ScaLAPACK libraries are part of Intel® Math Kernel Library.
*Note 3*: It is recommended to use `st-wslda` with ELPA support if possible. It provides substantial speed-up of the computation process. See [here](ELPA installation guide) for more instructions related to installing ELPA. *Note 3*: It is recommended to use `st-wslda` with ELPA support if possible. It provides a substantial speed-up of the computation process. See [here](ELPA installation guide) for more instructions related to installing ELPA.
## Time-dependent codes (td-wslda) ## Time-dependent codes (td-wslda)
* C compiler (eg. `gcc`, intel compiler `icc`, ...) * C compiler (eg. `gcc`, intel compiler `icc`, ...)
...@@ -30,15 +30,15 @@ It is recommended to download the toolkit directly from the repository using git ...@@ -30,15 +30,15 @@ It is recommended to download the toolkit directly from the repository using git
```bash ```bash
git clone https://gitlab.fizyka.pw.edu.pl/wtools/wslda.git git clone https://gitlab.fizyka.pw.edu.pl/wtools/wslda.git
``` ```
Optionally you can download it manually from [main webpage](https://gitlab.fizyka.pw.edu.pl/wtools/wslda). Optionally, you can download it manually from [main webpage](https://gitlab.fizyka.pw.edu.pl/wtools/wslda).
The toolkit is contained in `wslda` folder; see [here](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/wikis/Folders-structure) for more info about content. The toolkit is contained in the `wslda` folder; see [here](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/wikis/Folders-structure) for more info about the content.
# Compaling standard libraries and tools (Optionally) # Compiling standard libraries and tools (Optionally)
The toolkit has various [libs](https://gitlab.fizyka.pw.edu.pl/wtools) tools supporting the computation process. See [here](Auxiliary tools) for available tools. While it is not mandatory, we recommend compiling them at the stage of the installation process. You can do it by executing the provided script in the main folder: The toolkit has various [libs](https://gitlab.fizyka.pw.edu.pl/wtools) tools supporting the computation process. See [here](Auxiliary tools) for available tools. While it is not mandatory, we recommend compiling them during the installation process. You can do it by executing the provided script in the main folder:
``` ```
./install-libs.sh ./install-libs.sh
``` ```
Once the compilation is finished, you will get instructions on how to set system variables in order to be able to use W-SLDA Toolkit, for example Once the compilation is finished, you will get instructions on how to set system variables in order to be able to use the W-SLDA Toolkit, for example
``` ```
gabrielw@e1135:~/grant_518/project_data/wslda$ ./install-libs.sh gabrielw@e1135:~/grant_518/project_data/wslda$ ./install-libs.sh
Installing libs... Installing libs...
...@@ -65,9 +65,9 @@ The user starts with a project template where items like external potential, pai ...@@ -65,9 +65,9 @@ The user starts with a project template where items like external potential, pai
Within these folders, `Makefile` and `machine.h` files compatible with your computing system must be provided. Within these folders, `Makefile` and `machine.h` files compatible with your computing system must be provided.
In the [templates](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates) folder, there are provided examples of machine-dependent files for various systems. The systems are listed in [templates/README.md](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates/README.md). In the [templates](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates) folder, examples of machine-dependent files for various systems are provided. The systems are listed in [templates/README.md](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates/README.md).
To copy templates for the selected machine, you can use script [install-templates.py](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/install-templates.py), for example: To copy templates for the selected machine, you can use the script [install-templates.py](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/install-templates.py), for example:
```bash ```bash
[gabrielw@dell cold-atoms]$ ./install-templates.py eagle [gabrielw@dell cold-atoms]$ ./install-templates.py eagle
cp -r /home/gabrielw/MyProjects/cold-atoms/templates/eagle/st/* /home/gabrielw/MyProjects/cold-atoms/st-project-template cp -r /home/gabrielw/MyProjects/cold-atoms/templates/eagle/st/* /home/gabrielw/MyProjects/cold-atoms/st-project-template
...@@ -95,12 +95,12 @@ If the process finishes successfully, executables `st-wslda-?d` will be created. ...@@ -95,12 +95,12 @@ If the process finishes successfully, executables `st-wslda-?d` will be created.
*Note 1*: The ELPA Library must be in addition activated in [machine.h](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/st-project-template/machine.h) file. To learn more about ELPA see [here](Setting up diagonalization engine). *Note 1*: The ELPA Library must be in addition activated in [machine.h](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/st-project-template/machine.h) file. To learn more about ELPA see [here](Setting up diagonalization engine).
*Note 2*: `st-wslda` codes utilizes LAPACK and ScaLAPACK libraries. The standard method of calling Fortran functions from C requires supplementing routine's names by `_` at the end, i.e fortran routine `DGEMM` is called from C as `dgemm_`. However, in cases of some systems/compilers (very rare) it is not needed. If this is the case of your system then you need to add to `CFLAGS` flag *Note 2*: `st-wslda` codes utilize LAPACK and ScaLAPACK libraries. The standard method of calling Fortran functions from C requires supplementing routine names by `_` at the end, i.e, Fortran routine `DGEMM` is called from C as `dgemm_`. However, in cases of some systems/compilers (very rare), it is not needed. If this is the case with your system, then you need to add to `CFLAGS` flag
`-DFOTRAN_NO_UNDERSCORE`. `-DFOTRAN_NO_UNDERSCORE`.
*Note 3*: In some cases, additional information about the architecture of the computing system must be provided in [machine.h](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/st-project-template/machine.h) file. For more information see [here](Configuring GPU machine). *Note 3*: In some cases, additional information about the architecture of the computing system must be provided in [machine.h](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/blob/public/st-project-template/machine.h) file. For more information, see [here](Configuring GPU machine).
*Recommendation*: Typically (super)computers utilize the `module load` system to configure the programming environment. We recommend placing a list of modules in a separate file, for example `env.sh`: *Recommendation*: Typically, (super)computers utilize the `module load` system to configure the programming environment. We recommend placing a list of modules in a separate file, for example, `env.sh`:
```bash ```bash
module load daint-gpu module load daint-gpu
module swap PrgEnv-cray PrgEnv-gnu/6.0.9 module swap PrgEnv-cray PrgEnv-gnu/6.0.9
...@@ -120,7 +120,7 @@ make ...@@ -120,7 +120,7 @@ make
``` ```
## Testing of execution ## Testing of execution
Execute the binary codes. Below an example of a test for static 2d code is presented: Execute the binary codes. Below is an example of a test for static 2d code:
```bash ```bash
[gabrielw@dell st-testcase-uniform]$ mpirun -np 4 ./st-wslda-2d input.txt [gabrielw@dell st-testcase-uniform]$ mpirun -np 4 ./st-wslda-2d input.txt
``` ```
...@@ -162,15 +162,15 @@ Visit plugin is located in [lib/wdata/visit-plugin](https://gitlab.fizyka.pw.edu ...@@ -162,15 +162,15 @@ Visit plugin is located in [lib/wdata/visit-plugin](https://gitlab.fizyka.pw.edu
Follow instructions from [README.txt](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/lib/wdata/visit-plugin/README.txt) file to install it. Follow instructions from [README.txt](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/lib/wdata/visit-plugin/README.txt) file to install it.
# Creating templates of submission scripts & REAMD.md (optional) # Creating templates of submission scripts & REAMD.md (optional)
It is recommended to place in template folders submission scripts suitable for your computer, and README.md file with instructions for users. Examples of submission scripts and README.md files can be found in the folder [templates](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates). It is recommended to place the submission scripts in template folders suitable for your computer, along with a README.md file that provides instructions for users. Examples of submission scripts and README.md files can be found in the folder [templates](https://gitlab.fizyka.pw.edu.pl/wtools/wslda/-/tree/public/templates).
# Making W-SLDA Toolkit accessible to other users (optional) # Making W-SLDA Toolkit accessible to other users (optional)
To make W-SLDA Toolkit accessible to other users, ensure that `wslda` is placed in a readable location for all users. Make sure that permissions are set correctly, for example: To make the W-SLDA Toolkit accessible to other users, ensure that `wslda` is placed in a location that is readable by all users. Make sure that permissions are set correctly, for example:
```bash ```bash
chmod -R a+r wslda chmod -R a+r wslda
``` ```
Provide to users path to W-SLDA Toolkit. Users can place it in `.bashrc` file, for example: Provide users with a path to the W-SLDA Toolkit. Users can place it in `.bashrc` file, for example:
```bash ```bash
export WSLDA=/project/pr91/share/wslda/ export WSLDA=/project/pr91/share/wslda/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/project/pr91/share/wslda/lib/wdata:/project/pr91/share/wslda/lib/wderiv:/project/pr91/share/wslda//lib/winterp export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/project/pr91/share/wslda/lib/wdata:/project/pr91/share/wslda/lib/wderiv:/project/pr91/share/wslda//lib/winterp
......
Clone repository

Content of Documentation
Official webpage
W-BSK Toolkit