Presentation is loading. Please wait.

Presentation is loading. Please wait.

FOUNDATIONS OF MODERN SCIENTIFIC PROGRAMMING

Similar presentations


Presentation on theme: "FOUNDATIONS OF MODERN SCIENTIFIC PROGRAMMING"— Presentation transcript:

1 FOUNDATIONS OF MODERN SCIENTIFIC PROGRAMMING
COMPENG 701 FOUNDATIONS OF MODERN SCIENTIFIC PROGRAMMING

2 Course Information Instructor: Yuriy Zinchenko,
Information Technology Building 221, course syllabus at Time and location: Thursday, 10:30-13:30, ITB 235

3 Course Goals introduce to high-performance/high-throughput computing
equip with basic knowledge of computing tools available The course is self-contained, tutorial-based. Focus: Basic Linear Algebra Subprograms

4 Tentative Layout introductory lecture
file systems, binary systems, computer and processor architecture Linux/Unix and Windows operating systems introduction to MATLAB and Octave introduction to C and Fortran BLAS memory management and processor architecture for high-performance computing, compiler flags, tuning BLAS, Automatically Tuned Linear Algebra Software writing fast code in MATLAB external libraries with MATLAB/Octave, MEX files, BLAS interfacing introduction to parallel computing, cluster and multi-processor system (MPS) environments C/Fortran for high-performance computing on MPS, OpenMP, using clusters (SHARCNET)

5 Typical Applications for BLAS
numerical PDE’s image processing core of most optimization engines many others Important: always exploit data structure!

6 Radiation Therapy for Cancer Treatment
An Example Radiation Therapy for Cancer Treatment Background: About 1.3 million new cancer cases in the U.S. each year Nearly 60% receive radiation therapy, in conjunction with surgery, chemotherapy, etc.

7 External beam radiation therapy
Radiation delivered by a linear accelerator Cancer cells more susceptible than normal cells Dose given in daily fractions for ~ 6 weeks Overlay beams from different angles

8 Intensity Modulated Radiation Therapy
Block parts of the radiation beam – discretize the beam into smaller “beamlets” Choose different intensities for each beamlet Intensity Modulated Radiation Therapy Collaborative Working Group, 2001

9 Treatment planning Goal: Choose beam angles and beamlet intensities that kill tumor and spare healthy tissues Take CT scan Delineate Discretize body into “voxels” Formulate & solve a mathematical program to find a “good” plan Princess Margaret Hospital

10 One facet of RT treatment planning
Formulate and solve “inverse problem” to find beamlet intensities that satisfy clinical objectives Assuming: all the input data are error-free Common approach: use optimization

11 Calculating dose delivered
Dose delivered to voxel: w(b) = intensity of beamlet b (decision variable) Dose(b,v) = dose to voxel v from beamlet b (parameter)

12 Types of models Common objectives:
Maximize the minimum dose to the target region Minimize deviations from prescribed dose Common constraints: Homogeneity Maximum dose constraints Dose-volume constraints

13 How to deliver ? Bad news: sensitive to errors

14 Uncertainties Setup errors + Patient motion
+ Structural changes during treatment = uncertainty in geometry A direction: rescan to eliminate some of these errors

15 What can go wrong? A simple LP problem: max x + y
s.t. x+.99 y  1 x, y  0

16 A new problem Given image A and its perturbed copy B, how can we match those? ?

17 Assignment 1 MATLAB code and data are posted on the web. The image recovery is performed via naïve local search amongst the sequence of translations and rotations (e.g., lines of the code). 0. Fill in the survey form on the next page. Would anything change if we replace line 26 with line 27? Which one would you prefer? Explain both parts. The translation/rotation transformation is implemented as series of operations on the intensity matrix (e.g., scan2). Write this operation in matrix-vector form, i.e., as AB+C=D for some matrices A,B,C and D. Are any of the data structures in 2 sparse, that is, have big blocks of zeros? Can one potentially take advantage of this? Bonus question: implement the sparse matrix-vector multiplication routine in MATLAB (may use C but no external libraries). The fastest code gets bonus points.

18 Background survey Name: Degree you pursuing (MS/PhD): Department:
1. Rank your answer from 1-”no idea” to 5-”expert level” to the following questions: how familiar are you with Linux/Unix OS Windows OS MATLAB Octave BLAS ATLAS C Fortran OpenMP MPI 2. Circle one: was today’s class too elementary just right too complicated? 3. Reason for taking the course: required interest in the subject. 4. What is the most important thing you would like to learn in this class?


Download ppt "FOUNDATIONS OF MODERN SCIENTIFIC PROGRAMMING"

Similar presentations


Ads by Google