Welcome

  • Youngsu Kim, assistant professor of mathematics
  • High-performance computing initiative at CSUSB
  • Introduce high-performance computing;
  • Pacific Research Platform (PRP)
  • Role of HPC team

HPC Team At CSUSB

  • Dr. Sam Sudhakar, Vice President and Chief Information Officer

HPCI Team at ATI

High-Performance Computing

High-Performance Computing (HPC); from U.S. Geological Survey.

High Performance Computing most generally refers to the practice of aggregating computing power in a way that delivers much higher performance than one could get out of a typical desktop computer or workstation in order to solve large problems in science, engineering, or business.

Example:

  • Artificial integlligence, Virtual reality, Big data, Machine (deep) learning;

Is High performance computing better than my personal computer?







Answer: it depends...

Let's compare

  • Personal computers vs high-performance computing

Example Let's look at some cars.


Car1 Car2 Car3

Cars $\longleftrightarrow$ Personal computers

Car1 $\longleftrightarrow$ Desktop

Another type of cars

F1

Formula 1 $\longleftrightarrow$ High-performance computing

F1 $\longleftrightarrow$ HPC

We have access to HPC! But...

ENIAC ENIAC

Server Options (XSEDE and PRP) at CSUSB

  • Extreme Science and Engineering Discovery Environment (XSEDE) in 2015
  • Pacific Research Platform (PRP) in 2017; better suited for our faculty, more customizable

Super-computers, XSEDE, https://portal.xsede.org

---- excerpt from Dr. Owen's email on 4/7/2021


San Diego Supercomputer Center https://www.sdsc.edu/

  • SDSC Dell Cluster with NVIDIA V100 GPUs NVLINK and HDR IB (Expanse GPU): 2,500.0 GPU Hours
  • SDSC Expanse Projects Storage: 500.0 GB
  • SDSC Dell Cluster with AMD Rome HDR IB (Expanse): 50,000.0 Core-hours
  • SDSC Medium-term disk storage (Data Oasis): 500.0 GB

Necessary information to provide to start a project

  • Which supercomputing center(s) listed below you request, the estimated CPU and GPU hours needed, and (if any) requested amount of disc storage. [If you like, high performance computing consultants Dung Vu (DVu@csusb.edu) and James Macdonell (James.Macdonell@csusb.edu) can assist you in defining your resource needs.]
  • Before accessing the allocated resources, users need to refer the user’s guides for the relevant center(s):

Pacific Reserch Platform

CSUSB On-going Projects on Pacific Research Platform

Projects Departments faculty / RA Systems HPC Resources Requirements
Advanced Functional Materials Chemistry Joyce Pham/Asa Toombs,Valentin Acosta,Mayra Silva Barcenas,Katharine Stamm VASP Simulation PRP CPU+GPU
Ancient Egytian Wadi el-Hudi expedition History Kate Liszka, Bryan Kraemer MetaShape PRP, Pittsburgh CPU+GPU
Drone video Processing Art & Design Kurt Collins Trimble Realworks PRP CPU+GPU
Psychology Psychology Pablo Gomez R and Rstudio PRP CPU+GPU
Geological Sciences Geological Sciences Kerry Cato/Geo-Science students MetaShape QTmodeler PRP CPU+GPU
HPCI - Math Mathematics Youngsu Kim Macaulay2,Sage PRP CPU
  • This is the end of the general introduction to our high-performance comuting and Pacific Resrach Platform.

What's left?












What is command line?

  • Windows; ⊞ Win + R -> type "cmd" -> press return

  • Mac; ⌘ Command + Space bar -> type "terminal" -> press return

  • Linux ??

Win-R Mac-Sp

Good and Bad

Why not using GUI?

  • GUIs are more intuitive, but use more resources
  • Windows and GUI interface
    • Possible option, expanding, but can be a bit limited

How much do we need to know to start our project

Example

  • This is a Python code which prints out
    • "Hello! This is Friday. I want beer."
  • As this may sound too simple and exciting,
    let's say we add two number 1 and 2.
print("Hello!")
print("This is Friday. I want beer.")
1+2

Running it on my computer vs using the HPC server

Local machine

My local computer, once we install Python, we can do this.

In [2]:
print("Hello!")
print("This is Friday. I want beer.")
print("1 plus 2 is", 1+2)
Hello!
This is Friday. I want beer.
1 plus 2 is 3

On the server

Let's explore it on the server;

Goal: Run Python script (code) on the server

Caveat: We need to choose and set up the system.

We need

  • Python complier
  • An OS to run Python; e.g., Mac OS, Windows 10, Linux
    • Linux is available on the server; However, Windows support is there.
    • Ubuntu is a popular Linux distribution.

To run Python on Ubuntu on PRP

we need to use Python installed Ubuntu image on PRP

Example/comparison

~ PC PRP
Program Python Python
OS Mac OS Linux image
Computer Macbook Server

What is (virtual machine) image

  • On Pc, Parallels Desktop is popular; installs everything
  • On PRP, common parts of the OS system is stored,
    • One can use images from
    • Docker Hub;
    • To use/send this image on the server, we need Kubernetes
  • Concept of container
  • As usual, technical things can be skipped or ingored

Three ways to connect

  • Terminal
  • GUI
  • Jupyter Notebook

Compatibility of Software/Program

  • Software available in Linux is easy to implement on the server
  • Several programs are possible; Dung Vu and James Macdonell
  • Licensed software; "yes"

Our HPC team will

  • help you to set up
  • test programs
  • provide a script so by copying and pasting it,
    • you will have a (virtual) image with your software installed,
    • it will run on the server and
    • save the outcome (data) you need.
  • Or we can provide a GUI environment.

What I can do in addition to the experts Dung Vu & James MacDonell's support are

  • I can visit your office or you can visit my office,
  • We can go over the set-up process (account/Kubernetes),
  • discuss which software to use,
  • test them out in my account, ...
  • Also, I keep track of record and progress

Thank you

  • Dr. Sam Sudhakar, Vice president and Chief Information Officer

HPCI Team at ATI

Image sources