https://github.com/lopezjurip/openmp-parallel-convolution-mask
OpenMP experiments in C
https://github.com/lopezjurip/openmp-parallel-convolution-mask
c hpc openmp parallel
Last synced: about 1 year ago
JSON representation
OpenMP experiments in C
- Host: GitHub
- URL: https://github.com/lopezjurip/openmp-parallel-convolution-mask
- Owner: lopezjurip
- Created: 2017-05-13T21:49:20.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2017-05-20T10:34:20.000Z (about 9 years ago)
- Last Synced: 2025-03-08T08:12:14.497Z (over 1 year ago)
- Topics: c, hpc, openmp, parallel
- Language: C
- Homepage:
- Size: 10.8 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# OpenMP Parallel Convolution Mask
* Patricio López Juri
## Run
```sh
# on the real environment
./run.sh
# if fails:
chmod +x ./run.sh
```
## Analysis
```sh
--- Running secuential ---
real 0m12.540s
user 0m12.156s
sys 0m0.380s
--- Done secuential ---
--- Running parallel ---
real 0m5.839s
user 0m23.524s
sys 0m0.420s
--- Done parallel ---
--- Running parallel (over-CPU) ---
real 0m6.043s
user 0m22.224s
sys 0m0.424s
--- Done parallel over ---
```
### Sequential
First we try a sequential operation with 1 CPU. The `real` and `user` times are the same because of this.
### Parallel
Using all the available CPU we get a `user` increase because its the sum of all the CPU but the real (perceived) time is lower.
#### Bad parallel
When we set to use more than the 8 cores (10 in this case), the `user` time seems to be equal or lower, but the `real` time is **higher**.
This should be the consequence of context switching between virtual threads, loosing time and decreasing the overall performance.
> Sorry, not visualization available :()