Jeff Daily
e428d45eb2
add IPC event support ( #1996 )
...
[ROCm/hip commit: ef596cd088 ]
2020-04-17 10:31:22 +05:30
Sarbojit2019
e10e59a8c0
hipEventElapsedTime should respect device ( #1992 )
...
Fixes SWDEV-228636.
Also added a unit test to verify this.
[ROCm/hip commit: b80a2c3966 ]
2020-04-06 15:38:25 +05:30
Evgeny Mankov
abef353b5b
[HIP] Clean-up deprecated HIP error codes
...
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle
[ROCm/hip commit: 4921678b6c ]
2019-12-23 17:01:35 +03:00
Sarbojit2019
a4f2c7717f
Added null check in hipEventSynchronize ( #1627 )
...
* Added missing null check in hipEventSynchronize
* Minor correction in the Event API description
[ROCm/hip commit: b865a50e44 ]
2019-11-18 12:18:55 +05:30
Jeff Daily
f9ad564380
hipEventRecord only needs one lock; remove locked_eventIsReady
...
[ROCm/hip commit: 85080905c0 ]
2019-11-06 15:56:32 +00:00
Jeff Daily
8f033af434
remove ihipEvent_t::refreshEventStatus(), new hipEventElapsedTime
...
This fixes possible races in hipEventElapsedTime.
[ROCm/hip commit: 7986090d9c ]
2019-11-06 15:46:46 +00:00
Jeff Daily
cdf59d1de0
fix race condition in hipEventRecord
...
[ROCm/hip commit: 6fcff0118e ]
2019-11-04 17:45:11 +00:00
Jeff Daily
4094b62407
remove stream locks where it is safe to do so
...
[ROCm/hip commit: f096a3239e ]
2019-07-22 17:38:51 +00:00
Anusha Godavarthy Surya
7eedb4d047
Added missing NULL checks
...
[ROCm/hip commit: 7a4c3f61c8 ]
2019-06-27 20:19:30 +05:30
Anusha Godavarthy Surya
f1d6b56fc4
Added missing NULL checks and corrected API return values as per validation
...
[ROCm/hip commit: 3d5f6be1c7 ]
2019-06-27 00:19:05 +05:30
Evgeny
73e3c4ec42
renaming HIP_INIT_CB_API to HIP_INIT_API
...
[ROCm/hip commit: e5ba097afd ]
2018-11-13 15:33:26 +00:00
Evgeny
0a58dc9b7b
adding activity prof layer
...
[ROCm/hip commit: b8b1637ef7 ]
2018-11-13 15:33:26 +00:00
Maneesh Gupta
4f42ee762d
Apply .clangformat to all repo source files
...
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
[ROCm/hip commit: 1ba06f63c4 ]
2018-03-12 11:29:03 +05:30
Ben Sander
d9db9dabeb
Check for null event in hipEventElapsedTime
...
[ROCm/hip commit: f278f67d2d ]
2017-11-06 23:49:31 +00:00
Ben Sander
f80896d58b
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/hip commit: 4a2e6f8955 ]
2017-11-06 23:49:25 +00:00
Maneesh Gupta
33836c9521
Merge pull request #251 from ROCm-Developer-Tools/fix_event_state
...
Set event state AFTER it is recorded.
[ROCm/hip commit: 1131c9e41a ]
2017-11-06 07:28:11 +05:30
Ben Sander
6a4c50cf6c
Set event state AFTER it is recorded.
...
[ROCm/hip commit: 4c3b65a5cd ]
2017-11-05 10:33:18 -06:00
Ben Sander
6c60773e82
Add HIP_DB=warn + message if sync on dangerous event.
...
[ROCm/hip commit: 70c25bdf8e ]
2017-11-01 10:44:34 -07:00
Ben Sander
bd434502db
Lock streams when waiting on event completion or querying event safety.
...
[ROCm/hip commit: 6ff74d0e97 ]
2017-08-28 18:40:16 -05:00
Ben Sander
542bd863a2
Add some new HIP_TRACE_API options.
...
[ROCm/hip commit: e3161bb40e ]
2017-08-16 04:00:33 +00:00
Maneesh Gupta
f4ca1c96c4
Don't crash for hipEventDestroy(NULL)
...
Change-Id: I3f4de1ad2712dbe8af81e10c5d3bef16d468c582
[ROCm/hip commit: 7ddb6b6b76 ]
2017-07-18 11:01:02 +05:30
Ben Sander
445042f916
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/hip commit: 39c18e5e5f ]
2017-06-05 08:50:22 -05:00
Ben Sander
59833bea80
Set event->_stream on hipHccModuleLaunchKernel path if start/stop used
...
Ensure _stream is always non-null in recorded events.
Fixes isDefaultStream fault.
[ROCm/hip commit: cb60763737 ]
2017-05-30 21:55:46 -05:00
Ben Sander
b3e01ed74f
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/hip commit: ec7102f461 ]
2017-05-27 16:02:34 -05:00
Ben Sander
e24627aa80
Cleanup hipEvent. (Intermediate checkpoint)
...
Support hipEventDisableSystemRelease flag.
Update test.
Remove stray printf
[ROCm/hip commit: 620eb30691 ]
2017-05-27 16:02:34 -05:00
Ben Sander
715aeef97c
Add isDefaultStream() accessor.
...
Fix code that checked for stream==nullptr after stream had been
resolved to a "true stream".
[ROCm/hip commit: b251d72917 ]
2017-05-26 13:46:48 -05:00
Ben Sander
a55ce5bee4
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/hip commit: 27877f8854 ]
2017-05-16 19:04:25 -05:00
sunway513
eaeecbd461
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/hip commit: cfa3155082 ]
2017-04-06 21:02:50 -05:00
Aditya Atluri
ccf799c453
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/hip commit: b9091ba818 ]
2017-03-31 12:11:34 -05:00
Aditya Atluri
5de29029cd
changed copyright year from 2016 to 2017 in src directory
...
Change-Id: Idb97db509b2b4b1656b2df7a14a62ade38c9d574
[ROCm/hip commit: 73fcce26f9 ]
2017-01-11 18:05:41 -06:00
Ben Sander
207ebc9482
Fix event flag detection.
...
Change-Id: I0b0ba66c2339021320fe3d7760fdad1a0490a76b
[ROCm/hip commit: 2239e99f60 ]
2016-10-18 22:27:16 -05:00
Ben Sander
7bd9ca471a
Update docs for event, review event TODO.
...
Change-Id: Iec491f9f22df163f01c0af6639fcbe33c81acdcc
[ROCm/hip commit: 61af94a555 ]
2016-10-18 22:27:16 -05:00
Ben Sander
c11b6f511b
Move some internal headers from "include/hip/" to src.
...
Change-Id: I7041bd5c803d9318979f4a7c1d658445c614691e
[ROCm/hip commit: 9315ac1a29 ]
2016-10-18 22:27:16 -05:00
Maneesh Gupta
dd60b971d1
src/*: Update copyright header
...
Change-Id: I455f5d0d12fe9cb39a3ba873bd22b4c25ed07cbf
[ROCm/hip commit: 8471682f26 ]
2016-10-15 22:55:22 +05:30
Maneesh Gupta
fc58842fcf
Move include/* to include/hip/*
...
Change-Id: I7a7b2839b4df59c7a4c503550f99fdc9e45c0f54
[ROCm/hip commit: b951cc99ed ]
2016-10-04 22:17:18 +05:30
Ben Sander
a9e3786e0c
Remove HIP command dependency tracking.
...
Change-Id: I991c13bc5108193959ba70f9f6f9c692c9ad3a5b
[ROCm/hip commit: 7530fa6dbe ]
2016-09-22 14:21:19 -05:00
Maneesh Gupta
53a5f6debe
Updates to doxygen documentation for HIP Event APIs
...
Change-Id: Ic2e4a5725aebca14ac824da43436aacd0fe0a45c
[ROCm/hip commit: 3d85cd0ce5 ]
2016-09-16 15:06:54 +05:30
Ben Sander
71f898d534
Use create_blocking_marker for WaitEvent implementation
...
Change-Id: Ib3113f69a14e48b9fe0558d7b455148e478d8eed
[ROCm/hip commit: aa823871db ]
2016-09-02 09:46:59 -05:00
Ben Sander
bb0afa4e38
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/hip commit: e76a272d48 ]
2016-09-02 09:46:59 -05:00
Aditya Atluri
69d6645be6
Changed how hipEvent_t is typedefed internall
...
- Mapped hipEvent_t directly to ihipEvent_t* instead of a handle
Change-Id: I5a8bcca0ef962932e0738c03eb1fc914d23022ae
[ROCm/hip commit: 842553a6e1 ]
2016-08-25 14:34:41 -05:00
Ben Sander
28db2f79ba
Code cleanup, use camelCase where appropriate.
...
Change-Id: I5a7ec50df8bbb3e7a3b313c0b12e2dd55ae4a09c
[ROCm/hip commit: ed0a2c02fe ]
2016-08-08 14:54:38 -05:00
Ben Sander
ee356ad0d4
Change Device->Ctx
...
Change ihipDevice_t -> ihipCtx_t (new)
Change ihipGetTlsDefaultDevice->ihipGetTlsDefaultCtx
Some other changes from device->ctx where appropriate.
Change-Id: I5c4ae93b2fd42c6303aa23d748eb166b7431925d
[ROCm/hip commit: 2dc3d3238b ]
2016-08-07 21:47:12 -05:00
Maneesh Gupta
f02201e8c3
Replace calls to ihipInit with use of HIP_INIT_API macro
...
Change-Id: Iabf7df79f0238a8ddffea4607fe945df36642850
[ROCm/hip commit: 71d51170ef ]
2016-07-22 15:46:55 +05:30
Ben Sander
388fcd8003
Clean up old work-week and USE_* refs
...
Change-Id: I929c979fa085f8e5205194cbccca46e9b5516aa9
[ROCm/hip commit: 5c9e286ddc ]
2016-06-17 15:18:57 -05:00
Ben Sander
26b853918c
comment change
...
[ROCm/hip commit: c921d47c17 ]
2016-05-03 08:33:35 -05:00
Ben Sander
9e3ac64c54
Stream thread-safe checkpoint.
...
Moving data structures to critical / protected section.
[ROCm/hip commit: 3f18bab2c7 ]
2016-03-28 09:46:40 -05:00
Ben Sander
48773c6d4f
Improve debug print messages.
...
- Remove "call-to-call" for hipStreamCreate and hipEventCreate.
These now call an internal functions rather than calling through
hipStreamCreateWithFalgs and hipEventCreateWithFlags.
- Add HIP_INIT_API for more functions so they trace correctly.
- Use stream#DEVICE.STREAMID in debug messages via new specialization in
tace_helper.
[ROCm/hip commit: 7934cf620d ]
2016-03-26 12:35:04 -05:00
Ben Sander
141ccad414
Make ihipDevice_t thread-safe.
...
Move critical data into separate class and protect with LockAccessor
wrapper class.
For device, the streams list is the critical data since it is modified when
streams are created or destroyed. The streams list is accessed in
several places including when synchronizing across all streams on the
device (ie from the default stream).
Other device data is set once by the device cosntructor and is not critical
so
All functions which acquire the LockAccessor now named with "locked_" prefix.
[ROCm/hip commit: 530ab9434a ]
2016-03-26 10:46:20 -05:00
Aditya Atluri
6aa83a8a32
added CR and hipsetdeviceflags func
...
[ROCm/hip commit: c5ec73736d ]
2016-03-24 07:04:01 -05:00
Aditya Atluri
702672c3df
Split files based on functionality and changed cmake file
...
[ROCm/hip commit: 794007c3e8 ]
2016-03-24 04:57:30 -05:00