Commit Graph

57 Commits

Author SHA1 Message Date
German Andryeyev 03fa65d857 SWDEV-292018 - Make sure start event is done
HSA signal callback order is undefined. Make sure start event is
also done before calculating the elapsed time.

Change-Id: Ic69bfe336b20cd62ef35194261a5d0d234bc65ce


[ROCm/clr commit: 910d8bdfde]
2021-06-24 20:02:54 -04:00
German Andryeyev e7580989cc SWDEV-290160 - Add blocking command for callbacks in IPC and graph
Change-Id: I1474e19db6ebf2559e1b2c8dd7d06139bd699835


[ROCm/clr commit: 52f5b0fa16]
2021-06-24 17:01:55 -04:00
German Andryeyev 08611a1fe4 SWDEV-290367 - Make sure HIP checks for GPU signal
Check GPU signal status for event before falling into CPU command
status validation

Change-Id: I66f15752d7dca550c0fa1a2252ec5a63817391c3


[ROCm/clr commit: dd8265fc87]
2021-06-11 16:40:00 -04:00
Saleel Kudchadker 9381438151 SWDEV-247372 - Always enable marker_ts_ events
Change-Id: I7579ba1ee228809ce38f6f130fb33f1164587903


[ROCm/clr commit: 712963a97e]
2021-06-11 00:04:21 -04:00
Rahul Garg dd95d3d23c ROCMOPS-1956 - Push restructured code to hipamd
hipamd will have AMD's ROCCLR based HIP backend implementation

Change-Id: Id7de9634519b4ce46fca71a1b61f3d5b1e3fc459


[ROCm/clr commit: 19c84bc604]
2021-06-07 21:42:44 +00:00
Tao Sang 6227f3fae2 Remove hip-hcc codes: Part one
Remove hip-hcc codes from hip code base
Simplify hip CMakeLists.txt to exclude hip-hcc
Simplify cmake cmd for hip-rocclr building
Some minor fixes

Change-Id: I1ae357ecfd638d6c25bca293c1724b026be21ecd


[ROCm/clr commit: 1cba7ec965]
2020-12-09 15:49:47 -05:00
Jeff Daily 8b0a909b2b add IPC event support (#1996)
[ROCm/clr commit: e943144b31]
2020-04-17 10:31:22 +05:30
Sarbojit2019 77fd519260 hipEventElapsedTime should respect device (#1992)
Fixes SWDEV-228636.
Also added a unit test to verify this.

[ROCm/clr commit: 3523219b43]
2020-04-06 15:38:25 +05:30
Evgeny Mankov d191980c6a [HIP] Clean-up deprecated HIP error codes
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle


[ROCm/clr commit: 4aaa2336a8]
2019-12-23 17:01:35 +03:00
Sarbojit2019 7d5bc56ab7 Added null check in hipEventSynchronize (#1627)
* Added missing null check in hipEventSynchronize
* Minor correction in the Event API description


[ROCm/clr commit: 7985ad218f]
2019-11-18 12:18:55 +05:30
Jeff Daily 39a98df790 hipEventRecord only needs one lock; remove locked_eventIsReady
[ROCm/clr commit: b2af1820f5]
2019-11-06 15:56:32 +00:00
Jeff Daily 539d0c2ae3 remove ihipEvent_t::refreshEventStatus(), new hipEventElapsedTime
This fixes possible races in hipEventElapsedTime.


[ROCm/clr commit: 444122dfb9]
2019-11-06 15:46:46 +00:00
Jeff Daily f7e255c3c4 fix race condition in hipEventRecord
[ROCm/clr commit: 6c3479a155]
2019-11-04 17:45:11 +00:00
Jeff Daily df457ce2bd remove stream locks where it is safe to do so
[ROCm/clr commit: 734c4b92c3]
2019-07-22 17:38:51 +00:00
Anusha Godavarthy Surya 27722855b4 Added missing NULL checks
[ROCm/clr commit: 1a7c7e3b06]
2019-06-27 20:19:30 +05:30
Anusha Godavarthy Surya e643bae27d Added missing NULL checks and corrected API return values as per validation
[ROCm/clr commit: 4989452413]
2019-06-27 00:19:05 +05:30
Evgeny 96b7f0404e renaming HIP_INIT_CB_API to HIP_INIT_API
[ROCm/clr commit: e362688adf]
2018-11-13 15:33:26 +00:00
Evgeny 7519b3f75e adding activity prof layer
[ROCm/clr commit: 084a68be63]
2018-11-13 15:33:26 +00:00
Maneesh Gupta 46ddefedee Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344


[ROCm/clr commit: 9e47fccc89]
2018-03-12 11:29:03 +05:30
Ben Sander 2c95d48f87 Check for null event in hipEventElapsedTime
[ROCm/clr commit: e71456cc6c]
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 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
Ben Sander 0c5ce41d7c Set event state AFTER it is recorded.
[ROCm/clr commit: 1c65bb1684]
2017-11-05 10:33:18 -06: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 070bdb3736 Lock streams when waiting on event completion or querying event safety.
[ROCm/clr commit: bc9ba7cd81]
2017-08-28 18:40:16 -05:00
Ben Sander 967ca1a44e Add some new HIP_TRACE_API options.
[ROCm/clr commit: d6aee9ad8f]
2017-08-16 04:00:33 +00:00
Maneesh Gupta a73a17763d Don't crash for hipEventDestroy(NULL)
Change-Id: I3f4de1ad2712dbe8af81e10c5d3bef16d468c582


[ROCm/clr commit: 21de66889c]
2017-07-18 11:01:02 +05:30
Ben Sander 7237ed04f3 Fix HIP_SYNC_NULL_STREAM=0 mode.
- Fix null-stream sync
- hipStreamDestroy of null stream returns hipErrorInvalidResourceHandle
- Update documentation.
- Add tests for null stream sync, hipEventElapsedTime.
- Rename internal enum hipEventStatusRecorded to hipEventStatusComplete
- refactor hipStreamWaitEvent to streamline control-flow


[ROCm/clr commit: 823281dcba]
2017-06-05 08:50:22 -05:00
Ben Sander 81354999e8 Set event->_stream on hipHccModuleLaunchKernel path if start/stop used
Ensure _stream is always non-null in recorded events.
Fixes isDefaultStream fault.


[ROCm/clr commit: 6cc5dc0326]
2017-05-30 21:55:46 -05:00
Ben Sander 0ca3262f0a Add event controls for release fences.
Env var : HIP_EVENT_SYS_RELEASE
Event allocation flags : hipEventReleaseToDevice, hipEventReleaseToSystem
   (remove hipEventDisableSystemRelease)

Update test for new functionality.


[ROCm/clr commit: 942ec0eff8]
2017-05-27 16:02:34 -05:00
Ben Sander d6e8f5bbdc Cleanup hipEvent. (Intermediate checkpoint)
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf


[ROCm/clr commit: c8178c6838]
2017-05-27 16:02:34 -05:00
Ben Sander d9587ae2f0 Add isDefaultStream() accessor.
Fix code that checked for stream==nullptr after stream had been
resolved to a "true stream".


[ROCm/clr commit: b2b620c12b]
2017-05-26 13:46:48 -05:00
Ben Sander 4ac6ac9d1d Add initial HIP_SYNC_NULL_STREAM=0 mode.
This eliminates host-synchronization for null stream.  Instead, the
null-stream uses GPU-side events to wait for other streams.
Default is OFF pending additional testing.

Add enhanced null-stream test.

Also refine HIP_TRACE_API.


[ROCm/clr commit: 8bc6ee5932]
2017-05-16 19:04:25 -05:00
sunway513 1897ca4a20 Refactor events and add initial event option for hipHccModuleLaunchKernel
- Change hipEvent_t to a class.
- Move event logic inside the class.
- Add _type to support Independent, StartCommand, StopCommand events.
  StartCommand returns start timestamp from events.

Change-Id: I4ddd694f2645a3ff7170c9111dc1d3e39931ca21


[ROCm/clr commit: f442e975c6]
2017-04-06 21:02:50 -05:00
Aditya Atluri 3651cb672a added new api hipHccModuleLaunchKernel
1. hipHccModuleLaunchKernel is same as hipModuleLaunchKernel with OpenCL workitem model
2. Added copy right
3. Fixed header naming

Change-Id: I6a7c35a3566e2f8d3f5056613e34193775d4b236


[ROCm/clr commit: 1cead6a4cd]
2017-03-31 12:11:34 -05:00
Aditya Atluri a86633f210 changed copyright year from 2016 to 2017 in src directory
Change-Id: Idb97db509b2b4b1656b2df7a14a62ade38c9d574


[ROCm/clr commit: e9ff23e5f9]
2017-01-11 18:05:41 -06:00
Ben Sander f6641ba37f Fix event flag detection.
Change-Id: I0b0ba66c2339021320fe3d7760fdad1a0490a76b


[ROCm/clr commit: 214673a4fb]
2016-10-18 22:27:16 -05:00
Ben Sander 1fc5bf0643 Update docs for event, review event TODO.
Change-Id: Iec491f9f22df163f01c0af6639fcbe33c81acdcc


[ROCm/clr commit: 54b20dbe0d]
2016-10-18 22:27:16 -05:00
Ben Sander d6ffcdb9b0 Move some internal headers from "include/hip/" to src.
Change-Id: I7041bd5c803d9318979f4a7c1d658445c614691e


[ROCm/clr commit: 403cdf93c3]
2016-10-18 22:27:16 -05:00
Maneesh Gupta 2655c96ab9 src/*: Update copyright header
Change-Id: I455f5d0d12fe9cb39a3ba873bd22b4c25ed07cbf


[ROCm/clr commit: 88d6cad3fb]
2016-10-15 22:55:22 +05:30
Maneesh Gupta 46feb7dcf2 Move include/* to include/hip/*
Change-Id: I7a7b2839b4df59c7a4c503550f99fdc9e45c0f54


[ROCm/clr commit: bbfc08f419]
2016-10-04 22:17:18 +05:30
Ben Sander dbbd5ce037 Remove HIP command dependency tracking.
Change-Id: I991c13bc5108193959ba70f9f6f9c692c9ad3a5b


[ROCm/clr commit: c365785c5c]
2016-09-22 14:21:19 -05:00
Maneesh Gupta d9488e163f Updates to doxygen documentation for HIP Event APIs
Change-Id: Ic2e4a5725aebca14ac824da43436aacd0fe0a45c


[ROCm/clr commit: b14d2c8c8e]
2016-09-16 15:06:54 +05:30
Ben Sander fe85edad3f Use create_blocking_marker for WaitEvent implementation
Change-Id: Ib3113f69a14e48b9fe0558d7b455148e478d8eed


[ROCm/clr commit: 9a99000a62]
2016-09-02 09:46:59 -05:00
Ben Sander 938933ca2f Refactor for stream->_av.
- move _av into stream critical section.  ( HCC accelerator_view is not
  thread-safe but HIP steram is. )
- Refactored many places in code that need to acquire critical section.
some were previously thread races, ie enqueueing marker.

-remove support for GRID_LAUNCH_VERSION < 20
-Enable USE_AV_COPY based on HCC work-week.
- Review hipModule docs, some calrity/editing.

Change-Id: I3ce7c25ece048c3504f55ecd4683e506bb1fc8b6


[ROCm/clr commit: 02f65a483c]
2016-09-02 09:46:59 -05:00
Aditya Atluri 82deaeb581 Changed how hipEvent_t is typedefed internall
- Mapped hipEvent_t directly to ihipEvent_t* instead of a handle

Change-Id: I5a8bcca0ef962932e0738c03eb1fc914d23022ae


[ROCm/clr commit: 25be4fb532]
2016-08-25 14:34:41 -05:00
Ben Sander c85f34bf8a Code cleanup, use camelCase where appropriate.
Change-Id: I5a7ec50df8bbb3e7a3b313c0b12e2dd55ae4a09c


[ROCm/clr commit: ac173c3ae8]
2016-08-08 14:54:38 -05:00
Ben Sander e5300e2b40 Change Device->Ctx
Change ihipDevice_t -> ihipCtx_t (new)
Change ihipGetTlsDefaultDevice->ihipGetTlsDefaultCtx
Some other changes from device->ctx where appropriate.

Change-Id: I5c4ae93b2fd42c6303aa23d748eb166b7431925d


[ROCm/clr commit: 0d16565061]
2016-08-07 21:47:12 -05:00
Maneesh Gupta 64d0ffb404 Replace calls to ihipInit with use of HIP_INIT_API macro
Change-Id: Iabf7df79f0238a8ddffea4607fe945df36642850


[ROCm/clr commit: b485470819]
2016-07-22 15:46:55 +05:30
Ben Sander a03c51dc9e Clean up old work-week and USE_* refs
Change-Id: I929c979fa085f8e5205194cbccca46e9b5516aa9


[ROCm/clr commit: 44d117ba63]
2016-06-17 15:18:57 -05:00