- User Since
- Mar 11 2020, 6:01 AM (27 w, 5 d)
Tue, Sep 15
- Fixed bug when creating the wait runtime call.
- Added constants to ease the access to OffloadArrays in the function detectIssue.
Tue, Sep 8
Mon, Sep 7
Tue, Sep 1
Mon, Aug 31
- Adding regression test
rG8931add61705 [OpenMPOpt][HideMemTransfersLatency] Get values stored in offload arrays.
- Removing factory function for OffloadArray, now using it as member function.
- Calculating the accessed index of the OffloadArray using the offset returned by GetPointerBaseWithConstantOffset.
Fri, Aug 28
Thu, Aug 27
Tue, Aug 25
- NIT changes to comments
- NIT changes.
- Tried to split the patch, but then we couldn't test for the values we got.
Mon, Aug 24
Aug 21 2020
- Require comments
- Added REQUIRES: assertions to regression test.
NIT: Refactor some variable declarations.
Aug 20 2020
- Adding regression test.
Aug 18 2020
- Removing comparison with explicit runtime functions from canBeMovedDownwards.
- Minor refactors to comments and arguments.
Adding constraint mayReadFromMemory to canBeMovedDownwards.
Aug 17 2020
- Refactor to some names and other minor changes.
- Update regression test to expect the split runtime calls.
Aug 16 2020
Aug 13 2020
- Isolating split function.
Aug 12 2020
- Changing std::vector for SmallVector in split function.
Sorry. Error updating last patch.
- Fix to canBeMovedDownwards
- Fix to canBeMovedDownwards.
- Removing move code.
- Splitting patch into canBeMoved logic and splitting the runtime call.
- Fix to minor bug in detectIssue.
- Update regression test. Now checks that the runtime call __tgt_target_data_begin is successfully split. Not sure if this should go in another patch.
Aug 11 2020
- Using OMPIRBuilder instead of manually generating the runtime calls.
- Updating regression test for this optimization.
Aug 10 2020
I think if I only add the declarations of __tgt_target_data_begin_issue and __tgt_target_data_being_wait the linking process will fail. How should I define the wait function?, the issue is just a wrapper of the current function, but as we don't have Shilei's patch merged yet I would have to create something that does nothing and change it later when the asynchronous stuff is merged.
Aug 7 2020
Jul 31 2020
- Fix code style issue.
- Problem with getModRefInfo, it always returns that a value V may be modified, even when running opt with -aa-pipeline=basic-aa.
Jul 30 2020
Jul 25 2020
Jul 20 2020
- Refactors discussed made.
- OpenMPOpt unit tests infrastructure merged.
Jul 18 2020
Finished getting values in offload arrays
Unit test for getValuesInOfflArrays working.
Jul 9 2020
Jul 7 2020
- Exposing getValuesInOfflArrays() to make it unit testable.
- Adding static function needed in unittest.
- Fixing description in header of new file.
Jul 5 2020
- Fix heavyComputation1 test case.
- Passing all test cases through optimizer in order to remove some unnecessary code.
Jul 4 2020
- Creating the first unit test for OpenMPOpt. This creation led me to move the declaration of OpenMPOpt and OMPInformationCache to OpenMPOpt.h.
- I propose refactoring the optimizations to separate structures so that they are easily maintainable and testable.
Jun 29 2020
Including all diff
Jun 28 2020
Changing from returning status code to bool + Getting MemorySSAAnalysis through OMPInfoCache
Jun 1 2020
Added FileCheck constructs
May 24 2020
Added __tgt_target_data_begin to the commented original code, just to make the test cases easier to read.
May 22 2020
- Fixed illegal movement: now there's one negative test case (issue cannot be moved) and one positive (with noalias) where the issue can be moved.
- Added data transfer only test case.
May 16 2020
May 15 2020
Mar 21 2020
Mar 20 2020
Removing unnecessary check for variadic function.
Mar 19 2020
Mar 15 2020
Minor change to test file + adding std::move to object copy.
Regression test modified to match a proper use of a runtime library function.
PD: Sorry for all that mess before.
Mar 13 2020
- RFI is not created unless the declaration found matches the runtime function type.
- Conditional modified to check when a function is variadic.
- Comparison between Type* made directly.
- The function that checks if the types matches was moved to a class static function.
Added regression test that uses the statistics to show that "runtime functions" declarations with different types than the expected are not matched.