Skip to content

Commit f2e916c

Browse files
author
cs293-ahilkhancse
committed
removed locks which cause unneccesary wait
1 parent daaed41 commit f2e916c

File tree

2 files changed

+0
-8
lines changed

2 files changed

+0
-8
lines changed

LU_factorisation

16.6 KB
Binary file not shown.

src/LU_factorisation.cpp

-8
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ using namespace std;
88
// LU Decomposition function
99
void l_u_d(float** a, float** l, float** u, int size)
1010
{
11-
// Initialize a simple lock for parallel region
12-
omp_lock_t lock;
13-
omp_init_lock(&lock);
1411

1512
// Initialize L and U matrices
1613
for (int i = 0; i < size; i++) {
@@ -35,29 +32,24 @@ void l_u_d(float** a, float** l, float** u, int size)
3532
// Update U matrix
3633
#pragma omp for schedule(static)
3734
for (int j = k; j < size; j++) {
38-
omp_set_lock(&lock);
3935
u[k][j] = a[k][j];
4036
for (int s = 0; s < k; s++) {
4137
u[k][j] -= l[k][s] * u[s][j];
4238
}
43-
omp_unset_lock(&lock);
4439
}
4540

4641
// Update L matrix
4742
#pragma omp for schedule(static)
4843
for (int i = k + 1; i < size; i++) {
49-
omp_set_lock(&lock);
5044
l[i][k] = a[i][k];
5145
for (int s = 0; s < k; s++) {
5246
l[i][k] -= l[i][s] * u[s][k];
5347
}
5448
l[i][k] /= u[k][k];
55-
omp_unset_lock(&lock);
5649
}
5750
}
5851
}
5952

60-
omp_destroy_lock(&lock);
6153
}
6254
int main(int argc, char *argv[]) {
6355
int size = 2;

0 commit comments

Comments
 (0)