owned this note
owned this note
Published
Linked with GitHub
### PDC Introduction 2024
----------------------------
**Date:** 21st to 22nd March 2024.
**Time:** 9:00 to 12:00 Local Time in Stockholm (CET).
**Place:** Online via Zoom.
## Schedule
| Day 1: General introductions | Time | Presentations | Presenter |
|--------------------------------------------------------------|---------------|-----------------------------------------------|------------|
| Welcome | 9:00 - 9:05 | | Juan de Gracia |
| First presentation: How to login and module environment. | 9:05 - 9:45 | - How to login and module environment. | Henric Zazzi |
| | | - Best practices. | |
| | | - Intro to slurm. | |
| | | - ThinLinc. | |
| 15 min break | | | |
| Second presentation: Using python in Dardel. | 10:05 - 10:45 | - Using python in Dardel | Juan de Gracia |
| | | - Jupyter notebooks and conda environments. | Juan de Gracia |
| 15 min break | | | |
| Third presentation: Singularity | 11:00 - 11:45 | - Singularity | Henric Zazzi |
| Wrap-up | 11:45 - 12:00 | - Q and A. | All |
| Day 2: Scientific area specific and advanced topics | Time | Presentations | Presenter |
|--------------------------------------------------------------|---------------|----------------------------------------------|-----------------------------|
| First presentation: Introduction to compilation CPU/GPU | 9:00 - 9:45 | - Introduction to compilation CPU/GPU | Johan Hellsvik Xin Li |
| 15 min break | | | |
| Second presentation batch: Presentations on scientific areas | 10:00 - 10:50 | - Machine Learning | Mikael Djurfeldt|
| | | - Molecular Modelling | Juan de Gracia Alessandra Villa |
| | | - CFD | Arash Banaei |
| 10 min break | | | |
| | 11:00 - 11:30 | - Material Science | Johan Hellsvik |
| | | - Bioinformatics | Karl Johan Westrin |
| Wrap-up | 11:30 - 11:45 | - Q/A - Questionarie to the users | All |
## Important links
Repository for presentations and labs:
https://github.com/PDC-support/pdc-intro
### Course material
### Evaluation form
## Support information
### PDC web portal
https://www.pdc.kth.se/
### Client software for kerberos installation
https://www.pdc.kth.se/support/documents/login/login.html#step-by-step-login-tutorial
### NAISS rules for applying to allocations
https://www.naiss.se/allocations/
### SUPR portal to submit proposals
https://supr.naiss.se/
## Questions
### Day 1:
#### How to login and module environment
**Post your questions here:**
Example:
Q: *How do I log in with SSH?*
A: *We will answer here*
Q: What is the difference of running jobs with shared node (-p)? Thanks!
A: When using a shared node you only get a number of cores on that node, which you specify. Otherwise you get an exclusive node meaning that you get exclusive access to all cores on the node.
Q: Is it possible to have one job running on two (or more) nodes?
A: Yes. You can send in job requests for as many nodes as you need. In short just add *-N <nodes>* as shown on the slide. Here are a couple of example scripts https://www.pdc.kth.se/support/documents/run_jobs/job_scripts_dardel.html
Q: With SSH login method key, every time you connect to new ip address, do you have to upload a new key?
A: Yes, but you can add a range so the whole range is approved for you to login from.
Q: When I log in it says /usr/bin/manpath: can't set the locale; make sure $LC_* and $LANG are correct
Is that a problem?
A: Check if there are any custom configurations in your user profile (~/.bashrc, ~/.bash_profile, ~/.profile, etc.).
Q: It doesn't work to open any of those, it just says no such file or directory
A: Yes, those are for AFS in case. There no such ones on dardel, so it should be ok.
Q: Ok good. Thank you
Q: Where I can find instructions on Thinlinc configuration? It returns an error, that ssh succeeded, but ThinLinc server connection failed.
A: Instructions can be found here: https://www.pdc.kth.se/support/documents/login/interactive_hpc.html. You wil get a login window asking for Authentication on startup, but please just press cancel and it will work.
Q:
A:
#### Using python in Dardel
**Post your questions here:**
Q: When you create an environment with `conda create --name my-conda-env`, does it matter which environment you currently have active?
A: In general we recommend creating new environment from the base environment. Creating new env when other env is active probably works as well, but we have not tested that.
#### Python and virtual environments
**Post your questions here:**
Q: Hi, virtual environment setup should in log-in node @uan01 or we should setup in work node?Thanks
A: It depends. In general you can do the setup on the login-node. If you are doing more extensive work with Conda virtual environments, it is better to request a node for interactive use.
Q: If we want to install other lib for python, is it also in virtue environment? like from github
A: That would be our recommendation. Once you have created your virtual environment you can just `conda install <lib_name>` and it will stay installed in your environment.
Q: After create the environment, it is permanently created or we need to re-create this virtue environment sometimes?
A: It's permanently as long as your folder exists :) If you want to delete an environment one needs to actively remove it with: `conda env remove --name my_env`
Thanks!
Q:To use SSH keys to identify at Thinlic client (for interactive HPC at Dardel, for example jupyter notebook and browser) is it required to use another SSH key than the one we have already to access to PDC through the terminal? (can we use the same one?) or are we required to create and pair and independent SSH key? Thanks! (It tells me "The specified key has too open rights")
A: Not in my understanding, it should run without issues with you SSH key. Just make sure to specify your preferred authentication way in the thinlinc start screen.
Q: If creating a conda env in login node, can we submit jobs requiring that environment on other nodes?
A: The conda environment is not bound to the node but your home directory/project directory where you have created the conda env. The simple answer is yes, you can use your env on the compute nodes, since the env stays in a folder and the file system is shared across the nodes. So it should not be a problem :)
Reply: Wonderful! Thank you :)
#### Singularity
**Post your questions here:**
Q: Can I prepare a recipe to modify another container pulled from web and save it as my SIF file?
A: Yes
Q: Can I use writable-tmpfs when using singularity exec?
A: Yes, you can. Have in mind though that the data will be deleted when the container finishes.
Q: When I run the command "singularity shell --writable-tmpfs mycontainer.sc", I got the message:
INFO: Converting SIF file to temporary sandbox...
WARNING: Disabling --writable-tmpfs as it can't be used in conjunction with underlay
And this further led to the error as --writable-tmpfs is indispensable for my specific container. Do you have any idea about this? (It's weird that --writable-tmpfs can work on Tetralith. Is there any difference between the system of Dardel and Tetralith?)
A: I have not actually used the functionality, but have seen it should work according to documentations. Apparently it is disabled. The way to install singularity between Tetralith and Dardel surely is different, as we install it without root access.
Q: Does it mean that --writable-tmpfs is not allowed on Dardel?
A: It is allowed, but apparently does not work. I have to ask the system administrators to see if there is a way around it. At the moment singularity is, as said, installed by me without root access, which might limit its functionality in that department.
Reply: Thank you very much for your help!! :)
### Day 2:
#### Introduction to CPU and GPU compiling
**Post your questions here:**
Q: How can we get your slides, is it possible provide a link?
A: The slides will be available after the course in PDF format
#### Scientific areas:
##### Machine Learning:
**Post your questions here:**
Q: For PyTorch and TensorFlow, seems that the main API for using the frameworks is via Python. Out of curiousity, in what programming frameworks are the computational kernels of PT and TF implemented?
A: In both cases, the computational kernel is written in C++, but the frameworks also employ conversion to low-level code and Just-In-Time compilation.
Q: **
A: **
##### Molecular modelling:
**Post your questions here:**
Q: What kind(s) of TD-DFT is implemented in VeloxChem, linear response and/or real time propagation?
A: Is linear response based :)
Q: **
A: **
##### Computational Fluid Dynamics (CFD)
**Post your questions here:**
Q: **
A: **
##### Material Science:
**Post your questions here:**
Q: What's the purpose of setting "ulimit -Ss unlimited"?
A: The ulimit command species the size of various resources for a program, in the current case the stacksize available for the program. The `-S` flag specifies a soft resource limit, the `-s` flag the maximum stacksize. The `OMP_STACKSIZE` environment variable indicates the stack size of threads created by the OpenMP run time.
##### Bioinformatics
**Post your questions here:**
Q: **
A: **
#### Wrap-up:
**Please make suggestions to improve and suggestions about how would you like to receive support.**
##### Training suggestions?
**After the overall view on PDC, is there any specific topic you would like to receive training?**
**Is there any software presented here for which you would like to have training?**