Skip to content

white-anthony/237b_assignment-2

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Assignment 2 (assigned 7/27, due 8/12)

Lab

Chris will be holding two sets of office hours to get started on this. One will be Monday 7-9pm. The other will be Wednesday 8-10pm to best accommodate all schedules.

Loop Demo

This is the starter code for this project. It loads a vector from file and sums each element into a single result. It then saves the final result.

Loop Unrolling Demo

The purpose of this portion of the lab is to look into loop unrolling and how it can impact the performance of the code executed. This is an optimization that can be perfromed by gcc and therefore may not have a visible impact.

ARM Neon Intrinsics Demo

Using the previous code from the loop unrolling section, we should update this to use the ARM Neon intrinsics. Please see the resources.

Homework

Naive Matrix Multiply

The goal of this portion of the assignment is to provide a baseline, simple implementation of a matrix multiply.

Block Matrix Multiply

The goal of this portion of the assignment is to improve the performance of this by using block matrix multiplication.

Unrolled Block Matrix Multiply

The goal of this portion of the assignment is to perform some loop unrolling in preparation for ARM Neon implementation of block matrix multiplication.

Neon Block Matrix Multiply

The goal of this portion of the assignment is to using ARM Neon instead of loop unrolling for vectorization.

Resources

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 53.7%
  • Python 26.1%
  • Makefile 20.2%