Commit graph

5458 Commits

Autor SHA1 Nachricht Datum
Jenkins b2c9b7af01 Merge 'master' into 'amd-master'
Change-Id: I4cbe49d40a046c80e4968aac8fa7fd760e2d9709
2017-11-20 04:10:56 -06:00
Maneesh Gupta 4477d3d314 Merge pull request #266 from gargrahul/fix_half2_gfx900
Fixed half2 issue on gfx900
2017-11-20 07:28:41 +05:30
Maneesh Gupta 29c0ab8401 Merge pull request #265 from phani544/nvccTests
[nvccTests]Enabled inline_asm_vadd on nvcc
2017-11-20 07:28:29 +05:30
Ben Sander aeadc3f18f Fix test on cuda 2017-11-19 15:31:02 -06:00
Ben Sander a43262e699 Merge branch 'feature_natural_indexing' of https://github.com/AlexVlx/HIP 2017-11-19 15:25:17 -06:00
Ben Sander fc34fd6f03 Temporarily disable P2P on nvidia (fails on dual GPU) 2017-11-19 15:21:37 -06:00
Rahul Garg 76f174b536 Update hipModuleGetTexRef API 2017-11-19 22:10:46 +05:30
Alex Voicu 0cc921f103 This implements the trivial change needed to move back from the hip{Something}_{x, y, z} macros to the natural CUDA syntax of Something.{x, y, z}. This is contained in lines 384-404 in hip_runtime.h. All of the other changes have to do with changing unit tests to use this syntax. The macros are retained for backwards compatibility. 2017-11-19 01:54:12 +00:00
Alex Voicu 07c9337f57 This actually (tries) to do the right thing all the way, by using memcpy for bitcasting, and not rely on undefined behaviour of a different flavour as a substitute for the original undefined behaviour. Note that the compiler will (should) optimise down to the same emitted code, since this is a pattern it understands. 2017-11-18 01:16:31 +00:00
Alex Voicu d7d77cfbe1 This fixes some outright quaint choices made when implementing HIP's bitwise conversion functions, by using simple reinterpret_casts, as is idiomatic. These functions are supposed to be re-entrant, correct and efficient. Sadly, they were neither: they hid a massive race condition against a value stored in global memory, which means that they were also unreasonably slow if they ever managed to be correct, and relied on union based type punning which is in a grey area of the standard. It is difficult to ascertain what may have been the reason for coming up with this quirky solution. 2017-11-17 16:00:28 +00:00
Alex Voicu 45ac5b70df Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe 2017-11-16 23:20:15 +00:00
Rahul Garg cfc9f87465 Fixed test case for GFX900 2017-11-16 09:34:52 +05:30
Rahul Garg 20947f80fb Fixed half2 issue on gfx900 2017-11-15 18:52:59 +05:30
Rahul Garg e2e499461a Removed redundant desc variable 2017-11-15 18:28:27 +05:30
Rahul Garg edbfeeb141 -Fixed texture driver API sample
-Added hipTexRefSetAddress and hipTexRefSetAddress2D APIs
2017-11-15 18:23:28 +05:30
Phaneendr-kumar Lanka 9fa3ed4f6f [nvccTests]Enabled inline_asm_vadd on nvcc 2017-11-14 16:37:59 +05:30
Rahul Garg e536eb038d Texture code reorganized 2017-11-14 11:09:35 +05:30
Pierre e60a95d7dd Fix missing MARKER_END
Logging status of hipCtxSynchronize was missing
Test if hip profiling is active for MARKER_END in ihipPostLaunchKernel
Add MARKER_END after the completion of a kernel launched through
the "grid launch"
2017-11-13 16:13:19 -05:00
Chris Kitching 642af94492 Add an explicit check for proper rewriting of CUDA includes 2017-11-13 21:02:42 +00:00
Chris Kitching e8c1e7bb11 Add a preprocessor conditional to one of the tests
Hurrah, we can cope with ifdefs now (except for kernel launches)
2017-11-13 20:58:55 +00:00
Chris Kitching 506deca07f Use proper clang diagnostics for printing warnings
Much pretty. Very wow

This gives users all the usual power when it comes to manipulating
clang diagnostics. People can pass -Werror can have hipify fail if
it doesn't completely translate a file, for example. Much nicer
than reinventing the wheel.
2017-11-13 20:58:55 +00:00
Chris Kitching 7a441aef10 Use a custom FrontendAction to simplify identifier translation
Most of what hipify does is really just replacing CUDA idenitifers
with HIP ones. CUDA function calls, preprocessor macro calls,
enum references, types, etc.

This is problematic: calls/types/enum-refs require name resolution
for the AST matcher to work. This fails in the presence of code
deleted by the preprocessor, and in two-pass template compilation.

Instead, we can simply hook the lexer and have it rewrite the
identifiers for us.

This approach means identifier transformations will work correctly
regardless of where they appear (and we get to delete lots of code)

- Fixes #260
- Helps a bit with #207 - it will still fail to translate kernel
calls in preprocessor-ignored code, but everything except kerel
launches should translate correctly now, even in
preprocessor-deleted code.
2017-11-13 20:58:54 +00:00
Chris Kitching 9014c89f04 Add hipify mappings for all CUDA headers that have HIP equivalents
I'm particularly running into issues with `device_types.h` in real
CUDA code...
2017-11-13 17:20:07 +00:00
Chris Kitching 0afc6b2e95 Add a test that exposes #260 2017-11-13 16:18:15 +00:00
Chris Kitching 4353fc06d7 Add a couple of missing CHECK directives to concurrentKernels.cu 2017-11-13 16:17:19 +00:00
Jenkins 5d03b99851 Merge 'master' into 'amd-master'
Change-Id: I2d2b621a937a8a645072fe76c371ccb36f059a6e
2017-11-13 04:11:00 -06:00
Maneesh Gupta 7f3653af7a Merge pull request #261 from gargrahul/fix_module_api_sample
Fix module_api sample
2017-11-13 11:55:54 +05:30
Rahul Garg e434a23be5 Fix module_api sample 2017-11-13 08:56:39 +05:30
Jenkins f91c47167b Merge 'master' into 'amd-master'
Change-Id: If635fe33b97998b22c4a00c0e9a5e041ef332d82
2017-11-10 04:48:30 -06:00
Alex Voicu bdd2d6d602 Add omitted changes in CMakeLists.txt. 2017-11-10 01:20:50 +00:00
Alex Voicu 8c62d0fbc4 Update new tests so as to make them work with new variadic based launch mechanisms. 2017-11-10 00:14:34 +00:00
Alex Voicu 1518611976 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe 2017-11-09 23:43:07 +00:00
Rahul Garg 3711136e46 Added texture 2D driver API usage example 2017-11-09 22:35:29 +05:30
Rahul Garg 1851c153f6 Texture driver APIs support 2017-11-09 22:10:55 +05:30
Maneesh Gupta 925f97fac7 Merge pull request #250 from AlexVlx/feature_add_agent_global_support
Support for agent globals
2017-11-09 07:52:09 +05:30
Alex Voicu f7919a8321 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	tests/src/runtimeApi/stream/hipStreamSync2.cpp
2017-11-08 10:26:30 +00:00
Maneesh Gupta 6f1298d9f6 Merge pull request #255 from AlexVlx/remove_some_trailing_whitespace
Clean up trailing whitespace so as to reduce noise in #246.
2017-11-08 10:29:19 +05:30
Maneesh Gupta 86f5934beb Merge pull request #253 from mangupta/hit_add_cmakecmd
[hit] Add support for cmake commands as part of test infra
2017-11-08 09:50:29 +05:30
Alex Voicu 0ad1308efd Clean up trailing whitespace so as to reduce noise in #246. 2017-11-08 00:08:55 +00:00
Ben Sander 7b534885e6 Merge pull request #254 from bensander/event_thread_safe
Event thread safe
2017-11-07 17:59:51 +01:00
Jenkins b7614c76d9 Merge 'master' into 'amd-master'
Change-Id: If5bce0feeb337752b5ea9db44c0edbb5eca4b704
2017-11-07 04:11:03 -06:00
Maneesh Gupta 52c8c4b03c Merge pull request #252 from phani544/newTests2
More tests for memory,stream & error APIs
2017-11-07 10:38:18 +05:30
Phaneendr-kumar Lanka 2a1d7db371 identation change in hipPeekAtLastError 2017-11-07 09:51:32 +05:30
Alex Voicu 8854dec897 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe 2017-11-07 00:01:22 +00:00
Ben Sander e71456cc6c Check for null event in hipEventElapsedTime 2017-11-06 23:49:31 +00:00
Ben Sander b5911acce2 hipStreamWaitEvent returns success if event created but not recorded 2017-11-06 23:49:31 +00:00
Ben Sander 955cfbfdc7 Make hipEvent_t thread safe.
Support re-recording of same event by different threads.

- Add criticalData structure to hipEvent_t, similar to mechanism used
  for streams, contexts, device.  Events are always locked
  after streams to avoid deadlock.
- ihipEvent_t::locked_copyCrit can be used to copy critical state
  including marker.  The critical state in the event can then
  be re-recorded.
- refactor hipEventElapsedTime.  Remmove stale debug code, native signal
  refs.
2017-11-06 23:49:25 +00:00
Maneesh Gupta f92648e447 [hit] Add support for cmake commands as part of test infra
Cmake supports several builtin command-line tools. These tools can
now be specified as part of the HIT block. These commands will be
run during cmake configure step.

Change-Id: I32466c94b2fe1ecdc30249755fc027102295617d
2017-11-06 16:53:57 +05:30
Jenkins e08698eaa4 Merge 'master' into 'amd-master'
Change-Id: I8d932bd34619c71f85311f824f793d8e179dce35
2017-11-06 04:11:36 -06:00
Phaneendr-kumar Lanka e18f4239b6 Modified tests as per review 2017-11-06 15:13:36 +05:30