CoE 163 S2 AY 2022-2023

From Microlab Classes
Revision as of 23:41, 10 February 2023 by Carl Dizon (talk | contribs) (Initial commit)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Course Information

Academic Period: 2nd Semester AY 2022-2023
Units: 3
Workload:

  • 3 hours lecture per week
  • 1-2 hours exercise per week

Instructors:

  • Isabel M. Austria [isabel.austria at eeemail]
  • Carl C. Dizon [carl.dizon at eeemail]

Synopsis: This course aims to 1) present the connection between algorithms, implementation, and computer architecture, 2) provide tools needed to write and apply fast numerical code, and 3) present representative fundamental numerical algorithms.
Delivery Method: Video lectures and digital materials
Online Platforms: UVLe, Piazza, Google Meet, Zoom, other quiz platforms.

Course Outline

Week Topics Academic Requirements Resource Links
0

[00] Course overview and synopsis
[00] Course requirements

[guide]
[00 slides]

1

[01a] Review of CS data structures and algorithms
[01b] Problem identification and solving

[01a slides]
[01b slides]

2

[02a] Review of asymptotic analysis
[02b] Amortized analysis
[02c] High-level optimization

[02a slides]
[02b slides]
[02c slides]

3

[03a] Choosing a platform
[03b] x86 assembly introduction
[03c] x86 assembly reference

[[ | [03a slides]]]
[03b slides]
[03c slides]

4

[04a] Review of linear algebra operations
[04b] Solving problems using linear algebra
[04c] Linear algebra and computers

[04x guide]
[04a slides]
[04b slides]
[04c slides]

5

[05a] Cache behavior of linear algebra operations
[05b] Matrix-matrix multiplication part 01
[05c] Matrix-matrix multiplication part 02

[05x guide]
[05a slides]
[05b slides]
[05c slides]

6
LENTEN BREAK
7
READING BREAK
8

[06a] BLAS and ATLAS

[06a slides]

9

[10a] Gaussian elimination
[10b] Sparse linear algebra

[10a slides]
[10b slides]

10

[11a] Parallel computing introduction
[11b] Parallel programming and hardware

[11a slides]
[11b slides]

11

[12x] Parallel programming algorithms

12

[13a] GPU programming basics
[13b] CUDA programming with Numba

13
14
15
16

Finals week

17

Finals week

Grading Rubric

32% Short quizzes
48% Software exercises
20% Capstone exercise

Announcements

February 2023