Page MenuHomePhabricator
Feed Advanced Search

Tue, Sep 24

protze.joachim committed rG886a4ff977c1: [TSAN] Add read/write range interface functions with PC (authored by protze.joachim).
[TSAN] Add read/write range interface functions with PC
Tue, Sep 24, 4:20 AM
protze.joachim added a comment to D67447: Enable tasks dependencies hashmaps resizing.

@viroulep do you have commit access or should we land that for you?

Tue, Sep 24, 4:19 AM · Restricted Project, Restricted Project
protze.joachim added a comment to D62393: [OPENMP][NVPTX]Mark parallel level counter as volatile..

You're wrong. My output:

omp_in_parallel=0
omp_get_level=1
omp_get_active_level=0

So, omp_in_parallel works correctly on GPU.

Tue, Sep 24, 12:46 AM · Restricted Project

Sep 23 2019

protze.joachim added a comment to D62393: [OPENMP][NVPTX]Mark parallel level counter as volatile..

It is probably not directly related to this patch, but I think the logic of omp_in_parallel() is not valid. It only works, because the level counting is also broken. This code

int main(){
#pragma omp target 
  #pragma omp parallel if(0)
    if(omp_get_thread_num()==0) {
      printf("omp_in_parallel=%i\n", omp_in_parallel()); 
      printf("omp_get_level=%i\n", omp_get_level()); 
      printf("omp_get_active_level=%i\n", omp_get_active_level()); 
    }
  return 0;
}

should print (and does so with env OMP_TARGET_OFFLOAD=disabled):

omp_in_parallel=0
omp_get_level=1
omp_get_active_level=0

As I understand the code for omp_in_parallel(), the example code would print omp_in_parallel=1 if the level would correctly be increased.

Sep 23 2019, 8:29 AM · Restricted Project

Sep 9 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Removed the counters as requested

Sep 9 2019, 7:54 PM

Sep 4 2019

protze.joachim added inline comments to D64375: [OpenMP][Docs] Provide implementation status details.
Sep 4 2019, 9:07 AM · Restricted Project, Restricted Project

Aug 30 2019

protze.joachim added a comment to D66885: [TSan] Add read/write range interface functions with PC.

In this new test, I see the same issue related to race on stack variables as reported here:
https://github.com/google/sanitizers/issues/1134

Does it make the test fail? Or just produces a warning? We could switch to a heap-allocated block or a global.

Aug 30 2019, 12:43 AM · Restricted Project, Restricted Project

Aug 29 2019

protze.joachim updated the diff for D66885: [TSan] Add read/write range interface functions with PC.

I derived a test from java_race_pc.cc.

Aug 29 2019, 1:07 AM · Restricted Project, Restricted Project

Aug 28 2019

protze.joachim added a comment to D66885: [TSan] Add read/write range interface functions with PC.

Who are "we"? And you would prefer to call them where? ;)

Aug 28 2019, 10:06 AM · Restricted Project, Restricted Project
protze.joachim updated the summary of D66885: [TSan] Add read/write range interface functions with PC.
Aug 28 2019, 9:35 AM · Restricted Project, Restricted Project
protze.joachim created D66885: [TSan] Add read/write range interface functions with PC.
Aug 28 2019, 8:05 AM · Restricted Project, Restricted Project
protze.joachim abandoned D44881: [sanitizer_common] Ignore unloading of suppressed library.

TSAN_OPTIONS="ignore_noninstrumented_module=1" works for us

Aug 28 2019, 8:05 AM

Jul 29 2019

protze.joachim accepted D64025: Add OMPT support for teams construct.

The reported events look good to me.

Jul 29 2019, 2:57 PM · Restricted Project, Restricted Project

Jul 18 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Removed the Fortran annotation functions :/
Fixed also the other comments

Jul 18 2019, 1:56 PM
protze.joachim added inline comments to D45890: [OMPT] Add implementation and tests of Archer tool.
Jul 18 2019, 1:56 PM

Jul 17 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Addressed comments by Jonas.
The tests also support gcc now.

Jul 17 2019, 9:43 AM
protze.joachim added inline comments to D45890: [OMPT] Add implementation and tests of Archer tool.
Jul 17 2019, 9:41 AM

Jul 16 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Removed a file which was mistakenly added

Jul 16 2019, 1:28 AM
protze.joachim added inline comments to D45890: [OMPT] Add implementation and tests of Archer tool.
Jul 16 2019, 1:10 AM
protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Addressing Jonas' comments

Jul 16 2019, 1:08 AM

Jun 21 2019

protze.joachim added a comment to D63599: Fixed memory use-after-free problem..

This patch fixes the bug for our usecase.
Thanks!

Jun 21 2019, 7:18 AM · Restricted Project, Restricted Project

Jun 19 2019

protze.joachim added inline comments to D62485: New implementation of OpenMP 5.0 detached tasks..
Jun 19 2019, 1:17 AM · Restricted Project, Restricted Project
protze.joachim added a comment to D62485: New implementation of OpenMP 5.0 detached tasks..

Are there any plans to add the code for the appropriate OMPT callbacks?

Jun 19 2019, 1:09 AM · Restricted Project, Restricted Project

May 20 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

Relicensed Archer under Apache license, updated the files.

May 20 2019, 8:43 AM
protze.joachim committed rG4109d5606e23: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures (authored by protze.joachim).
[OpenMP][OMPT] Fix locking testcases for 32 bit architectures
May 20 2019, 7:20 AM
protze.joachim committed rG48b8a4b5190d: [OMPT] Handling of the events of initial-task-begin and initial-task-end (authored by protze.joachim).
[OMPT] Handling of the events of initial-task-begin and initial-task-end
May 20 2019, 7:20 AM

May 9 2019

protze.joachim accepted D61657: Add implementation to two OMPT API routines.

Great, thanks!
I like the approach with USE_PRIVATE_TOOL.

May 9 2019, 9:27 AM · Restricted Project

May 8 2019

protze.joachim added a comment to D61657: Add implementation to two OMPT API routines.

I think, a test for ompt_finalize_tool could be something along:

May 8 2019, 12:57 AM · Restricted Project
protze.joachim added a comment to D61657: Add implementation to two OMPT API routines.

The code looks good to me, thanks for fixing the implementation.

May 8 2019, 12:44 AM · Restricted Project

Mar 16 2019

protze.joachim added a comment to D59451: Fix gettid warnings and one test on FreeBSD.

This code does not directly use pthreads, but uses C++11 threads.
Why does the compiler not link the necessary threading library, when using C++11 threads? I suggest to define a lit macro like %cxx11_thread which sets the necessary flags. I guess, that on Linux -fopenmp already implies linking the pthread library.

Mar 16 2019, 11:56 AM · Restricted Project, Restricted Project

Mar 1 2019

protze.joachim added inline comments to D58776: [OMPT] Handling of the events of initial-task-begin and initial-task-end.
Mar 1 2019, 1:08 AM · Restricted Project, Restricted Project

Feb 21 2019

protze.joachim added inline comments to D58454: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures.
Feb 21 2019, 6:45 AM · Restricted Project, Restricted Project
protze.joachim created D58506: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures (2).
Feb 21 2019, 6:42 AM · Restricted Project, Restricted Project
protze.joachim added inline comments to D58454: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures.
Feb 21 2019, 4:02 AM · Restricted Project, Restricted Project
protze.joachim committed rG8b96fad85cba: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures (authored by protze.joachim).
[OpenMP][OMPT] Fix locking testcases for 32 bit architectures
Feb 21 2019, 12:50 AM

Feb 20 2019

protze.joachim created D58454: [OpenMP][OMPT] Fix locking testcases for 32 bit architectures.
Feb 20 2019, 8:31 AM · Restricted Project, Restricted Project

Feb 11 2019

protze.joachim added a comment to D56804: Fix thread_limits to work properly for teams construct.

Since there is only one other ICV which might be handled similary (bind-var), I will not further argue for making a special case for thread-limit-var. So leave it as it is.

Feb 11 2019, 1:16 AM · Restricted Project, Restricted Project
protze.joachim accepted D58002: [OMPT] Remove test output from source tree.

LGTM, thanks for catching this!
The output is written to the build dir anyways:

Feb 11 2019, 1:02 AM · Restricted Project, Restricted Project

Feb 7 2019

protze.joachim added inline comments to D56804: Fix thread_limits to work properly for teams construct.
Feb 7 2019, 6:04 AM · Restricted Project, Restricted Project
protze.joachim requested changes to D57469: Set exit_frame in master task before calling a user's outlined function for a parallel loop construct.

Please provide test cases, so that we can understand the impact of this change.

Feb 7 2019, 4:03 AM · Restricted Project
protze.joachim added a comment to D56804: Fix thread_limits to work properly for teams construct.

I'm a bit confused about the explicit copy per task.

Feb 7 2019, 3:47 AM · Restricted Project, Restricted Project

Feb 4 2019

protze.joachim updated the diff for D45890: [OMPT] Add implementation and tests of Archer tool.

The code is updated to be compatible with OMPT as in OpenMP 5.0.

Feb 4 2019, 8:38 AM
protze.joachim committed rG0c599c388dbb: [OMPT] Make sure that OMPT is enabled when accessing internals of the runtime (authored by protze.joachim).
[OMPT] Make sure that OMPT is enabled when accessing internals of the runtime
Feb 4 2019, 8:00 AM

Jan 25 2019

protze.joachim added a comment to D55725: [OpenMP] Add libs to clang-dedicated directories.
  • libgomp.so, libiomp5.so: My understanding is that these symlinks exist solely for backward compatibility. This patch currently doesn't affect them (doesn't bother to install them to Clang-dedicated directories). Any reason to change that?
Jan 25 2019, 7:47 AM · Restricted Project

Jan 16 2019

protze.joachim added reviewers for D56775: [OpenMP] Remove compiler warning about unused value: hbae, AndreyChurbanov.
Jan 16 2019, 1:57 AM
protze.joachim created D56775: [OpenMP] Remove compiler warning about unused value.
Jan 16 2019, 1:56 AM
protze.joachim added a comment to D47717: [OMPT] Make sure that OMPT is enabled in runtime entry points that access internals of the runtime.

The patch in general looks good to me.

Jan 16 2019, 1:05 AM
protze.joachim updated the diff for D56397: [OpenMP] Silence warning about fallthrough.

Updated as requested

Jan 16 2019, 12:46 AM · Restricted Project

Jan 15 2019

protze.joachim updated the diff for D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.

Fix the last mentioning of ompt.h

Jan 15 2019, 7:25 AM
protze.joachim added a comment to D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.

Is this good to go for 8.0?

Jan 15 2019, 1:36 AM

Jan 10 2019

protze.joachim updated the diff for D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.

Implemented changes by Hansang.

Jan 10 2019, 1:12 AM

Jan 9 2019

protze.joachim added a comment to rL317115: [OpenMP] Fix race condition in omp_init_lock.

Does the observation in https://bugs.llvm.org/show_bug.cgi?id=36772 match your expectation regarding the remaining race?

Jan 9 2019, 3:43 AM

Jan 8 2019

protze.joachim updated the diff for D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.
  • I activated the omp_get_initial_device() call to get the number at runtime.
  • I also changed the name of ompt.h to omp-tools.h as defined in the SPEC
Jan 8 2019, 8:39 AM

Jan 7 2019

protze.joachim closed D55577: [OMPT] First chunk of final OMPT 5.0 interface updates.

Implemented in r349458.
Missed to include the review number in the commit message

Jan 7 2019, 9:38 AM
protze.joachim created D56397: [OpenMP] Silence warning about fallthrough.
Jan 7 2019, 9:30 AM · Restricted Project

Jan 2 2019

protze.joachim accepted D55788: Fix performance regression in SPEC kdtree test.

LGTM

Jan 2 2019, 8:27 AM · Restricted Project
protze.joachim added a comment to D55578: Add omp_get_device_num() and update several other device API functions (FIXED).

Is the intention to have this ready for the 8.0 release?

Jan 2 2019, 3:36 AM · Restricted Project

Dec 18 2018

protze.joachim added inline comments to D55788: Fix performance regression in SPEC kdtree test.
Dec 18 2018, 3:21 AM · Restricted Project

Dec 17 2018

protze.joachim added inline comments to D55577: [OMPT] First chunk of final OMPT 5.0 interface updates.
Dec 17 2018, 8:39 AM
protze.joachim updated the diff for D55577: [OMPT] First chunk of final OMPT 5.0 interface updates.

Implemented most changes requested by Hansang

Dec 17 2018, 8:38 AM

Dec 12 2018

protze.joachim added inline comments to D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.
Dec 12 2018, 12:51 AM
protze.joachim added a child revision for D55578: Add omp_get_device_num() and update several other device API functions (FIXED): D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.
Dec 12 2018, 12:46 AM · Restricted Project
protze.joachim added a parent revision for D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates: D55578: Add omp_get_device_num() and update several other device API functions (FIXED).
Dec 12 2018, 12:46 AM

Dec 11 2018

protze.joachim added a child revision for D55577: [OMPT] First chunk of final OMPT 5.0 interface updates: D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.
Dec 11 2018, 2:19 PM
protze.joachim added a parent revision for D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates: D55577: [OMPT] First chunk of final OMPT 5.0 interface updates.
Dec 11 2018, 2:19 PM
protze.joachim created D55579: [OMPT] Second chunk of final OMPT 5.0 interface updates.
Dec 11 2018, 2:19 PM
protze.joachim created D55577: [OMPT] First chunk of final OMPT 5.0 interface updates.
Dec 11 2018, 2:03 PM
protze.joachim planned changes to D45890: [OMPT] Add implementation and tests of Archer tool.

This will not compile with the current version of the OMPT interface, needs updates first

Dec 11 2018, 9:16 AM

Nov 14 2018

protze.joachim accepted D54347: Rename ompt_mutex_impl_unknown to ompt_mutex_impl_none.

LGTM

Nov 14 2018, 6:14 AM · Restricted Project

Oct 19 2018

protze.joachim created D53442: Initialize variables before assignment in asm.
Oct 19 2018, 10:11 AM

Sep 14 2018

protze.joachim accepted D52046: [OMPT] Fix unsafe initialization of ompt_data_t objects..

LGTM

Sep 14 2018, 6:15 AM · Restricted Project

Sep 11 2018

protze.joachim added a comment to D51687: [libomptarget-nvptx] Add testing infrastructure.

Considering your comment in the description about requiring latest Clang perhaps you should revisit this patch: D46842

Sep 11 2018, 8:57 AM

Sep 10 2018

protze.joachim accepted D50774: [OMPT] Update types according to TR7.

LGTM

Sep 10 2018, 7:34 AM

Aug 24 2018

protze.joachim added inline comments to D50774: [OMPT] Update types according to TR7.
Aug 24 2018, 1:06 AM

Aug 15 2018

protze.joachim accepted D48362: [OMPT] Remove OMPT idle callback.

Was hold back from 7.0, to keep the implementation according to TR6.

Aug 15 2018, 6:54 AM

Aug 13 2018

protze.joachim added a comment to D50522: [OpenMP][libomptarget] Bringing up to spec with respect to OMP_TARGET_OFFLOAD env var.

@Hahnfeld and I discussed the behavior and found a very inconsistent behavior. Let's consider something like the following code, under the constraint, that device(1) is busy (will fail to offload) and device(0) is free:

Aug 13 2018, 4:03 AM

Aug 10 2018

protze.joachim accepted D50565: [OMPT] Make omp_control_tool() compliant when called from Fortran programs.

Thanks for catching this. It seems like we need some Fortran tests for OMPT.
LGTM

Aug 10 2018, 9:38 AM · Restricted Project
protze.joachim added a comment to D50522: [OpenMP][libomptarget] Bringing up to spec with respect to OMP_TARGET_OFFLOAD env var.

So you like deciding available on first use? This is what your comment seems to imply, but I am not 100% sure.

Aug 10 2018, 4:08 AM

Aug 1 2018

protze.joachim accepted D50140: [OMPT] Fix taskloop testcase scheduling effects.

LGTM

Aug 1 2018, 9:15 AM

Jul 31 2018

protze.joachim accepted D50086: [OMPT] Disable by default on Windows.

I second this change, since this should hopefully allow to include OpenMP in the release build, until someone can fix the build of OMPT on Windows.

Jul 31 2018, 1:23 PM

Jul 27 2018

protze.joachim added a comment to D47717: [OMPT] Make sure that OMPT is enabled in runtime entry points that access internals of the runtime.

I would like to commit this patch before the 7.0 branch.
Changing the name of the bit can be done in a later patch.
@jmellorcrummey do you agree, can you remove your request for changes?

Jul 27 2018, 11:17 AM
protze.joachim accepted D47709: [OMPT] Fix OMPT callbacks for the taskloop construct and add testcase.

I apply changes requested by hbae on commit.

Jul 27 2018, 10:41 AM
protze.joachim accepted D49373: [OMPT] Print two more addresses in print_fuzzy_address_block().

LGTM

Jul 27 2018, 10:40 AM
protze.joachim accepted D49181: [OMPT] Adapt OMPT callback structure for tasks to handle untied tasks correctly (+ adapt testcase).

I apply suggested changes by hbae on commit.

Jul 27 2018, 10:36 AM

Jul 17 2018

protze.joachim accepted D49418: Also support several images for elf.

The change is symetric with what is implemented for cuda.
LGTM

Jul 17 2018, 8:38 AM
protze.joachim updated the summary of D49418: Also support several images for elf.
Jul 17 2018, 4:06 AM

Jul 5 2018

protze.joachim accepted D48984: [OpenMP] Define __STDC_FORMAT_MACROS in callback.h.

Lgtm

Jul 5 2018, 11:57 AM
protze.joachim accepted D48932: [OMPT] Add synchronization to threads_nested.c testcase.

LGTM

Jul 5 2018, 2:13 AM
protze.joachim accepted D48888: Dropped non-supoorted "--no-as-needed" flag from OMPT tests for macOS.

LGTM

Jul 5 2018, 2:11 AM

Jul 3 2018

protze.joachim added inline comments to D47824: [OMPT] Add testcases for thread_begin and thread_end callbacks.
Jul 3 2018, 12:54 PM
protze.joachim requested changes to D48888: Dropped non-supoorted "--no-as-needed" flag from OMPT tests for macOS.

As discussed on the mailing list, the flag should only be dropped on Mac OS. My pragmatic solution would be:

Jul 3 2018, 12:47 PM

Jun 20 2018

protze.joachim added a comment to D47717: [OMPT] Make sure that OMPT is enabled in runtime entry points that access internals of the runtime.

I think we should change the name of the bit ompt_enabled.enabled to ompt_enabled.activated. That would make joachim’s distinction clear. I was commenting on the setting of OMP_TOOL=enabled. There is a difference between enabled and activated.

Jun 20 2018, 8:40 AM

Jun 18 2018

protze.joachim added a comment to D47717: [OMPT] Make sure that OMPT is enabled in runtime entry points that access internals of the runtime.

The OMPT tool can decide at multiple points to be inactive, here we look at:

Jun 18 2018, 7:54 AM
protze.joachim added a comment to D48282: [OMPT] Use alloca() to force availability of frame pointer .

The problem, which gets visible in this test case is the use of __builtin_frame_address(1), which is documented to be not safe.
Is there a better way to get the canonical frame address of the calling function? Also the address returned by __builtin_frame_address seems to be different from the canonical frame address. How can we get the requested address?

Jun 18 2018, 7:28 AM

Jun 7 2018

protze.joachim added inline comments to D47903: [OpenMP] Use C++11 Atomics - barrier, tasking, and lock code.
Jun 7 2018, 2:19 PM · Restricted Project
protze.joachim added a comment to D47709: [OMPT] Fix OMPT callbacks for the taskloop construct and add testcase.

taskloop is actually a tasking construct and explicitly no worksharing construct. So, please move the test in the task directory.

Jun 7 2018, 8:54 AM

Jun 4 2018

protze.joachim added inline comments to D47709: [OMPT] Fix OMPT callbacks for the taskloop construct and add testcase.
Jun 4 2018, 1:40 PM

May 27 2018

protze.joachim accepted D47119: [OMPT] Fix test parallel/not_enough_threads.c.

LGTM

May 27 2018, 3:11 AM

May 10 2018

protze.joachim added a comment to D44881: [sanitizer_common] Ignore unloading of suppressed library.

@dvyukov thanks for the detailed reasoning.

May 10 2018, 11:27 AM

May 7 2018

protze.joachim created D46533: [OMPT] Provide the right thread_num for ancestor levels.
May 7 2018, 9:42 AM