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

27 Коммитов

Автор SHA1 Сообщение Дата
German Andryeyev 5b31c69a95 Add batch tracking for direct dispatch
Make sure the logic updates the command status when it's done in
HW, but not on submission.
Add the last command tracking, otherwise queue sync logic in the HIP
upper layer may skip synchronization, assuming the queue is empty.

Change-Id: I2d046792553e74df090a10f7d7a78914610f6df2
2020-12-04 10:16:17 -05:00
German Andryeyev 532f0ae951 Add direct dispatch simple hack for testing
The hack dosn't really track the commands status. It may be not
necessary for HIP, but will cause early resource release.

Change-Id: I791ad36dd8abd3b6b3d2c9b16a210a555c08ca64
2020-11-13 10:36:23 -05:00
Sarbojit Sarkar 099f8d61dd SWDEV-258573 : fix for OCLP2PBuffer test failure
Change-Id: I363d4fb2bb94d9bc03e96844d31dec7ef9b2ce33
2020-11-13 02:25:53 -05:00
German Andryeyev bd340d8cbf Correct reported info in ROC profiler
OCL can't distinguish different copy types, but ROC profiler
expects SDMA transfer visibility. Add extra code to detect
a transfer with the host memory and substitute OCL command

Change-Id: I5290acd0e10bc082e00c1d4ae1474a075de7f165
2020-10-23 18:29:48 -04:00
Jason Tang c5184d61b4 SWDEV-252150 - No need to send a Marker if the event is completed in Event::notifyCmdQueue()
Change-Id: Iaa1c550ce0849c12298a24812604345dbf877a5e
2020-10-14 09:29:24 -04:00
Sarbojit Sarkar 4a025e1a87 [perf]hipMalloc performance optimization
Change-Id: I6e8a918cc1c4cafad197b09e10755cd180e11ead
2020-10-06 03:19:41 -04:00
Laurent Morichetti 5d4b6f74d3 Use std::atomic
Replace amd::Atomic with std::atomic. Remove make_atomic uses by
converting the variable to std::atomic and making sure the memory
order is relaxed when synchronizes-with is not needed.

Delete utils/atomic.hpp.

Change-Id: I0b36db8d604a8510ac6e36b32885fd16a1b8ccfa
2020-09-09 14:55:29 -04:00
Saleel Kudchadker 1c24072d13 Revert "SWDEV-241977 [ROCm QA] Random Soft hang observed while running TF and Caffe2 benchmarks"
This reverts commit ce038f3163.

Change-Id: Ib56493c92eca793f1dfb6f1cbefb32f0b4f65e89
2020-09-01 18:09:10 -04:00
Saleel Kudchadker ec73340348 Add Queue profling param and toggle for HIP
Use signal timestamps if NDRange command takes forceProfile flag.

Change-Id: Ib7f187d781fd78a7346818afb3344a9378f4c104
2020-08-06 03:09:53 -04:00
Alex Xie ce038f3163 SWDEV-241977 [ROCm QA] Random Soft hang observed while running TF and Caffe2 benchmarks
Change-Id: I42016c11db15411b86e7b8130d6ba557bc22dbb7
2020-07-22 02:03:48 -04:00
Christophe Paquot 3d15a1e291 Make append and setLastQueuedCommand atomic
Two threads can enqueue to the same HostQueue (HostQueue::enqueue)
and result in last queued command being the first one reachine queue_.enqueue

NOTE: Temporarly make setLastQueuedCommand empty function to pass the build

Change-Id: Id09c3a28d184986f52b2ec86a2f6a18c40df1f0b
2020-07-14 18:22:45 -04:00
German Andryeyev 059832b526 Return always true for P2P validation under ROCr
Change-Id: Id32a5a94a642e708d1d042c5247af38501bec153
2020-07-04 11:38:04 -04:00
German Andryeyev 01c2727a3a Disable P2P emulation for HIP
Some apps use P2P transfer without any validation for peer access.
Report an error if runtime has found such a request.

Change-Id: I3bf728f1fc3969697ade97bb1d2f1dce294078e2
2020-06-16 11:21:54 -04:00
Vlad Sytchenko e50a9eec9d Fix -Wsequence-point warning
Change-Id: Ib6322e06f83887da4a29f8eafb99b743211e851d
2020-06-15 17:40:11 -04:00
German Andryeyev e4177b75bc Add missing return
Change-Id: Ibe9c1ccb377ce14ad69a0e9828ea70b707acba34
2020-06-12 17:35:45 -04:00
German Andryeyev c5afd5d412 Initial HMM support
- Expose ROCclr interfaces for HIP usage
- ROCr interfaces aren't available in staging, thus control the
build with AMD_HMM_SUPPORT define

Change-Id: Iadc2bcc230e78d3b0dc22b235189c8cc80843446
2020-06-12 09:06:07 -04:00
Vlad Sytchenko 6e985845b3 Take into account dynamic LDS size when validating the launch parameters.
Bottom layers don't error check this value, so we might and up writing a bad value to a register and cause the SPI to hang.

Change-Id: I6da4ae71c66a25c63ebb804da4afe4ca7fb831b7
2020-05-08 09:37:06 -04:00
Michael LIAO 503ef06555 Clear executable permission.
Change-Id: Ia0d363b1ba89d7947e5b5a55cb67edba86f0515e
2020-05-07 10:38:58 -04:00
kjayapra-amd 7458bf9964 SWDEV-229840 - Improve error messages on ROCCLR Layer.
Change-Id: Iab7d9156cdc206db86385aa05023a0095ed40f92
2020-04-19 20:01:49 -04:00
Payam 1b6f21ad9a removing AMD emails per palamida scan
Change-Id: If7307f5b1f81a43f2725ec5abd3b8989cbddbcc5
2020-03-11 21:26:55 -04:00
German Andryeyev 288967eff4 SWDEV-193956 - Fix a regression in OCL for user events
- Check the queue for nullptr, since the user events may not have
a queue, associated with them

Change-Id: Ib969a052acc9108ca3fd0c063157fe4d47c5b244
2020-03-09 11:10:23 -04:00
German Andryeyev 0fc433e076 SWDEV-193956 - [hipclang-vdi-rocm][perf]
~45% to 50% of Performance drop on rocBLAS_int8 test

Add support for active waits without blocking the host thread.

Change-Id: Ie7bb48dcafcb4c93d448bf74749b829b626c3578
2020-03-04 17:02:15 -05:00
German Andryeyev a66d09f5a3 SWDEV-193956 - [hipclang-vdi-rocm][perf]
~45% to 50% of Performance drop on rocBLAS_int8 test

Use the last command in the queue for a wait.
Add extra print information about processed commands.
Add an option to disable file location printing.

Change-Id: I4187883e1a90e571fde3128af98368108fda8785
2020-02-21 15:21:15 -05:00
Christophe Paquot 566144edb2 Append before setting last command to avoid corner case
Change-Id: Iafe5f899427f0119e7f43e96af38e6e3a1dbfc93
2020-02-13 22:23:20 -05:00
Laurent Morichetti d9d9c69399 Replace cl_* integral types with standard types.
cl_bool -> bool
cl_int -> int32_t
cl_uint -> uint32_t
cl_long -> int64_t
cl_ulong -> uint64_t
cl_float -> float
cl_double -> double
cl_bitfield -> uint64_t

Change-Id: I840c8993b55f98f5b745d21e27f5f28233647a58
2020-02-12 13:16:06 -08:00
Laurent Morichetti b4c6143a2f Update copyright info
Change-Id: Ia4f9ff0f5f873b4223a8cca154188bb0d2f1abba
2020-02-04 09:26:14 -08:00
Laurent Morichetti 20c7173849 Merge branch 'origin/pghafari/vdi-prototype' into lmoriche/amd-master
Change-Id: Id3b833d405596735becb3346f3b08c6da57033fe
2020-01-30 20:12:13 -08:00