Back to documents

Document 42: Report-2.pdf

Status: ready

S3 bucket: a2-pdf-bucket-andy

S3 key: uploads/1780294577_6780645f65f44d3a8cc2659260fee02e_Report-2.pdf

Uploaded: 2026-06-01 06:16:17.466510+00:00

Processing Runs

Strategy Status Chunks Average length Processing time Error
Fixed-size chunking completed 15 971.9 0.561 sec
Paragraph-aware chunking completed 13 904.5 0.555 sec

Sample Chunks

Fixed-size chunking

Chunk 0 - 1000 characters

# Page 1

COMP4426/5426 Parallel and Distributed Computing 
Assignment 1 Report 
 
 Student ID: 541031778 
Name: Viet Anh Doan

# Page 2

Table of Contents 
1. Problem Definition & Requirements ....................................................................................... 3 
2. Parallel Algorithm Design ........................................................................................................ 4 
3. Loop Unrolling Justification ..................................................................................................... 7 
4. Performance Analysis ............................................................................................................ 10 
5. Loop Unrolling Impact Analysis ............................................................................................. 14 
6. Known Issues ...........................................................

Chunk 1 - 1000 characters

....................... 14 
6. Known Issues ......................................................................................................................... 15 
7. Manual .................................................................................................................................. 16

# Page 3

1. Problem Definition & Requirements 
 
The assignment requires us to write the C program to compute the matrix equation D = A x B x C 
efficiently. Assume that:  
• A has m rows and k columns, i.e., A ∈ Rm×k 
• B has k rows and l columns, i.e., B ∈ Rk×l 
• C has l rows and n columns, i.e., C ∈ Rl×n 
• D has m rows and n columns, i.e., D ∈ Rm×n
In specific, there are 2 main tasks:  
- Task 1: Develop a parallel program to compute the equation using pthreads library 
- Task 2: Based on your program in task 1, modify such that your algorithm uses loop unrolling 
with unr...

Paragraph-aware chunking

Chunk 0 - 1123 characters

# Page 1

COMP4426/5426 Parallel and Distributed Computing 
Assignment 1 Report 
 
 Student ID: 541031778 
Name: Viet Anh Doan

# Page 2

Table of Contents 
1. Problem Definition & Requirements ....................................................................................... 3 
2. Parallel Algorithm Design ........................................................................................................ 4 
3. Loop Unrolling Justification ..................................................................................................... 7 
4. Performance Analysis ............................................................................................................ 10 
5. Loop Unrolling Impact Analysis ............................................................................................. 14 
6. Known Issues ...........................................................

Chunk 1 - 890 characters

1. Problem Definition & Requirements 
 
The assignment requires us to write the C program to compute the matrix equation D = A x B x C 
efficiently. Assume that:  
• A has m rows and k columns, i.e., A ∈ Rm×k 
• B has k rows and l columns, i.e., B ∈ Rk×l 
• C has l rows and n columns, i.e., C ∈ Rl×n 
• D has m rows and n columns, i.e., D ∈ Rm×n
In specific, there are 2 main tasks:  
- Task 1: Develop a parallel program to compute the equation using pthreads library 
- Task 2: Based on your program in task 1, modify such that your algorithm uses loop unrolling 
with unrolling factor of 4 in the parallel implementation.  
Key requirements:  
- The algorithm should intelligently decide the order of matrix multiplication (whether to 
compute AxB first or BxC first) 
- The parallel version should be compared with the sequential version in both performance and 
correctness.

# Page 4

Query Comparison