Commit Graph

1996 Commits

Author SHA1 Message Date
Alex Voicu 93df8a2a57 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
[ROCm/clr commit: 1518611976]
2017-11-09 23:43:07 +00:00
Maneesh Gupta 0b86003f38 Merge pull request #250 from AlexVlx/feature_add_agent_global_support
Support for agent globals

[ROCm/clr commit: 925f97fac7]
2017-11-09 07:52:09 +05:30
Alex Voicu 12f00d4881 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	tests/src/runtimeApi/stream/hipStreamSync2.cpp


[ROCm/clr commit: f7919a8321]
2017-11-08 10:26:30 +00:00
Maneesh Gupta 907a265bc1 Merge pull request #255 from AlexVlx/remove_some_trailing_whitespace
Clean up trailing whitespace so as to reduce noise in #246.

[ROCm/clr commit: 6f1298d9f6]
2017-11-08 10:29:19 +05:30
Maneesh Gupta 9fe4f363ef Merge pull request #253 from mangupta/hit_add_cmakecmd
[hit] Add support for cmake commands as part of test infra

[ROCm/clr commit: 86f5934beb]
2017-11-08 09:50:29 +05:30
Alex Voicu 142213a52b Clean up trailing whitespace so as to reduce noise in #246.
[ROCm/clr commit: 0ad1308efd]
2017-11-08 00:08:55 +00:00
Ben Sander 6f7992387b Merge pull request #254 from bensander/event_thread_safe
Event thread safe

[ROCm/clr commit: 7b534885e6]
2017-11-07 17:59:51 +01:00
Phaneendr-kumar Lanka fc1af184a4 identation change in hipPeekAtLastError
[ROCm/clr commit: 2a1d7db371]
2017-11-07 09:51:32 +05:30
Alex Voicu 2db0344254 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
[ROCm/clr commit: 8854dec897]
2017-11-07 00:01:22 +00:00
Ben Sander 2c95d48f87 Check for null event in hipEventElapsedTime
[ROCm/clr commit: e71456cc6c]
2017-11-06 23:49:31 +00:00
Ben Sander f761859993 hipStreamWaitEvent returns success if event created but not recorded
[ROCm/clr commit: b5911acce2]
2017-11-06 23:49:31 +00:00
Ben Sander 379b3fc7a0 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.


[ROCm/clr commit: 955cfbfdc7]
2017-11-06 23:49:25 +00:00
Maneesh Gupta f00dd1ad73 [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


[ROCm/clr commit: f92648e447]
2017-11-06 16:53:57 +05:30
Phaneendr-kumar Lanka b36eb26ef0 Modified tests as per review
[ROCm/clr commit: e18f4239b6]
2017-11-06 15:13:36 +05:30
Phaneendr-kumar Lanka 700890e19a More tests for memory,stream & error APIs
[ROCm/clr commit: 7427abba04]
2017-11-06 11:31:52 +05:30
Maneesh Gupta db9b583cb6 Merge pull request #251 from ROCm-Developer-Tools/fix_event_state
Set event state AFTER it is recorded.

[ROCm/clr commit: dbb6b2bab8]
2017-11-06 07:28:11 +05:30
Maneesh Gupta 6bc2170189 Merge pull request #249 from bensander/warn_event
Add HIP_DB=warn + message if sync on dangerous event.

[ROCm/clr commit: 958ca62c63]
2017-11-06 07:25:40 +05:30
Maneesh Gupta 5b217496ec Merge pull request #239 from phani544/newTests
[newTests]Adding tests for device APIs

[ROCm/clr commit: 544538fd88]
2017-11-06 07:22:13 +05:30
Ben Sander 0c5ce41d7c Set event state AFTER it is recorded.
[ROCm/clr commit: 1c65bb1684]
2017-11-05 10:33:18 -06:00
Alex Voicu 15c5d18ea9 Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
[ROCm/clr commit: 394886903c]
2017-11-03 10:57:12 +00:00
Alex Voicu 21d1d3f1ed Merge remote-tracking branch 'origin/master' into feature_use_module_based_dispatch_instead_of_pfe
# Conflicts:
#	src/hip_module.cpp


[ROCm/clr commit: 17753cbd92]
2017-11-03 10:53:39 +00:00
Phaneendr-kumar Lanka 6034d9fcc1 [newTests]modified the test
[ROCm/clr commit: fa32a1924a]
2017-11-03 14:52:19 +05:30
Phaneendr-kumar Lanka 35b9e10294 [newTests]Modified the test as per review comments
[ROCm/clr commit: 19946ca43d]
2017-11-03 10:39:47 +05:30
Maneesh Gupta eb4a2f36d7 Merge pull request #248 from mangupta/SWDEV-134531
Remove libsupc++ dependency from HIP

[ROCm/clr commit: afd3a6786d]
2017-11-03 08:01:59 +05:30
Alex Voicu e35ce82eff This introduces correct support for agent global variables, and implements hipModuleGetGlobal as an actual equivalent for cuModuleGetGlobal.
[ROCm/clr commit: d12cf0da7d]
2017-11-03 01:44:48 +00:00
Maneesh Gupta f579dd3c7d Remove libsupc++ dependency from HIP
Change-Id: Ib843f99dfb3057b7c28029250c2449732ea7f17f


[ROCm/clr commit: 473208368e]
2017-11-02 12:29:09 +05:30
Alex Voicu 41045dd24d This corrects some interesting choices that were present in the HIP
unit tests such as e.g. de-allocating memory allocated with new[] using
free. All of these were identified via cppcheck.


[ROCm/clr commit: 58a18eaf0c]
2017-11-01 22:51:22 +00:00
Alex Voicu 840895525a Correctly deal with functions from shared objects, wherein the program visible VA == so_base_va + st_value(function_symbol). Remove quaint usage of pfe for hipMemset (which is actually fill_n).
[ROCm/clr commit: 4693c5e56c]
2017-11-01 22:33:13 +00:00
Ben Sander 725f46aa94 Merge pull request #237 from bensander/use_ctxptr_for_p2p
Use ctxptr for p2p

[ROCm/clr commit: fe32685fbc]
2017-11-01 18:55:25 +01:00
Ben Sander 6e82cc25df Add HIP_DB=warn + message if sync on dangerous event.
[ROCm/clr commit: 172b9f96e6]
2017-11-01 10:44:34 -07:00
Ben Sander 19935275ea Merge pull request #245 from scchan/centos_fixes
various fixes for centos/rhel

[ROCm/clr commit: 5a80c4108e]
2017-11-01 18:10:29 +01:00
Alex Voicu b738633bcb This switches HIP from its currently convoluted macro + pfe based dispatch mechanism to a more natural one partially based on the existing module API. The basic idea is that HCC will always correctly emit __global__ functions: as empty-bodied stubs, on host, and as kernels, on device. It then becomes trivial to obtain the mangled name on host, at dispatch, from the function's address, and then to use the mangled name to retrieve the kernel. This should address all problems stemming from serialisation, dubious mismatches due to the manufactured functor, macro-isms et al. It also immediately enables support for generalised globals as a consequence of that being available in the module API. Finally, it will make debug much easier, since the actual names of the __global__ functions will automatically be used in traces etc. One detail is that due to how dispatch works now (hipLaunchKernel and hipLaunchKernelGGL are themselves variadic function templates which deduce the function type of the callee), in certain cases it may be necesssary to insert explicit casts to ensure that the variadic argument list selects a viable overload - this can be observed in some unit tests. Eventually we may be able to remove this limitation, but for now it does not appear terribly onerous. The code is not extremely HIPpie, nor is it fully optimised, but rather is intended as a starting point for the HIP team to make its own.
[ROCm/clr commit: 28f87f7d2e]
2017-11-01 15:09:59 +00:00
Siu Chi Chan 2094b92a3e Centos/RHEL - remove usage of constexpr since libc++ doesn't enable ctor for constexpr pair in C++11
[ROCm/clr commit: c1a4ff7b20]
2017-10-31 18:16:12 +00:00
Siu Chi Chan b04f17be8f use libc++ on centos 7 and rhel 7.4
[ROCm/clr commit: cb454d5366]
2017-10-31 18:14:07 +00:00
Maneesh Gupta c1639486c6 Merge pull request #197 from bensander/update_coherency_tests
Update coherency tests

[ROCm/clr commit: a6458616f5]
2017-10-31 17:26:50 +05:30
Maneesh Gupta 6b6d28479d Merge pull request #241 from ROCm-Developer-Tools/multi_host
Inital codes to remove x86_64 dependency in HIP source build

[ROCm/clr commit: fc5a86d595]
2017-10-31 16:35:12 +05:30
Ben Sander 4df6b371ab Add ns-level timer for HIP API routines
Refactor some miuses of ihipLogStatus, these should only be in top-level
HIP APIs and should be paired with HIP_API_INIT calls.


[ROCm/clr commit: dc7d993a02]
2017-10-30 20:20:51 +00:00
Wen-Heng (Jack) Chung c949da237a Inital codes to remove x86_64 dependency in HIP source build
[ROCm/clr commit: b98dede49a]
2017-10-30 15:19:23 -05:00
Ben Sander fd5b9cb650 Merge pull request #222 from bensander/fix_device_prop
Fix device prop

[ROCm/clr commit: 7e8b39fc96]
2017-10-30 17:58:48 +01:00
Ben Sander ec29721b16 Check for null copyEngine before looking at peers.
[ROCm/clr commit: 4c7b2be1c2]
2017-10-30 16:58:03 +00:00
Ben Sander a6d17854f8 Merge pull request #226 from scchan/add_printf3
add printf to HIP device functions

[ROCm/clr commit: 4debd30c3d]
2017-10-30 17:08:18 +01:00
Phaneendr-kumar Lanka 9486eadfbe [newTests]Adding tests for device APIs
[ROCm/clr commit: 71434383a3]
2017-10-30 14:34:24 +05:30
Evgeny Mankov 2386c75b98 [HIPIFY] fix typo - missing )
[ROCm/clr commit: a469e785f2]
2017-10-27 23:31:43 +03:00
Evgeny Mankov d93bad141c Merge pull request #238 from ChrisKitching/statistics
[HIPIFY] Decouple the statistics system from the code rewriter

[ROCm/clr commit: 5e5ef3e3f4]
2017-10-27 23:17:20 +03:00
Evgeny Mankov 408839fc1c Merge pull request #236 from ChrisKitching/friendlyCmake
[HIPIFY] Make the cmake build system more friendly

[ROCm/clr commit: f19fcb7a42]
2017-10-27 22:35:13 +03:00
Chris Kitching eaa48e16c3 Remove commented else-block
A warning statement for _string literals_ seems a bit unhelpful.
There's no value in this being here.


[ROCm/clr commit: ec2a6ba446]
2017-10-27 20:12:33 +01:00
Chris Kitching 4e6ca773fa Decouple the statistics system from the code translation
The original implementation had the statistics system woken very
tightly into things like PPCallbacks, with counters duplicated
in two places, and all the output code duplicated. This made it
very difficult to alter the structure of the program without
breaking the statistics system.

Since the planned approach for solving the remaining preprocessor
bugs needs the introduction of a custom FrontendAction, and such
a restructure was incompatible with the way the statistics system
was set up, this rewrite was required.

'tis rather simpler now, mind you :D

This commit also fixes an issue where some stats were counted
twice, and allows `-print-stats` to operate independently of
`-stat-output`, allowing you to print stats to a file without
printing them to a terminal (or vice-versa).


[ROCm/clr commit: dd5a60054a]
2017-10-27 20:12:33 +01:00
Chris Kitching c6bc4f5249 Copy-paste less in the statistics printing code
[ROCm/clr commit: 5365a8638f]
2017-10-27 20:12:33 +01:00
Chris Kitching e9b8afaaeb Inline updateCountersExt
[ROCm/clr commit: 69d2555f17]
2017-10-27 20:12:32 +01:00
Chris Kitching 0b45e8d905 Update counter maps sanely
operator[] default-constructs the map value if no value exists
for that key. Default-construction of int yields a zero. So all
the manual faffing around is just unnecessary.


[ROCm/clr commit: cecc0782ef]
2017-10-27 20:12:32 +01:00