-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Compilation with OmpSs-2 and OpenMP #39
Comments
Hi @Z10Frank, I think in this case you can use https://pm.bsc.es/ftp/ompss-2/doc/spec/directives/index.html#task-for-clause Let me know if this is useful. Kind regards, |
Hello, The objective is to progressively "taskify" a load imbalanced part of an existing code that already uses OpenMP, in particular with |
The OmpSs-2 compatibility with OpenMP is limited. It may happen that some constructs will require you to substitute/temporarily disable the unsupported OpenMP constructs.
Not sure what you mean by "if" condition here, one option is using the macro #if _OMPSS_2
#pragma oss task ...
#else
#pragma omp ...
#endif Hope this helps. |
Thank you!
To compile with OpenMP:
To compile with OmpSs-2:
|
Hello,
I was exploring the compatibility with OpenMP with a simple test. I know that OpenMP compatibility is not fully supported, nor it is guaranteed in any case, but I am wondering if I am making some mistakes in the compilation.
My test:
My compilation commands:
In correspondence with the OpenMP pragma, an error occurs:
error: this construct is not supported by Nanos6
. Using a#pragma omp parallel for
yieldswarning: explicit parallel regions do not have any effect in OmpSs
.Mercurium should have been compiled with OpenMP support:
In the log file for the compilation of Mercurium it can be read:
If I try to compile only with OmpSs-2 pragmas, everything works correctly. So, is there something missing in my compilation?
The text was updated successfully, but these errors were encountered: