Fundamentals of Computational Science

Similar documents
High-Performance Scientific Computing

History of Scientific Computing!

INTENSIVE COMPUTATION. Annalisa Massini

Biology 559R: Introduction to Phylogenetic Comparative Methods Topics for this week:

Methods and tools used in experimental particle and nuclear physics. Lectures handouts:

This tutorial is intended to familiarize you with the Geomatica Toolbar and describe the basics of viewing data using Geomatica Focus.

Chem Compute Science Gateway for Undergraduates. Mark J. Perri, M.S. Reeves, R.M. Whitnell

Bloomsburg University Weather Viewer Quick Start Guide. Software Version 1.2 Date 4/7/2014

AMS 132: Discussion Section 2

GIS Software. Evolution of GIS Software

CS 700: Quantitative Methods & Experimental Design in Computer Science

Key Questions: Where are Alaska s volcanoes? How many volcanoes are found in Alaska?

BASIC TECHNOLOGY Pre K starts and shuts down computer, monitor, and printer E E D D P P P P P P P P P P

Collaborative WRF-based research and education enabled by software containers

The CSC Interface to Sky in Google Earth

Karsten Vennemann, Seattle. QGIS Workshop CUGOS Spring Fling 2015

Agile modeling for INF5150

STRUCTURAL BIOINFORMATICS I. Fall 2015

Innovation. The Push and Pull at ESRI. September Kevin Daugherty Cadastral/Land Records Industry Solutions Manager

Tutorial. Getting started. Sample to Insight. March 31, 2016

YYT-C3002 Application Programming in Engineering GIS I. Anas Altartouri Otaniemi

Leveraging ArcGIS Online Elevation and Hydrology Services. Steve Kopp, Jian Lange

Python. Tutorial. Jan Pöschko. March 22, Graz University of Technology

URP 4273 Section 8233 Introduction to Planning Information Systems (3 Credits) Fall 2017

Hands-on Course in Computational Structural Biology and Molecular Simulation BIOP590C/MCB590C. Course Details

The File Geodatabase API. Craig Gillgrass Lance Shipman

Nuclear Physics and Computing: Exascale Partnerships. Juan Meza Senior Scientist Lawrence Berkeley National Laboratory

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

new interface and features

How to make a presentation with L A TEX?

NR402 GIS Applications in Natural Resources

Design and implementation of a new meteorology geographic information system

Geographic Systems and Analysis

ECE521 W17 Tutorial 1. Renjie Liao & Min Bai

ArcGIS Pro Q&A Session. NWGIS Conference, October 11, 2017 With John Sharrard, Esri GIS Solutions Engineer

Date: Summer Stem Section:

URP 4273 Section 3058 Survey Of Planning Information Systems (3 Credits) Spring 2017

Assignment 1: Molecular Mechanics (PART 1 25 points)

(THIS IS AN OPTIONAL BUT WORTHWHILE EXERCISE)

Introduction to the 176A labs and ArcGIS Purpose of the labs

EEOS 381 -Spatial Databases and GIS Applications

COMPUTER SCIENCE TRIPOS

ab initio Electronic Structure Calculations

Computational Biology Course Descriptions 12-14

Assignment 2: Conformation Searching (50 points)

VMD: Visual Molecular Dynamics. Our Microscope is Made of...

Theory versus Experiment: Analysis and Measurements of Allocation Costs in Sorting (With Hints for Applying Similar Techniques to Garbage Collection)

Introducing GIS analysis

Comp 11 Lectures. Mike Shah. July 26, Tufts University. Mike Shah (Tufts University) Comp 11 Lectures July 26, / 40

Why GIS & Why Internet GIS?

SteelSmart System Cold Formed Steel Design Software Download & Installation Instructions

Introduction to ArcMap

No. of Days. Building 3D cities Using Esri City Engine ,859. Creating & Analyzing Surfaces Using ArcGIS Spatial Analyst 1 7 3,139

MapOSMatic, free city maps for everyone!

Infrastructure Automation with Salt

Physics plans and ILDG usage

Applications of Mathematical Economics

Overview of Geospatial Open Source Software which is Robust, Feature Rich and Standards Compliant

WRF Modeling System Overview

No. of Days. ArcGIS 3: Performing Analysis ,431. Building 3D cities Using Esri City Engine ,859

No. of Days. ArcGIS Pro for GIS Professionals ,431. Building 3D cities Using Esri City Engine ,859

Arcmap Manual Esri 10 READ ONLINE

CMSC 313 Lecture 16 Announcement: no office hours today. Good-bye Assembly Language Programming Overview of second half on Digital Logic DigSim Demo

How to make R, PostGIS and QGis cooperate for statistical modelling duties: a case study on hedonic regressions

OF ALL THE CHEMISTRY RELATED SOFTWARE

Introduction to Portal for ArcGIS. Hao LEE November 12, 2015

APBS electrostatics in VMD - Software. APBS! >!Examples! >!Visualization! >! Contents

Personal Field Data Collection by UM-FieldGIS (Integration of Google Map API to Mobile GIS)

Quantum Chemical Calculations by Parallel Computer from Commodity PC Components

Course overview. Grading and Evaluation. Final project. Where and When? Welcome to REM402 Applied Spatial Analysis in Natural Resources.

The Geo Web: Enabling GIS on the Internet IT4GIS Keith T. Weber, GISP GIS Director ISU GIS Training and Research Center.

Astro 32 - Galactic and Extragalactic Astrophysics/Spring 2016

Leveraging Web GIS: An Introduction to the ArcGIS portal

GENERALIZATION IN THE NEW GENERATION OF GIS. Dan Lee ESRI, Inc. 380 New York Street Redlands, CA USA Fax:

OSGIS Platform. Storing and distributing PostGIS, Deegree, UMN Map Server Desktop visualization JUMP, QGIS, Thuban, udig, gvsig

The File Geodatabase API. Dave Sousa, Lance Shipman

The next-generation supercomputer and NWP system of the JMA

QuantumMCA QuantumNaI QuantumGe QuantumGold

GIS PORTFOLIO MOHAMED MAGDY MOHAMED HUSSAIN GIS ENGINEER. UWF GIS ONLINE CERTIFICATE GIS Internship (GIS4944)

Environmental Systems Research Institute

HOW TO USE MIKANA. 1. Decompress the zip file MATLAB.zip. This will create the directory MIKANA.

Geodatabase Management Pathway

ST-Links. SpatialKit. Version 3.0.x. For ArcMap. ArcMap Extension for Directly Connecting to Spatial Databases. ST-Links Corporation.

Lecture 19. Architectural Directions

GIS for the Beginner on a Budget

Small Bodies Assessment Group USGS ISIS Update

Introduction to Portal for ArcGIS

USE OF MATLAB TO UNDERSTAND BASIC MATHEMATICS

Lecture 2. Introduction to ESRI s ArcGIS Desktop and ArcMap

Learning ArcGIS: Introduction to ArcCatalog 10.1

NINE CHOICE SERIAL REACTION TIME TASK

Cantera / Stancan Primer

ARGUS.net IS THREE SOLUTIONS IN ONE

Incorporating ArcGIS Pro in your Curriculum

5-Star Analysis Tutorial!

Solving Polynomial Systems in the Cloud with Polynomial Homotopy Continuation

Molecular Biophysics For The Life Sciences

The GeoDa Book. Exploring Spatial Data. Luc Anselin

Enabling ENVI. ArcGIS for Server

WRF Modeling System Overview

Transcription:

Fundamentals of Computational Science Dr. Hyrum D. Carroll August 23, 2016

Introductions Each student: Name Undergraduate school & major Masters & major Previous research (if any) Why Computational Science PhD?

Introductions Hyrum D. Carroll Brigham Young University, Computer Engineering (B.S.) Brigham Young University, Computer Science (M.S.) Brigham Young University, Computer Science (Ph.D.) National Institutes of Health, Postdoc Research in Bioinformatics / Computational Biology Computational Science: Interdisciplinary research.

Introductions Hyrum D. Carroll Brigham Young University, Computer Engineering (B.S.) Brigham Young University, Computer Science (M.S.) Brigham Young University, Computer Science (Ph.D.) National Institutes of Health, Postdoc Research in Bioinformatics / Computational Biology Computational Science: Interdisciplinary research. https://cs.mtsu.edu/~hcarroll/personal/family/ 2015/IMG_4474edited.jpg

Syllabus http://www.cs.mtsu.edu/~hcarroll/6100/syllabus.html

Lecture Notes See www.cs.mtsu.edu/~hcarroll/6100/assignments/ latexlecturenotes.html. Each lecture period, a student will be responsible for taking lecture notes and posting them. The notes should cover the topics presented in class (whether or not they re on the slides), in the student s own words. Students will need to use L A TEXfor the notes. Grading Rubric: Completeness Accuracy Concise Additional information Overall appearance Email the.tex and.pdf files to me to be graded and posted.

COMS 6100 Computational Tools and Techniques Scientific Programming and Optimization Numerical Methods and Libraries

Science Old-style Theory Experiment

Computational Science The Science Triad Theory Experiment Computational Sciences

Computational Science A blend of disciplines Applied Mathematics & Numerical Methods Computational Science Computer Science Science Discipline

Data Science Connecting Experiments Back to Theory Data Sciences Theory Experiment Computational Sciences

Data Sciences A blend of disciplines Statistics & Visualization Data Science Machine Learning & Classification & Databases Science Discipline & Experimental Data

Why Do Scientist Use Computers?

Why Do Scientist Use Computers? Experiments are impossible Experiments are too expensive Equations too difficult to be solved analytically Experiments don t provide enough insight or accuracy Data sets too complex to be analyzed by hand Computers bridge the gap between experiments and theory

Are Algorithms Important? Which is more important? 1. An efficient algorithm 2. A fast computer

FFT Algorithms The FFT algorithms changed the computational cost of calculation Fourier Transforms from O(n 2 ) to O(n log n) The particle mesh method and the hierarchical tree code changed the cost of solving n-body methods from O(n 2 ) to O(n log n) Assume it takes 1 second to calculate the Fourier transform of a given size. Approximately how much longer will it take to calculate the Fourier transform of a problem one thousand times larger?

Sorting Example Human Sort How long does it take you to sort the following list? 0.512514 0.978670 0.685045 0.475133 0.460972 0.872282 0.856403 0.874345 0.865597 0.071149 0.383721 0.298935 0.395536 0.771029 0.379287 0.744434 0.281189 0.034619 0.563337 0.282640

Sorting Example Bubble Sort in Octave 1 n = [ 1 0 0, 500, 1000, 5000, 10000, 50000, 100000, 500000, 1 0 0 0 0 0 0 ] ; 2 f o r j = n 3 j 4 s t = time ; 5 a = rand ( j, 1 ) ; 6 i n d e x 1 = 1 ; 7 w h i l e ( i n d e x 1 < j ) 8 f o r i n d e x 2 = i n d e x 1 : n 9 i f ( a ( i n d e x 1 ) > a ( i n d e x 2 ) ) 10 tmp = a ( i n d e x 1 ) ; 11 a ( i n d e x 1 ) = a ( i n d e x 2 ) ; 12 a ( i n d e x 2 ) = tmp ; 13 end 14 end 15 i n d e x 1 = i n d e x 1 + 1 ; 16 end 17 e t = time ; 18 t i m e i n t e r v a l = e t s t 19 end

Sorting Example Bubble Sort in Octave seconds 900 800 bubble sort 700 600 500 400 300 200 100 0 100 1000 10000 100000 1e+06 1e+07 1e+08 n

Sorting Example Quicksort in Octave 1 n = [ 1 0 0, 500, 1000, 5000, 10000, 50000, 100000, 500000, 1 0 0 0 0 0 0 ] ; 2 f o r j = n 3 j 4 s t = time ; 5 a = rand ( j, 1 ) ; 6 b = s o r t ( a ) ; 7 e t = time ; 8 t i m e i n t e r v a l = e t s t 9 end

Sorting Example Quicksort in Octave seconds 35 quick sort 30 25 20 15 10 5 0 100 1000 10000 100000 1e+06 1e+07 1e+08 n

Sorting Example seconds 900 800 700 600 500 400 300 200 100 bubble sort quick sort 0 100 1000 10000 100000 1e+06 1e+07 1e+08 n

Sorting Example seconds 1000 100 10 1 0.1 0.01 0.001 bubble sort quick sort 0.0001 100 1000 10000 100000 1e+06 1e+07 1e+08 n

Algorithms Matter!

Algorithms Matter! http://www.youtube.com/v/k4rri_ntqc8 (Senator Obama Knows His Algorithms!)

The Atanasoff-Berry Computer The earliest electronic digital computer was built in the basement of the Physics Department at Iowa State University by Atanasoff and Berry in 1937 1942. It was a special purpose machine that was used to solve a 27x27 element linear equation. Even though its programming was limited to a single task, it contained all the elements (storage, digital logic, base-2) of modern machines. Although this seems like a trivial problem now, solving this type of matrix problem is extremely difficult without a computer.

Supercomputer Speeds Year Computer Speed CPU 1947 Eniac 500 FLOPS 1 1955 IBM 704 10 kflops 1 1964 CDC 6600 1.2 MFLOPS 1 1976 Cray 1 12.5 MFLOPS 1 1988 Cray Y-MP 2 GFLOPS 16 1993 Fujitsu Numerical Wind Tunnel 124.5 GFLOP 140 2000 ASCI Red (Sandia) 2.4 TFLOP 9632 2005 BlueGene/L (DOE/NNSA/LLNL) 280 TFLOP 131,072 2008 Road Runner (DOE/NNSA/LLNL) 1026 TFLOP 122,400 (Data from http: //home.earthlink.net/~mrob/pub/computer-history.html and http://www.top500.org)

Supercomputer Speeds Year Computer Speed CPU 1947 Eniac 500 FLOPS 1 1955 IBM 704 10 kflops 1 1964 CDC 6600 1.2 MFLOPS 1 1976 Cray 1 12.5 MFLOPS 1 1988 Cray Y-MP 2 GFLOPS 16 1993 Fujitsu Numerical Wind Tunnel 124.5 GFLOP 140 2000 ASCI Red (Sandia) 2.4 TFLOP 9632 2005 BlueGene/L (DOE/NNSA/LLNL) 280 TFLOP 131,072 2008 Road Runner (DOE/NNSA/LLNL) 1026 TFLOP 122,400 2011 Sequoia (DOE/NNSA/LLNL) 20 PFLOP 1,572,864 (Data from http: //home.earthlink.net/~mrob/pub/computer-history.html and http://www.top500.org)

Supercomputer Speeds Year Computer Speed CPU 1947 Eniac 500 FLOPS 1 1955 IBM 704 10 kflops 1 1964 CDC 6600 1.2 MFLOPS 1 1976 Cray 1 12.5 MFLOPS 1 1988 Cray Y-MP 2 GFLOPS 16 1993 Fujitsu Numerical Wind Tunnel 124.5 GFLOP 140 2000 ASCI Red (Sandia) 2.4 TFLOP 9632 2005 BlueGene/L (DOE/NNSA/LLNL) 280 TFLOP 131,072 2008 Road Runner (DOE/NNSA/LLNL) 1026 TFLOP 122,400 2011 Sequoia (DOE/NNSA/LLNL) 20 PFLOP 1,572,864 2012 Titan (DOE/SC/Oak Ridge) 27 PFLOP 560,640 (Data from http: //home.earthlink.net/~mrob/pub/computer-history.html and http://www.top500.org)

Supercomputer Speeds Year Computer Speed CPU 1947 Eniac 500 FLOPS 1 1955 IBM 704 10 kflops 1 1964 CDC 6600 1.2 MFLOPS 1 1976 Cray 1 12.5 MFLOPS 1 1988 Cray Y-MP 2 GFLOPS 16 1993 Fujitsu Numerical Wind Tunnel 124.5 GFLOP 140 2000 ASCI Red (Sandia) 2.4 TFLOP 9632 2005 BlueGene/L (DOE/NNSA/LLNL) 280 TFLOP 131,072 2008 Road Runner (DOE/NNSA/LLNL) 1026 TFLOP 122,400 2011 Sequoia (DOE/NNSA/LLNL) 20 PFLOP 1,572,864 2012 Titan (DOE/SC/Oak Ridge) 27 PFLOP 560,640 2015 MilkyWay-2 (NUDT, China) 54 PFLOP 3,120,000 (Data from http: //home.earthlink.net/~mrob/pub/computer-history.html and http://www.top500.org)

Supercomputer Speeds

Operating Systems What percentage share do each of the major operating systems have in the Top 500 list? OS System Rpeak Family Count Share % (GFlops) Cores

Operating Systems What percentage share do each of the major operating systems have in the Top 500 list? OS System Rpeak Family Count Share % (GFlops) Cores Linux 476 95.2 217,932,444 18,700,112

Operating Systems What percentage share do each of the major operating systems have in the Top 500 list? OS System Rpeak Family Count Share % (GFlops) Cores Linux 476 95.2 217,932,444 18,700,112 Unix 16 3.2 3,949,373 181,120

Operating Systems What percentage share do each of the major operating systems have in the Top 500 list? OS System Rpeak Family Count Share % (GFlops) Cores Linux 476 95.2 217,932,444 18,700,112 Unix 16 3.2 3,949,373 181,120 Mixed 4 0.8 1,184,521 417,792 Windows 3 0.6 465,600 46,092 BSD Based 1 0.2 122,400 1,280

Operating Systems What percentage share do each of the major operating systems have in the Top 500 list? June 2011 June 2012 June 2013 June 2014 System % # % # % # % # Linux 94.0 470 94.8 474 95.2 476 97.0 485 Unix 4.6 23 4.8 24 3.2 16 2.4 12 Windows 1.2 6 0.4 2 0.6 3 0.4 2 (http://www.top500.org/statistics/overtime/)

Linux OS of Choice in Computational Science

Linux OS of Choice in Computational Science Free, open source, and very stable Low OS overhead Extensive freeware and commercial development and analysis tools Easy access to low level analysis tools Excellent control of machine resources Works well, even with petascale computing

Using Linux for class We ll be using herschel.cs.mtsu.edu for class. Accessible from Windows machines via ssh using PuTTY (www.putty.org) A virtual machine (e.g., VirtualBox, then ssh) X2Go (either web or desktop clients) http://wiki.x2go.org/doku.php/doc:installation: x2goclient A linux machine via ssh

Access to Linux Machines Go to http://www.cs.mtsu.edu/ Select CS Account Management from the menu on the right side Log with your pipeline account For account purpose - use COMS 6100 and PhD program

Virtual Machines Virtual Machines A program that mimics a machine Programs running within this program behave like they are running on a different machine VirtualBox (by Oracle): Free for academic and personal use Many versions for different operating systems http://www.virtualbox.org

Installing a Virtual Machine on Your Computer Download the VirtualBox software appropriate for your computer, and install it Download or load an ISO image of your favorite operating system to your hard drive Ubuntu 32 bit works great Start up the VirtualBox Software - click new and follow the prompts in the Virtual Machine Wizard You will want > 50 Gb of disk space and >1Gb of RAM Select the ISO image within the Wizard and install it in your Virtual Machine

Installing a Virtual Machine (2) Boot the VM and log in Update the VM with any OS patches Add the Virtual Box additions to let the system go full screen Add any additional software you want - compilers, editors, etc using a package manager

Using X2Go to access herschel.cs.mtsu.edu Two methods to access herschel.cs.mtsu.edu: 1. Web client 2. Downloaded client (Macs need the beta client)

Using X2Go to access herschel.cs.mtsu.edu Two methods to access herschel.cs.mtsu.edu: 1. Web client (easier, Windows only) 2. Downloaded client (Macs need the beta client)

Basic Unix Skills

Basic Unix Skills 1. Creating and moving files and directories 2. Editing files 3. Compressing & decompressing files and directories 4. File/directory permissions 5. Modifying your path 6. Using find and grep (or similar tools) for basic tasks 7. Some scripting language (perl, python, etc.) Many tutorials are available - but you MUST learn the command line interface

hwklinux1 https://www.cs.mtsu.edu/~hcarroll/6100/assignments/ hwklinux1.html