Information

Author(s) Erik-Jan Lingen, Matthias Möller
Deadline No deadline
Submission limit No limitation

Sign in

[OpenMP] Solution 5 : Dyadic Product

This material is part of the course Practical Introduction to Parallel Programming and meant for educational purposes only.


Task

Write a parallel program that computes the dyadic product

\begin{equation*} \mathbf{x}\mathbf{y}^\top= \begin{bmatrix} x_1y_1 & x_1b_2 & \cdots & x_1y_N\\ x_2y_1 & x_2b_2 & \cdots & x_2y_N\\ \vdots & \vdots & \ddots & \vdots\\ x_Ny_1 & x_Nb_2 & \cdots & x_Ny_N \end{bmatrix} \end{equation*}

for two vectors \(\mathbf{x},\mathbf{y}\in\mathbb{R}^N\).

Test your program for different scheduling strategies and chunk sizes, and different values for \(N\).


Question 1: Dyadic Product
Question 2: OpenMP environment variables

Specify the OpenMP environment variables that should be used for running your program (export OMP_NUM_THREADS=1 ...). Use semicolons to separate multiple variables

Question 3: Command Line Argument

Specify the command line arguments that should be passed to your program when it is run. Arguments must be given in quotes and separated by commas. Leave this filed empty if you do not want to specify command line arguments.

Example: "1","int","arg=2" is interpreted as three arguments 1, int, and arg=2.