Граф коммитов

33 Коммитов

Автор SHA1 Сообщение Дата
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
Ben Sander edec342c20 Partition hip_hcc into sections
Separate files for different categories of HIP API.
Currently just #include into hip_hcc.cpp


[ROCm/hip commit: 655534b1ba]
2016-03-24 09:28:54 -05:00