Page MenuHomePhabricator

tlwilmar (Terry Wilmarth)
User

Projects

User does not belong to any projects.

User Details

User Since
Apr 20 2015, 1:32 PM (413 w, 3 h)

Recent Activity

Thu, Mar 9

tlwilmar requested review of D145736: Fix an issue with th_task_state_memo_stack and proxy/helper tasks.
Thu, Mar 9, 3:59 PM · Restricted Project, Restricted Project

Tue, Feb 21

tlwilmar accepted D144426: [OpenMP] Update the bug report link for `libomp` assertion failures.

LGTM

Tue, Feb 21, 7:42 AM · Restricted Project, Restricted Project

Feb 9 2023

tlwilmar added a comment to D142247: Fix initialization of th_task_state on each thread on expanding hot teams..

@rogfer01 th_task_state is used to refer to one of two task teams that are reused for each hot team. These two task teams exist because of a need to start using a new one while there may still be activity on the old task team, so we flip between the two. Each thread has a th_task_state so it knows which task team is in use for a particular parallel region. When a hot team is expanded in size for a larger parallel region, new threads added to the team need to have their th_task_state initialized to exactly what the other threads in the team are using, so that they are all in sync. So instead, we just initialize from a thread that was in the team before the resize.

Feb 9 2023, 10:51 AM · Restricted Project, Restricted Project

Feb 8 2023

tlwilmar committed rG8d689e5bfde0: Fix initialization of th_task_state on each thread on expanding hot teams. (authored by tlwilmar).
Fix initialization of th_task_state on each thread on expanding hot teams.
Feb 8 2023, 3:40 PM · Restricted Project, Restricted Project
tlwilmar closed D142247: Fix initialization of th_task_state on each thread on expanding hot teams..
Feb 8 2023, 3:40 PM · Restricted Project, Restricted Project

Jan 20 2023

tlwilmar requested review of D142247: Fix initialization of th_task_state on each thread on expanding hot teams..
Jan 20 2023, 12:19 PM · Restricted Project, Restricted Project
tlwilmar committed rG4c58e5a28f36: [OpenMP] Fix for distributed barrier. (authored by tlwilmar).
[OpenMP] Fix for distributed barrier.
Jan 20 2023, 11:55 AM · Restricted Project, Restricted Project
tlwilmar closed D141618: [OpenMP] Fix for distributed barrier.
Jan 20 2023, 11:54 AM · Restricted Project, Restricted Project
tlwilmar added a comment to D141618: [OpenMP] Fix for distributed barrier.

ping

Jan 20 2023, 11:29 AM · Restricted Project, Restricted Project

Jan 18 2023

tlwilmar accepted D141979: [OpenMP] Fix inconsistent task state if hot team is not used.

LGTM

Jan 18 2023, 2:21 PM · Restricted Project, Restricted Project

Jan 17 2023

tlwilmar accepted D139867: [OpenMP][libomp] Fix stats-gathering for new MSVC sections API.

LGTM

Jan 17 2023, 1:00 PM · Restricted Project, Restricted Project

Jan 12 2023

tlwilmar requested review of D141618: [OpenMP] Fix for distributed barrier.
Jan 12 2023, 8:37 AM · Restricted Project, Restricted Project

Jan 11 2023

tlwilmar committed rG9830a5d0c19b: [OpenMP] Fix for smaller team sizes inside teams construct. (authored by tlwilmar).
[OpenMP] Fix for smaller team sizes inside teams construct.
Jan 11 2023, 9:25 AM · Restricted Project, Restricted Project
tlwilmar closed D139960: [OpenMP] Fix for smaller team sizes inside teams construct.
Jan 11 2023, 9:24 AM · Restricted Project, Restricted Project

Dec 19 2022

tlwilmar accepted D139854: [OpenMP][libomp] Add topology information to thread structure.

LGTM

Dec 19 2022, 2:03 PM · Restricted Project, Restricted Project
tlwilmar accepted D139857: [OpenMP][libomp] Fix macOS 12 library destruction.

LGTM

Dec 19 2022, 1:52 PM · Restricted Project, Restricted Project

Dec 13 2022

tlwilmar requested review of D139960: [OpenMP] Fix for smaller team sizes inside teams construct.
Dec 13 2022, 11:26 AM · Restricted Project, Restricted Project

Dec 12 2022

tlwilmar committed rGbc6cc63ab839: [OpenMP] Refactoring: Move teams forking and serial region forking to separate… (authored by tlwilmar).
[OpenMP] Refactoring: Move teams forking and serial region forking to separate…
Dec 12 2022, 3:20 PM · Restricted Project, Restricted Project
tlwilmar closed D139116: [OpenMP] Refactoring: Move teams forking and serial region forking to separate functions..
Dec 12 2022, 3:20 PM · Restricted Project, Restricted Project
tlwilmar updated the diff for D139116: [OpenMP] Refactoring: Move teams forking and serial region forking to separate functions..

Thanks Johnny -- made all the fixes you mentioned.

Dec 12 2022, 12:55 PM · Restricted Project, Restricted Project

Dec 1 2022

tlwilmar requested review of D139116: [OpenMP] Refactoring: Move teams forking and serial region forking to separate functions..
Dec 1 2022, 7:31 AM · Restricted Project, Restricted Project

Nov 30 2022

tlwilmar added a reviewer for D138933: [OpenMP] Add API for pinned memory: Nawrin.
Nov 30 2022, 8:03 AM · Restricted Project, Restricted Project

Jul 15 2022

tlwilmar accepted D125991: [OpenMP][libomp] Fix affinity warnings and unify under one macro.

LGTM

Jul 15 2022, 9:06 AM · Restricted Project, Restricted Project
tlwilmar accepted D125993: [OpenMP][libomp] Allow reset affinity mask after parallel.

LGTM

Jul 15 2022, 9:04 AM · Restricted Project, Restricted Project
tlwilmar accepted D125996: [OpenMP][libomp] Fix /dev/shm pollution after forked child process terminates.

LGTM

Jul 15 2022, 9:00 AM · Restricted Project, Restricted Project
tlwilmar accepted D126001: [OpenMP][libomp] Fix fallthrough attribute detection for Intel compilers.

LGTM

Jul 15 2022, 8:58 AM · Restricted Project, Restricted Project

Jun 22 2022

tlwilmar accepted D126510: [OpenMP][libomp] avoid spin wait and yield on arm64 macOS.

LGTM

Jun 22 2022, 1:04 PM · Restricted Project, Restricted Project

Jun 21 2022

tlwilmar accepted D125013: [OpenMP][libomp] Hold old __kmp_threads arrays until library shutdown.

LGTM

Jun 21 2022, 3:49 PM · Restricted Project, Restricted Project

Apr 7 2022

tlwilmar added a comment to D123195: [OpenMP] libomp: Fix dist barrier for nested parallel/team.

Hi -- can you tell me which specific tests failed reliably? Was it one particular arch? I want to make sure I'm covering those tests and will give your change a try and review soon. Thanks!

Apr 7 2022, 7:24 AM · Restricted Project, Restricted Project

Apr 6 2022

tlwilmar added a comment to D123194: [OpenMP] libomp: fix alignment issue in dist barrier on non-x86.

Just a side note that dist barrier is an Intel-hardware-specific barrier. It's not likely to work well for non-Intel hardware.

Apr 6 2022, 2:40 PM · Restricted Project, Restricted Project

Mar 7 2022

tlwilmar accepted D120519: [OpenMP][libomp] Fix register constraint for tpause and umwait.

Looks good to me.

Mar 7 2022, 9:27 AM · Restricted Project, Restricted Project

Jan 18 2022

tlwilmar committed rG2e02579a76cf: [OpenMP] Add use of TPAUSE (authored by tlwilmar).
[OpenMP] Add use of TPAUSE
Jan 18 2022, 8:15 AM
tlwilmar closed D115758: [OpenMP][CPU runtime] Add use of TPAUSE to the runtime.
Jan 18 2022, 8:14 AM · Restricted Project

Dec 14 2021

tlwilmar retitled D115758: [OpenMP][CPU runtime] Add use of TPAUSE to the runtime from [OpenMP][CPU runtime] Add us of TPAUSE to the runtime to [OpenMP][CPU runtime] Add use of TPAUSE to the runtime.
Dec 14 2021, 1:22 PM · Restricted Project
tlwilmar retitled D115758: [OpenMP][CPU runtime] Add use of TPAUSE to the runtime from [OpenMP][CPU runtime] to [OpenMP][CPU runtime] Add us of TPAUSE to the runtime.
Dec 14 2021, 1:21 PM · Restricted Project
tlwilmar requested review of D115758: [OpenMP][CPU runtime] Add use of TPAUSE to the runtime.
Dec 14 2021, 1:21 PM · Restricted Project

Dec 8 2021

tlwilmar accepted D115340: [OpenMP] libomp: Fix crash in case application send us negative thread_limit value.

LGTM

Dec 8 2021, 7:50 AM · Restricted Project

Nov 3 2021

tlwilmar accepted D112597: [OpenMP] libomp: Fix handling of barrier pattern environment variables.

LGTM

Nov 3 2021, 12:53 PM · Restricted Project

Oct 14 2021

tlwilmar accepted D110435: [OpenMP][host runtime] Add initial hybrid CPU support.

LGTM

Oct 14 2021, 11:59 AM · Restricted Project
tlwilmar accepted D109921: [OpenMP][host runtime] Add support for teams affinity.

Okay, that makes sense. THanks! LGTM

Oct 14 2021, 11:56 AM · Restricted Project

Oct 13 2021

tlwilmar requested changes to D109921: [OpenMP][host runtime] Add support for teams affinity.

Check potential KMP_AFFINITY_SUPPORTED changes mentioned in comments.

Oct 13 2021, 10:35 AM · Restricted Project
tlwilmar accepted D111580: [OpenMP] libomp: fix ittnotify usage..

LGTM

Oct 13 2021, 10:20 AM · Restricted Project
tlwilmar accepted D110109: [OpenMP] libomp: add atomic functions for new OpenMP 5.1 atomics..

LGTM

Oct 13 2021, 10:17 AM · Restricted Project

Sep 24 2021

tlwilmar added a reviewer for D110354: Add option to build libomp library using Microsoft Visual C++ naming scheme.: jlpeyton.
Sep 24 2021, 6:00 AM · Restricted Project

Jul 23 2021

tlwilmar requested review of D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

@kkwli0 Other than some clang-format and clang-tidy issues (ignorable), builds look okay, so I think this is ready to try out.

Jul 23 2021, 11:43 AM · Restricted Project

Jul 21 2021

tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

Johnny added overloaded operator new() and operator delete() functions to the two kmp_flag classes that have virtual destructors. He took out the removal of the -Wl,-z,defs flag from the previous patch as well.
He applied it to LLVM and built all of LLVM using clang-12 (with no warnings now and no undefined references), then ran check-openmp and everything was OK.
Kelvin, please wait for the x86 build bot to give a passing result, before attempting to test. Thanks!

Jul 21 2021, 9:04 AM · Restricted Project

Jul 15 2021

tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

Patch notes from Jonathan Peyton: The -Wl,-z,defs flag sent in from LLVM cause undefined references which cause link-time errors in object files due to the new empty virtual destructors. We eliminate this flag for the host OpenMP runtime which eliminates the undefined reference errors. This prevents the host runtime from requiring linking to the standard C++ runtime library.

Jul 15 2021, 12:18 PM · Restricted Project

Jul 13 2021

tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

Kelvin, please try again with this new patch. As of this moment, at least, it applies on top of main branch.

Jul 13 2021, 9:41 AM · Restricted Project

Jul 12 2021

tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

kmp_barrier.h was missing; added back.

Jul 12 2021, 11:52 AM · Restricted Project
tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

This update contains the original patch plus https://reviews.llvm.org/D104638, https://reviews.llvm.org/D104788, and a few more additions to fix the warnings mentioned in D104788.

Jul 12 2021, 6:37 AM · Restricted Project

Jun 16 2021

tlwilmar committed rG25073a4ecfc9: [OpenMP] Add Two-level Distributed Barrier (authored by tlwilmar).
[OpenMP] Add Two-level Distributed Barrier
Jun 16 2021, 1:35 PM
tlwilmar closed D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.
Jun 16 2021, 1:35 PM · Restricted Project

Jun 15 2021

tlwilmar updated the diff for D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.

Added test lines.

Jun 15 2021, 8:03 AM · Restricted Project

Jun 4 2021

tlwilmar committed rG8ec9aa236e32: [OpenMP] Add experimental nesting mode feature (authored by tlwilmar).
[OpenMP] Add experimental nesting mode feature
Jun 4 2021, 2:01 PM
tlwilmar closed D102188: [OpenMP] Add experimental nesting mode.
Jun 4 2021, 2:01 PM · Restricted Project
tlwilmar updated the diff for D102188: [OpenMP] Add experimental nesting mode.

Nawrin -- I added a comment about it. I'm hesitant to document that part of this experimental feature in its current form -- it's needed for experimentation at the moment, but is likely to change in syntax or otherwise. It's for having an app use a limited outer level of parallelism, and then library calls into selected libraries can turn on nesting and avoid oversubscription. So, I've left out that option in the commit message, but added the comment to the code, emphasizing that it is an experimental option on an experimental feature.

Jun 4 2021, 7:26 AM · Restricted Project

May 25 2021

tlwilmar requested review of D103121: [OpenMP] libomp: Add new experimental barrier: two-level distributed barrier.
May 25 2021, 3:22 PM · Restricted Project

May 21 2021

tlwilmar updated the diff for D102188: [OpenMP] Add experimental nesting mode.

A few updates that were missed in the original patch were added. Condition fix in the init function, and a topology method check to make use of hwloc if available.

May 21 2021, 3:18 PM · Restricted Project

May 12 2021

tlwilmar added a comment to D102188: [OpenMP] Add experimental nesting mode.

Why "12 threads per parallel region" instead of 24? I thought hyper-threads are used by default. Maybe you assume no-SMT in your example? it will be helpful if you make it clear.

Yes, it works that way if SMT is available. So, if there are 2 threads available per core, it would allow for a third nesting level, with size 2.

May 12 2021, 1:54 PM · Restricted Project
tlwilmar added a comment to D102188: [OpenMP] Add experimental nesting mode.

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.

May 12 2021, 1:52 PM · Restricted Project
tlwilmar added a comment to D102188: [OpenMP] Add experimental nesting mode.

Why "12 threads per parallel region" instead of 24? I thought hyper-threads are used by default. Maybe you assume no-SMT in your example? it will be helpful if you make it clear.

May 12 2021, 1:37 PM · Restricted Project

May 10 2021

tlwilmar requested review of D102188: [OpenMP] Add experimental nesting mode.
May 10 2021, 12:59 PM · Restricted Project

May 3 2021

tlwilmar accepted D100997: [OpenMP] Refactor/Rework topology discovery code.

LGTM

May 3 2021, 10:42 AM · Restricted Project

Mar 5 2021

tlwilmar closed D97019: [OpenMP] libomp: Add masked construct, change proc-bind keyword, deprecate master construct.
Mar 5 2021, 12:47 PM · Restricted Project
tlwilmar added a comment to D97019: [OpenMP] libomp: Add masked construct, change proc-bind keyword, deprecate master construct.

Hi Johnny,
When I just commit via the instructions on our wiki, I just see this separate e-mail labeled "[Diffusion]" which looks like a separate review in Phabricator. When others push their changes, it appears attached to the original phabricator review, and seems to close it automagically. What am I missing there?

Mar 5 2021, 7:37 AM · Restricted Project
tlwilmar committed rG97d000cfc6d4: Added API for "masked" construct via two entrypoints: __kmpc_masked, (authored by tlwilmar).
Added API for "masked" construct via two entrypoints: __kmpc_masked,
Mar 5 2021, 7:30 AM

Feb 26 2021

tlwilmar updated the diff for D97019: [OpenMP] libomp: Add masked construct, change proc-bind keyword, deprecate master construct.

Added masked to cons_text_c.

Feb 26 2021, 5:34 PM · Restricted Project

Feb 18 2021

tlwilmar requested review of D97019: [OpenMP] libomp: Add masked construct, change proc-bind keyword, deprecate master construct.
Feb 18 2021, 7:28 PM · Restricted Project

Jan 29 2021

tlwilmar committed rG67773681c0ef: [OpenMP] Add environment variable to force monotonic dynamic scheduling (authored by jlpeyton).
[OpenMP] Add environment variable to force monotonic dynamic scheduling
Jan 29 2021, 10:27 AM
tlwilmar closed D95263: [OpenMP] Add environment variable to force monotonic dynamic scheduling.
Jan 29 2021, 10:26 AM · Restricted Project

Jan 28 2021

tlwilmar updated the diff for D95263: [OpenMP] Add environment variable to force monotonic dynamic scheduling.

Addressed Nawrin's comment fixes.

Jan 28 2021, 9:36 AM · Restricted Project

Jan 27 2021

tlwilmar accepted D95157: [OpenMP] Add CPUID leaf 1f topology discovery.

LGTM

Jan 27 2021, 7:23 AM · Restricted Project

Jan 26 2021

tlwilmar accepted D95156: [OpenMP] Update HWLOC topology detection for 2.0.x.

LGTM

Jan 26 2021, 7:24 AM · Restricted Project
tlwilmar accepted D95170: [OpenMP] Fix misleading warning for OMP_PLACES.

LGTM

Jan 26 2021, 7:02 AM · Restricted Project

Jan 22 2021

tlwilmar requested review of D95263: [OpenMP] Add environment variable to force monotonic dynamic scheduling.
Jan 22 2021, 12:58 PM · Restricted Project

Jan 7 2021

tlwilmar requested review of D94241: [OpenMP] Fix hierarchical barrier.
Jan 7 2021, 9:20 AM · Restricted Project

Dec 17 2020

tlwilmar added a reviewer for D92942: Handle implicit conversion warnings: jlpeyton.
Dec 17 2020, 8:50 AM · Restricted Project

Dec 9 2020

tlwilmar requested review of D92942: Handle implicit conversion warnings.
Dec 9 2020, 8:59 AM · Restricted Project

Dec 1 2020

tlwilmar requested review of D91189: Add support for Intel's umonitor/umwait.
Dec 1 2020, 9:35 AM · Restricted Project
tlwilmar updated the diff for D91189: Add support for Intel's umonitor/umwait.

One missed change added.

Dec 1 2020, 9:33 AM · Restricted Project

Nov 30 2020

tlwilmar reopened D91189: Add support for Intel's umonitor/umwait.

Build problems associated with target attribute for waitpkg should be fixed now. Please try the new diff.

Nov 30 2020, 9:37 PM · Restricted Project
tlwilmar updated the diff for D91189: Add support for Intel's umonitor/umwait.

Fixed build problems associated with target attribute for waitpkg.

Nov 30 2020, 9:36 PM · Restricted Project
tlwilmar updated the summary of D91189: Add support for Intel's umonitor/umwait.
Nov 30 2020, 9:32 PM · Restricted Project

Nov 16 2020

tlwilmar accepted D90867: [OpenMP][stats] reset serial state when re-entering serial region.

LGTM

Nov 16 2020, 12:26 PM · Restricted Project

Nov 10 2020

tlwilmar requested review of D91189: Add support for Intel's umonitor/umwait.
Nov 10 2020, 10:27 AM · Restricted Project

Oct 23 2019

tlwilmar accepted D68036: Tasks dependencies hash re-sizing fixed.

LGTM

Oct 23 2019, 11:00 AM · Restricted Project

Aug 5 2019

tlwilmar added a reviewer for D65714: Add support for libgomp's GOMP_*_nonmonotonic_* functions: jlpeyton.
Aug 5 2019, 7:51 AM · Restricted Project, Restricted Project

Jul 22 2019

tlwilmar accepted rL366716: Delete empty file.

LGTM

Jul 22 2019, 11:23 AM

Jul 12 2019

tlwilmar added inline comments to D64534: Remove OMP spec versioning.
Jul 12 2019, 1:10 PM · Restricted Project, Restricted Project
tlwilmar added a comment to D64534: Remove OMP spec versioning.

@tlwilmar D64625 conflicts with moving the headers. Let me know if you want to land this first, but I'd like to get the fix into the next release which is set to branch next week.

Jul 12 2019, 5:29 AM · Restricted Project, Restricted Project

Jul 10 2019

tlwilmar created D64534: Remove OMP spec versioning.
Jul 10 2019, 2:47 PM · Restricted Project, Restricted Project

Jun 27 2019

tlwilmar created D63891: Cleanup of unused code.
Jun 27 2019, 1:05 PM · Restricted Project, Restricted Project

Jun 18 2019

tlwilmar accepted D62485: New implementation of OpenMP 5.0 detached tasks..

LGTM

Jun 18 2019, 1:21 PM · Restricted Project, Restricted Project

Jun 17 2019

tlwilmar added a reviewer for D63009: [OpenMP] Add target task alloc function with device ID: hbae.
Jun 17 2019, 11:48 AM · Restricted Project, Restricted Project, Restricted Project

May 15 2019

tlwilmar accepted D61944: Fixed https://bugs.llvm.org/show_bug.cgi?id=41584.

LGTM!

May 15 2019, 7:21 AM · Restricted Project

Apr 23 2019

tlwilmar accepted D60983: [OpenMP] Eliminate some compiler warnings.

LGTM

Apr 23 2019, 12:18 PM · Restricted Project, Restricted Project

Apr 8 2019

tlwilmar accepted D59783: [OpenMP] Implement 5.0 memory management.

LGTM

Apr 8 2019, 10:35 AM · Restricted Project, Restricted Project
tlwilmar added a comment to D59508: Clean up load balancing dynamic mode.

*ping*

Apr 8 2019, 10:24 AM · Restricted Project, Restricted Project

Apr 2 2019

tlwilmar accepted D59801: [OpenMP][Stats] Fix stats gathering for distribute and team clause.

LGTM

Apr 2 2019, 1:01 PM · Restricted Project, Restricted Project

Mar 18 2019

tlwilmar updated the summary of D59508: Clean up load balancing dynamic mode.
Mar 18 2019, 1:24 PM · Restricted Project, Restricted Project