[all-commits] [llvm/llvm-project] 77ad06: [OpenMP] Update OpenMP runtime to adopt taskgraph ...

Josep Pinot via All-commits all-commits at lists.llvm.org
Fri Mar 14 00:02:44 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 77ad061923418ba0f4c8fd4a0710a5ace825bf8e
      https://github.com/llvm/llvm-project/commit/77ad061923418ba0f4c8fd4a0710a5ace825bf8e
  Author: Josep Pinot <josep.pinot at bsc.es>
  Date:   2025-03-14 (Fri, 14 Mar 2025)

  Changed paths:
    M openmp/runtime/src/kmp.h
    M openmp/runtime/src/kmp_global.cpp
    M openmp/runtime/src/kmp_tasking.cpp
    A openmp/runtime/test/tasking/omp_record_replay_random_id.cpp
    A openmp/runtime/test/tasking/omp_record_replay_reset.cpp

  Log Message:
  -----------
  [OpenMP] Update OpenMP runtime to adopt taskgraph clause from 6.0 Specs (#130751)

Updating OpenMP runtime taskgraph support(record/replay mechanism):

- Adds a `graph_reset` bit in `kmp_taskgraph_flags_t` to discard
existing TDG records.
- Switches from a strict index-based TDG ID/IDX to a more flexible
integer-based, which can be any integer (e.g. hashed).
- Adds helper functions like `__kmp_find_tdg`, `__kmp_alloc_tdg`, and
`__kmp_free_tdg` to manage TDGs by their IDs.

These changes pave the way for the integration of OpenMP taskgraph (spec
6.0). Taskgraphs are still recorded in an array with a lookup efficiency
reduced to O(n), where n ≤ `__kmp_max_tdgs`. This can be optimized by
moving the TDGs to a hashtable, making lookups more efficient. The
provided helper routines facilitate easier future optimizations.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list