Skip to content
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

ittnotify_config.h: gcc support for ia64 architecture #777

Open
cdluminate opened this issue Feb 14, 2022 · 9 comments
Open

ittnotify_config.h: gcc support for ia64 architecture #777

cdluminate opened this issue Feb 14, 2022 · 9 comments
Labels

Comments

@cdluminate
Copy link
Contributor

When compiling with gcc on ia64 architecture, the __TBB_machine_fetchadd4 will be left undefined.
https://github.com/oneapi-src/oneTBB/blob/master/src/tbb/tools_api/ittnotify_config.h#L327-L331

Why not replace the TODO comment with the fallback implementation?

#define __TBB_machine_fetchadd4(addr, val) __sync_fetch_and_add(addr, val)
@alexey-katranov
Copy link
Contributor

Perhaps, it makes sense (especially, if someone is interested in ia64)

Notify: @ekovanova

@cdluminate
Copy link
Contributor Author

I tried to build tbb on IA64 with that fallback implementation, and the tests ended up with a large number of segmentation faults.

@ekovanova
Copy link

@cdluminate does the aforementioned segfaults relate to __sync_fetch_and_add?

@cdluminate
Copy link
Contributor Author

@ekovanova Yes. Lots of segmentation faults after adding

#define __TBB_machine_fetchadd4(addr, val) __sync_fetch_and_add(addr, val)

Please find the buildlog here https://buildd.debian.org/status/fetch.php?pkg=onetbb&arch=ia64&ver=2021.5.0-6&stamp=1644945917&raw=0

@alexey-katranov
Copy link
Contributor

alexey-katranov commented Feb 22, 2022

The build log does not show if it is really related to ITT. oneTBB is neither officially nor community supported on ia64. I would not expect that someone tried to run oneTBB on ia64 previously, so many others issues might present.

Try to build without ITT to check if it relates to ITT (disable the branch in src/tbb/CMakeLists.txt#L61-L66)

@anton-potapov
Copy link
Contributor

@cdluminate how critical support of IA64 for a debian releases? Is it must have or optional?

@cdluminate
Copy link
Contributor Author

@anton-potapov IA64 is not Debian's release architecture. It's just optional. I was just trying to let it build on as more architectures as possible.

@isaevil
Copy link
Contributor

isaevil commented Nov 15, 2022

@cdluminate Is this issue still relevant? Have you tried to build without ITT?

@cdluminate
Copy link
Contributor Author

Not yet. Will try it for the next time of package upload

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants