Skip to content

OMPT Target Offload Support - #411

Merged
dgaliffiAMD merged 26 commits into
amd-stagingfrom
jomadsen/ompt-target-support
Oct 30, 2024
Merged

dgaliffiAMD merged 26 commits into
amd-stagingfrom
jomadsen/ompt-target-support

Conversation

@jrmadsen

Copy link
Copy Markdown
Collaborator

Fixes OMPT support for OpenMP Target Offload applications

  • additionally fixes issue with perfetto

- generic tracing::get_clock_skew(...) function
- use github.com/ROCm/timemory instead of github.com/NERSC/timemory
- improved OMPT support
- new tmp_file::open member function (public)
- new tmp_file::touch member function (private)
- handle pid changing due to forking
- fix "unknown field type" error
- use new (generic) tracing::get_clock_skew(...) function
- fix warning regarding get_reserved_vector<bool>
- lib/omnitrace/library/ompt.cpp
- new component::ompt
  - uses category_region
- handle OMPT target offload buffer records
@jrmadsen jrmadsen added bug fix Fixes a bug perfetto Issue affects/involves perfetto features/capabilities timemory Issue affects/involves timemory features/capabilities OMPT OpenMP tools submodule Updates a git submodule new feature Introduces new feature labels Oct 24, 2024
@jrmadsen
jrmadsen requested a review from dgaliffiAMD as a code owner October 24, 2024 22:20
dgaliffiAMD and others added 14 commits October 24, 2024 23:15
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Make sure the latest cmake is installed.

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
Need to install crb enable before installing texinfo
Installing dnf-command(config-manager) is required to enable CRB for rockylinux 9.0
Required to build Dyninst
Add "${OMP_TARGET_COMPILER_DIR}/llvm/lib" to the BUILD_RPATH. This path is common to new and old versions of ROCm
Signed-off-by: David Galiffi <David.Galiffi@amd.com>
- fixes for openmp::get_enum_label
- removed ignoring the first implicit task for non-main threads
dgaliffiAMD added a commit to dgaliffiAMD/rocprofiler-systems that referenced this pull request Oct 31, 2024
* Porting from ROCm/omnitrace#411
* Improve OMPT support
* Add OpenMP target example to testing
* Update Timemory submodule to use ROCm/Timemory rather than
  NERSC/Timemory

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 5, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to dgaliffiAMD/rocprofiler-systems that referenced this pull request Nov 6, 2024
* Porting from ROCm/omnitrace#411
* Improve OMPT support
* Add OpenMP target example to testing
* Update Timemory submodule to use ROCm/Timemory rather than
  NERSC/Timemory

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to dgaliffiAMD/rocprofiler-systems that referenced this pull request Nov 6, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 7, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 8, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 18, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 18, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 20, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows
dgaliffiAMD added a commit to dgaliffiAMD/rocprofiler-systems that referenced this pull request Nov 20, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 20, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
dgaliffiAMD added a commit to dgaliffiAMD/rocprofiler-systems that referenced this pull request Nov 20, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
ashuverm pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 22, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
ashuverm pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 22, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
ashuverm pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 27, 2024
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
ashuverm pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Nov 27, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
vamovsik pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Dec 5, 2024
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
vamovsik pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Dec 9, 2024
* OMPT Target Offload Support

- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

* Resolve compilation warning with gcc 13

* Add test for ompt-target

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>
ammallya pushed a commit to ROCm/rocm-systems that referenced this pull request Aug 6, 2025
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-systems commit: 21d9ab7]
ammallya pushed a commit to ROCm/rocm-systems that referenced this pull request Aug 6, 2025
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows

[ROCm/rocprofiler-systems commit: 7dce592]
ammallya pushed a commit to ROCm/rocm-systems that referenced this pull request Aug 6, 2025
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-systems commit: 46ca5ca]
ammallya pushed a commit to ROCm/rocm-systems that referenced this pull request Aug 6, 2025
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows

[ROCm/rocprofiler-systems commit: 9da7365]
ammallya pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Oct 28, 2025
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-systems commit: 46ca5ca]
ammallya pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Oct 28, 2025
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows

[ROCm/rocprofiler-systems commit: 9da7365]
ammallya pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Oct 28, 2025
- Fix for proto files not being viewable in Perfetto UI
  - Ported from ROCm/omnitrace#411

- Update Workflows

- Use V47 trace_processor_shell for certain OS releases.
  - RedHat 8, SUSE 15.5, and Ubuntu 20.04 are no longer compatible with the latest trace_processor_shell.
  - Incompatible version of GLIBC.

- Remove notes about Perfetto workaround in documentation.

---------

Signed-off-by: David Galiffi <David.Galiffi@amd.com>

[ROCm/rocprofiler-systems commit: 21d9ab7]
ammallya pushed a commit to ROCm/rocprofiler-systems that referenced this pull request Oct 28, 2025
- Porting from ROCm/omnitrace#411
- Improve OMPT support
- Add OpenMP target example to testing
- Update Timemory submodule to use ROCm/Timemory rather than NERSC/Timemory
- Update `actions/upload-artifacts` to v4
- Standardize the `cmake_minimum_required` to 3.18.4 across workflows, project, and examples
- Updated Ubuntu 20.04 workflows

[ROCm/rocprofiler-systems commit: 7dce592]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug fix Fixes a bug new feature Introduces new feature OMPT OpenMP tools perfetto Issue affects/involves perfetto features/capabilities submodule Updates a git submodule timemory Issue affects/involves timemory features/capabilities

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants