Skip to main content

HPC Instructions

Prerequisites

Please send an email to help@sciences.ncsu.edu requesting access be granted to the cluster. We wish to restrict access to Department students only.

Off campus users must be connected to the NCSU VPN service before attempting the following instructions.

Overview

  1. Transfer your code to the server via scp/sftp.
  2. Login to the server via ssh.
  3. bwsubmit your program once logged in.
  4. exit — log off and wait for an email.
  5. Transfer your results from the server via scp/sftp.
  6. Repeat as needed.

File Transfer

You need to transfer your files to and from the cluster. This is done using SFTP protocol.

Mac Computer (terminal):

  • scp program.r unityid@hpc.stat.ncsu.edu
  • scp unityid@hpc.stat.ncsu.edu:program.out ~/Documents

Windows Computer (winscp)

  • server: hpc.stat.ncsu.edu
  • login: UNITYID
  • password: MyPack Password
  • Drag and Drop Files to and from HPC server

Login to Server

Mac Computer (terminal)

ssh unityid@hpc.stat.ncsu.edu

Windows Computer (putty)

  • server: hpc.stat.ncsu.edu
  • login: UNITYID
  • password: MyPack Password

Submit Program

  • bwsubmit: will submit a job that will allow you to use 1 processor core and up to 8GB of RAM. The run time limit is 1 day (24 hours) for these jobs. This is meant for people who need to run many quick scripts. If your code runs for more than 1 day or you need more than 8GB of RAM, you should to use parallel programming and run with bwsubmit_multi. Because the limit is 1 day, you can use 50 cores at a time. There is a separate machine and queue for 1 processor jobs, so 128 total cores are available all users combined. After 128 cores are in use, jobs will queue up. Job run times may vary significantly because hyper-threading is enabled on this machine to utilize it completely.
  • bwsubmit_multi : will schedule a job using 4, 8, or 16 processor cores each and 8GB of RAM for each processor core. Request multiple processors to get more memory allocation, even if you do not use the cores. Your job will also be limited to the number of processors you request. If you try to use more than you have requested, the performance of your program will suffer greatly. The BLAS/LAPACK libraries will automatically use the number of cores you request.

Important Notes: If your program uses more than the allocated amount of RAM, or your job runs for more than 1 day with bwsubmit, 10 days with bwsubmit_multi, the scheduler will kill your job. You can have up to 32 cores worth of jobs running at a time (16 max per job). If the cluster fills up completely, it will limit everyone to 16 cores running at a time to try to serve more people. It automatically adjusts every hour. Do not submit jobs under other users names to bypass the per user core limit. This is a violation of NC State policies and both accounts will be heavily restricted or removed from the cluster.

Command Syntax

  • bwsubmit [program] [fiilename]
  • bwsubmit_multi [cores] [program]

Examples:

  • bwsubmit sas program .sas
  • bwsubmit_multi 4 sas program.sas
  • bwsubmit r program.r
  • bwsubmit_muliti 8 r program.r

Warning: Avoid spaces in program names and pay close attention to filename case.

R Package Verification

  • R-PkgCheck {package_name1 package_name2}
  • Example: R-Pkgcheck akima fields

View Page

Useful Cluster Commands

  • bwcheck – Check the status of the jobs/queues.
  • bwkill {jobnum} – To stop/kill a submitted job.
  • bwload – To see the cluster load/status.
  • quota – To see your current disk quota usage.
  • nano {filename} – Allow you to make easy modifications to your files.
  • exit – LogOff Server