I have a project I need done by December 1st. Project is as follows.
Write an assembly program for matrix multiplication assuming all the elements are integers and
the matrices are stored in main memory. Here are some steps that can help:
1) Initially, you may hard code the input matrices A and B of size 3x3 each in your
program. You can choose either storing them in row-major or column-major order.
Observe the cache performance (e.g., hit-rate, miss-rate etc.) for your code.
2) Optimized Matrix Multiplication for N=3: Optimize your code (by storing matrices in
a particular order, code-reordering etc.) and cache organization (block-size, placement
policy etc.) to get the maximum hit-rate for a fix cache size of 128 bytes. Submit the
optimized mult3.asm file mentioning the optimized cache organization for N=3 in your
report.
3) Verify the cache hit-rate that you observed from the simulator by your hand-calculations.
4) Matrix Multiplication for šµ ā„ š: Compute the hit-rate of your program for various
cache parameters by extending the concept to Nā„5 (Choose any number greater than or
equal to 5, e.g. 5x5 matrices A,B,C). Give a comprehensive description of how you
computed the hit-rates, and complete the following table by listing the hit-rates.
I realize this will be quite expensive as matrices are a pain in the ass already without even involving MIPS.
Post the price you would need to get this done, preferably early.
Thank you

Pm with any questions!