[Openmp-commits] [PATCH] D102188: [OpenMP] Add experimental nesting mode

Terry Wilmarth via Phabricator via Openmp-commits openmp-commits at lists.llvm.org
Wed May 12 13:52:16 PDT 2021


tlwilmar added a comment.

In D102188#2752325 <https://reviews.llvm.org/D102188#2752325>, @JonChesterfield wrote:

> There's a bunch of potentially worthwhile topology descriptions we might want. Some systems do big/little cores. Some x64 chips have numa, e.g. the threadripper cores that don't have direct access to dram. There's also the mapping from offload target to cores, where some cores may have a better/direct connection to some GPUs.
>
> N sockets with ~equal chips and lower bandwidth between them seems a good start point. E.g. a recent epyc probably wants to present as 8 top level nodes, each with 8 cores.

For now, this is a shortcut to enable a "reasonable" nesting set-up for fairly simple topologies for users who want to use nesting, but in a portable fashion, without really knowing what hardware the code might be running on. Existing features like KMP_HW_SUBSET, use of list for OMP_NUM_THREADS, KMP_AFFINITY, OMP_PLACES, OMP_PROC_BIND, and the APIs for setting the associated ICVs, can all be used to get a suitable nest on specific, more complex, hardware.  But I'd welcome improvements to this that use topo info to design a better nest for such hardware.


Repository:
  rOMP OpenMP

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D102188/new/

https://reviews.llvm.org/D102188



More information about the Openmp-commits mailing list