This is the multi-page printable view of this section. Click here to print.
Frequently Asked Questions
- 1: Acccess SCOREC computer files from Windows
- 2: Connect to Aperture
- 3: Convert Gmsh and other meshes to Omega_h OSH format
- 4: Create a config file for ssh to connect to the Lab computers easily
- 5: Find the NVIDIA GPU architecture
- 6: Manage your space on SCOREC machines
- 7: Set up SSH on lab computers for passwordless login to the Lab computers
1 - Acccess SCOREC computer files from Windows
- Press
Win + R
to open theRun
dialog box. - Type
\\samba.scorec.rpi.edu
in theOpen
field and clickOK
or pressEnter
. - When prompted, enter your RCS ID and password.
- You will see a list of folders. Open the folder with your RCS ID.
You can now access your files on the SCOREC machines. You will also be able to use the SCOREC printers with this. Visit this SCOREC wiki page for more information.
2 - Connect to Aperture
- Add the following lines to the
config
file in the.ssh
directory in your home directory:
Host aperture01
HostName jumpgate.scorec.rpi.edu
User your_username
ProxyJump jumpgate
LocalForward 5906 aperture01.scorec.rpi.edu:3389
replace your_username
with your RCS ID.
Open a terminal window on your computer. On Windows, you can use the Git Bash terminal that comes with Git for Windows. On Mac, you can use the Terminal application. On Linux, you can use the terminal application that comes with your distribution.
Type the following command in the terminal window:
ssh aperture01
When prompted, enter your RCS ID password. Or you can set up ssh on lab computers for passwordless login to the Lab computers.
Search for
Remote Desktop Connection
in the start menu and open it.In the
Remote Desktop Connection
window, typelocalhost:5906
in theComputer
field and clickConnect
.When prompted, enter your RCS ID password. Or you can set up ssh on lab computers for passwordless login to the Lab computers.
You will be connected to the Aperture computer. You can now use the computer as if you are sitting in front of it.
3 - Convert Gmsh and other meshes to Omega_h OSH format
Common types of mesh files can be converted to Omega_h’s OSH format using the omega_h utility programs. Find more details about the utility programs in the Omega_h documentation. The following examples show how to convert Gmsh to OSH format.
Convert Gmsh to OSH format
- Find the utility programs in the SCOREC machines. You can find them in the following directories:
/lore/hasanm4/Omega_H/bin/
(if it is not available, you can contact us or build it from the source code)
- Add the directory to your
PATH
environment variable. For example, if you are using bash, you can execute the following command:export PATH=/lore/hasanm4/Omega_H/bin/:$PATH
- Add the directory to your
LD_LIBRARY_PATH
environment variable using the following command:export LD_LIBRARY_PATH=/lore/hasanm4/Omega_H/lib64/:$LD_LIBRARY_PATH
- Gmsh is also needed to convert the mesh to Omega_h format. Get the Gmsh executable using the following command:
export PATH=/lore/hasanm4/Gmsh/bin/:$PATH export LD_LIBRARY_PATH=/lore/hasanm4/Gmsh/lib64/:$LD_LIBRARY_PATH
- Now the environment should be ready for the conversion. If you have
.geo
mesh script file, you can convert it to.msh
file using the following command:(it must be of order 1 and here mesh format 2 is shown since it was used for with MFEM and MFEM only supports mesh format 2) (consult the Gmsh documentation for more details about the command line options)gmsh -3 -format msh2 -order 1 -o mesh.msh mesh.geo
Important notes: Omega_h supports both 2D and 3D meshes with triangles and tetrahedra. It does not support quadrilaterals, prisms, and hexahedra. (omega_h can only accept linear simplices and hypercubes from Gmsh) Make sure that the mesh is composed of linear triangles and tetrahedra. Gmsh documentation has more details about the element types.
- Now the mesh is ready to be converted to OSH format. Use the following command to convert the mesh to OSH format:
gmsh2osh mesh.msh mesh.osh
4 - Create a config file for ssh to connect to the Lab computers easily
Create or open a file in the
.ssh
directory in your home directory. For example, you can create a file namedconfig
in the.ssh
directory.Add the following lines to the file:
Host jumpgate
HostName jumpgate.scorec.rpi.edu
User your_username
Host monopoly
HostName monopoly
User your_username
ProxyJump jumpgate
Host aperture01
HostName jumpgate.scorec.rpi.edu
User your_username
ProxyJump jumpgate
LocalForward 5906 aperture01.scorec.rpi.edu:3389
replace your_username
with your RCS ID or SCOREC username.
Save the file.
Now, you can connect to the Lab computers using the following commands:
ssh monopoly
5 - Find the NVIDIA GPU architecture
- Go the the terminal and type
nvidia-smi
- The output will look like this:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.xx.xx Driver Version: 515.xx.07 CUDA Version: 11.7 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro P1000 Off | 00000000:01:00.0 On | N/A |
| 34% 41C P8 N/A / N/A | 299MiB / 4096MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
From the output, you can see that the GPU is Quadro P1000. Now, go to the NVIDIA website and find the GPU Compute Capability. In this case, the compute capability is 6.1.
Each major version of Compute Capability has a corresponding architecture. This table gives the mapping between the Compute Capability and the architecture:
Compute Capability | Architecture |
---|---|
5.x | Maxwell |
6.x | Pascal |
7.x | Volta |
7.5 | Turing |
8.x | Ampere |
8.9 | Ada |
9.x | Hopper |
10.x | Balackwell |
Since NVIDIA changes the link to the GPU architecture documentation, it’s difficult to provide a direct link where you can find the above information. However, look here for more information:
- Therefore, for this GPU, the architecture is Pascal and the CUDA capability is 6.1. And for pcms, you will write
PASCAL61
.
6 - Manage your space on SCOREC machines
5 GB of space is given for each user in the home directory and 500 GB is given in the /lore/your-username
directory. Both the home and lore directories are shared across all SCOREC machines. The home directory is backed up regularly, but the lore directory is not. So, it is recommended to use the lore directory for large files (e.g. installations) and the home directory for small files (e.g. source files you are working on).
Quick tip for using VSCode on SCOREC machines remotely
VSCode creates a .vscode-server
directory in your home directory when you connect to a remote machine for the first time. This directory can grow to a large size (e.g. 1 GB) if you use a lot of extensions. So, it is recommended to change the settings before the first remote connection using vscode as follows: (in the json file that opens when you click on the gear icon on the bottom left corner of VSCode)
"remote.SSH.serverInstallPath": {
"machine_name1": "/lore/your-username/your-preferred-directory",
"machine_name2": "/lore/your-username/another-or-same-preferred-directory"
}
replace machine_name1
and machine_name2
with the name of the machine you are using (e.g. romulus
). This will create the .vscode-server
directory in the specified location instead of your home directory.
You can also do the same thing on settings UI by searching for remote.SSH.serverInstallPath
and changing the value for each machine.
Change Chrome data directory to lore
If you are using Google Chrome on SCOREC machines, you can change the cache directory to lore to save space in your home directory. To do this, run the following command in the terminal:
mkdir /lore/your-username/path/to/cache/directory
change the path to the directory you want to use for cache. Then, run the following command: You have to be connected with X11 forwarding to run this command or directly run it on the machine.
google-chrome-stable --user-data-dir=/lore/your-username/path/to/cache/directory
This will save about half a GB of space in your home directory.
7 - Set up SSH on lab computers for passwordless login to the Lab computers
Open a terminal window on your computer. On Windows, you can use the Git Bash terminal that comes with Git for Windows. On Mac, you can use the Terminal application. On Linux, you can use the terminal application that comes with your distribution.
Type the following command in the terminal window:
ssh-keygen -t rsa
When prompted, enter a filename and location in which to save the key pair. For example, you can enter
~/.ssh/id_rsa
to save the key pair in the.ssh
directory in your home directory. You can also enter a passphrase to protect the private key. If you enter a passphrase, you will be prompted to enter it each time you use the key pair to log in to a remote computer.After the key pair is generated, type the following command to copy the public key to the remote computer:
ssh-copy-id username@jumpgate.scorec.rpi.edu
replace username
with your RCS ID.
For windows,
ssh-copy-id
is not available. You can manually copy the public key to the remote computer.- Open the public key file (e.g.,
~/.ssh/id_rsa.pub
) in a text editor. - Copy the contents of the file to the clipboard.
- Log in to the remote computer with
ssh remote_name
. - Open the
~/.ssh/authorized_keys
file in a text editor. And paste the contents of the clipboard to the end of the file. Save the file.
- Open the public key file (e.g.,
When prompted, enter the password for the remote computer. The public key will be copied to the remote computer and installed in the
~/.ssh/authorized_keys
file. You can now log in to the remote computer without entering a password.
Note: If it asks for a password even after following the above steps, it might be due to the permissions on the .ssh
directory or the authorized_keys
file. Make sure the permissions are set correctly as follows:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
this problem is relatively rare though.
Another common problem is the key is not added to the ssh agent or the agent is not running. The follwing steps can be followed to add the key to the agent and start the agent (for windows you need to use elevated powershell, i.e. run as administrator.):
# By default the ssh-agent service is disabled. Configure it to start automatically.
# Make sure you're running as an Administrator.
Get-Service ssh-agent | Set-Service -StartupType Automatic
# Start the service
Start-Service ssh-agent
# This should return a status of Running
Get-Service ssh-agent
# Now load your key files into ssh-agent
ssh-add $env:USERPROFILE\.ssh\id_ed25519
On Linux you can use the following commands to start the agent and add the key:
# start the agent
eval `ssh-agent -s`
# add the key
ssh-add ~/.ssh/id_rsa
The first command can also be added to the .bashrc
file so that the agent is started automatically when you open a terminal.