Gráfico de commits

606 Commits

Autor SHA1 Mensaje Fecha
Saleel Kudchadker 6a77f73050 SWDEV-301667 - Increase kern arg pool
Change-Id: Ie4b087ae4aec08fccaaa7958cdf545e4e27ac5c1
2022-07-12 18:42:29 -04:00
Tao Sang 1e26165cd0 SWDEV-286739 - Support hipDeviceAttributeWallClockRate
Part 1: Query constant frequence of wall clock from RocR

Change-Id: I52cbba6d67d11cde6d019c5ab530059f426a9bf2
2022-07-12 17:53:11 -04:00
Saleel Kudchadker 175ad024d3 SWDEV-260345 - Manage constant buffer for blit
- Leverage managed buffer that would use chunks for fill pattern. Use a
different chunk for the next fill to avoid wait

Change-Id: I254483c867e112f66564ffd8f55e0a605d8896c9
2022-07-12 12:41:02 -04:00
Rakesh Roy 13ede1a17e SWDEV-344168 - Fix hipMemsetAsync API crash
- Make sure head_size is not crossing fill_size
- Head size, aligned size & tail size together cannot cross fill size

Change-Id: Ie7845d748e3698b245876b43c9e626d7ea7154f7
2022-07-11 00:10:17 -04:00
Saleel Kudchadker faaa41aab8 SWDEV-335626 - Use ROCr copy for IPC
Detect IPC buffer and use ROCr copy api instead of blit

Change-Id: Ie6bdd6fc45dbd7457611011d81570b53d5fd5276
2022-07-08 13:32:19 -04:00
kjayapra-amd e2b49690f2 SWDEV-344950 - Enable gfx1100 and gfx1102 on ROCm backend.
Change-Id: Ic559a804e6d504b73a7cea4aba086790956ee018
2022-07-05 20:25:42 -07:00
German Andryeyev 6844b8c7e0 SWDEV-340703 - Use different status value for the callback event
Change-Id: Ida725df53abfbf348b18e24c19edf011dc9192dd
2022-06-30 11:03:02 -04:00
German Andryeyev d8e4a289b3 SWDEV-344280 - Use coarse grain sysmem for kernel arg on MI200
Change-Id: I9596f0e8b88699538ec271b3a4345e5f75b968e3
2022-06-29 13:04:46 -04:00
Christophe Paquot 4aecc29bf0 SWDEV-322620 - Virtual Memory Management
Expose VM granularity

Change-Id: Ia6af99843ca957f1139fd369e46e09a6c346da46
2022-06-27 13:07:43 -07:00
haoyuan2 0a43f6bff3 SWDEV-343162 - fix OCL test regression
For OCL, keep original control logic
FOr HIP, keep the fix for SWDEV-338781

Change-Id: I89de8d1e73cd103b3b4f62206eed72d45695dd6e
2022-06-24 13:23:10 -04:00
Rakesh Roy 42da508815 SWDEV-330455 - Avoid creating different HSA signals for ROCr
- In ROCr, there is supposed to be exactly one HSA signal ever whose pointer is stored in every hostcall buffer so that device code can find it
- But, hostcallListener->initDevice creates a new HSA signal everytime enableHostcalls() gets called

Change-Id: I100595ec37442bcdb73da5991062f0a474de2935
2022-06-17 05:30:57 -04:00
German Andryeyev 73ec7bada6 SWDEV-341316 - Copy image SRD only if it's valid
Change-Id: I971a21fe99fd07b21cfd3dbe4e7ed33c0ea322f4
2022-06-16 09:18:04 -04:00
kjayapra-amd 3a78a1edcd SWDEV-339913 - Move SingleFPDenorm under ASIC Revision from GFXIP switch case.
Change-Id: I7826f81bdf7cf1479882f261d495c2c287725b3c
2022-06-16 08:31:37 -04:00
haoyuan2 6937fcae3a SWDEV-338781 - fix blender crash issue on Navi1x
remove incorrect control logic which caused seg fault on Navi1x

Change-Id: Ic56e8a73c53062bd86adcf57d0b66e00e21734ec
2022-06-15 10:54:57 -04:00
Saleel Kudchadker 5df34a2f7a SWDEV-335780 - Indicate if handler is queued
Maintain status of handler callback. For event records we no longer
submit callbacks to reduce the load on the async handler thread. However
without a callback we leak command memory/decrement refcounts. Indicate
status of the handler which we can use to queue a callback when
finish is called.

Change-Id: I89fd02f3d047a0e8162664ee17581a14795f1928
2022-06-14 20:55:06 -04:00
German Andryeyev 4975f69337 SWDEV-339296 - Delay hidden heap allocation till the usage
Move hidden heap creation to the kernel launch to make sure it's
allocated on the actual first usage.

Change-Id: I1b65a82fc06d9129ed45a69765bf14ea3d945b04
2022-06-14 12:18:34 -04:00
German Andryeyev ecea224bcf SWDEV-259998 - Change the location of RGP init calls
Move StartLateDeviceInit() and FinishDeviceInit() calls in RGP
server to avoid a timeout

Change-Id: Ifd681859c7dc76259d7296aa8cc15305d563c9b2
2022-06-13 18:05:44 -04:00
Christophe Paquot 905088e4e7 SWDEV-322620 - Virtual Memory Management
Introducing a VirtualMemObj map as it is needed to differentiate
between virtual address ranges and actual physical memory
This is because a whole VA range can have several physical memories
as chunks.

Change-Id: Ie2a972b4faf3f7d552cfa53e77898f80ad75740a
2022-06-06 11:32:22 -07:00
German Andryeyev 830898753d SWDEV-336024 - Clear device heap to 0 in ROCr path
Change-Id: Id100ca6d6d5bd7fb16ca8c98ff0b12c9df1d69ab
2022-05-20 11:51:08 -04:00
German Andryeyev 07c1b9a998 SWDEV-336024 - Clear device heap to 0
This reverts commit 04bfd93569.

Reason for revert: Fix regressions

Change-Id: I7d883e1c3cbd27bb64b581ec800243ad7dfe24fd
2022-05-19 09:10:08 -04:00
Sarbojit Sarkar 51a00aeefe SWDEV-331066 - support for LimitStackSize
Change-Id: Ie6ae74f008b4f72de83663194aafb0ebdddfc8b6
2022-05-19 00:24:06 -04:00
German Andryeyev f0309be0de SWDEV-334315 - Correct instruction timing API info
Change-Id: I9d291adac076d36776dc7316b411bd093230ca01
2022-05-17 10:17:07 -04:00
German Andryeyev 893b719181 SWDEV-331660 - Switch PAL interface to 734
Update clientApiId field in PlatformCreateInfo

Change-Id: I445b9712a4c0da9f32e86df8b4a1b8dd7365b11b
2022-05-16 22:58:50 -04:00
German Andryeyev 2f04eb90d3 SWDEV-336024 - Add a check for nullptr in HeapBuffer()
Change-Id: Ib8a3f2757c8600c4bd5bed417b230a60d4cf3d42
2022-05-16 09:41:47 -04:00
German Andryeyev b39dfabb58 SWDEV-334315 - Update PAL version and provide API info for RGP
Change-Id: Ied448aada09deabcf26c402a342bdfbd79f22d7b
2022-05-12 09:30:19 -04:00
German Andryeyev 04bfd93569 SWDEV-336024 - Clear device heap to 0
The heap must be cleared once per device, but ROCclr doesn't
create a queue per device in HIP. Hence, the clear operation will
be performed during the first queue creation.

Change-Id: I52ceb06d67d11cde6d019c5ab510059f426a9bfb
2022-05-11 11:03:56 -04:00
Christophe Paquot b4645c7d4e SWDEV-322620 - Virtual Memory Management
Add a virtualMemoryManagement_ flag to device.info.

Change-Id: Iabd039010d83fc51b4bcef600c609f5c65e7b1ae
2022-05-09 22:54:42 -07:00
kjayapra-amd 643ee46f28 SWDEV-331355 - Fixing the surface object on fillMemory function call.
Change-Id: Ieaa359ea8f31b0251d54b720469cdefde202579f
2022-05-04 14:24:03 -04:00
Saleel Kudchadker 02566677cf SWDEV-334152 - Set release as systemscope
Set release scope as system for dispatch AQL when events are passed to
hip*LaunchKernelGGL*

Change-Id: I93b91591e0ab023f1ecc5247f7905eca26147358
2022-04-29 13:19:29 -04:00
German Andryeyev 934149ff0a SWDEV-307184 - Fix a regression from 15f1632d
Disable hostcall buffer in OCL for now. COv5 can add hostcallbuffer
metadata for unknown reason. OCL may fail the buffer allocation
and kernel launch.

Change-Id: I34a6a45bac86c57422b764c0d69760c96920d6c5
2022-04-28 11:57:48 -04:00
Julia Jiang b7c7917256 SWDEV-334574 - Rename _bkendDevice in VDI
Change-Id: I1c04dad226e08f02bca11fa0d1981fafa7ea2d2a
2022-04-27 11:21:24 -04:00
Sarbojit Sarkar 6b15e0a1cc SWDEV-333438 - Fix for hipEnablePeerAccess segfault
Change-Id: I60720d1d9b9c522d15fe17dcfbc609571a4fd266
2022-04-26 05:21:52 -04:00
Ajay d2f837d25f SWDEV-332522 - streamOpsWrite & streamOpsWait to accept memory offset
Change-Id: I4b6ecb4d80c093d038d86616a637c4bb465ae24e
2022-04-25 14:59:36 -04:00
German Andryeyev c275d9b4b3 SWDEV-307184 - Make sure runtime passes CO version into comgr
Disable devlib linking when runtime links multiple objects from
the app. Otherwise devlibs will be linked twice and may cause
undefined behavior with COv5.

Change-Id: I3b8640c64ff898893225fe3af5b4b4a32d42bf40
2022-04-25 09:53:59 -04:00
Jason Tang ed7737564e SWDEV-324411 - Use blit kernel for copyBufferRect if atomic is not supported
Change-Id: I2e110fd3418117ee9c7ede379244d2c6c4f248b7
2022-04-24 11:41:16 -04:00
Christophe Paquot 67657d6099 SWDEV-322620 - Virtual Memory Management
Implement map/unmap for PAL backend
Create commands since PAL uses the IQueue to map/unmap

Change-Id: I97e26a7d28ae5e10774c9ca65307153100945621
2022-04-22 18:09:26 -04:00
sdashmiz 15f1632dfa SWDEV-204804 - Detecing pcie atomic support
- check pcie atomci support for printf functionality
- if not enabled printf wont work

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ib366e8e71772b02210c4a830bca4bd8cc7a11664
2022-04-22 08:53:16 -04:00
Christophe Paquot 4c3a20a16e SWDEV-322620 - Virtual Memory Management
Implement virtualFree for PAL

Change-Id: I4482777fa52c979d42a7c57103862e2e02279024
2022-04-21 14:45:11 -04:00
Saleel Kudchadker 8864e53265 SWDEV-333237 - Disable cache status
Enable Cache status only for ROC_EVENT_NO_FLUSH

Change-Id: I0de4c5af2226bccd66fd704be23c2db33050f2e2
2022-04-20 18:12:33 -04:00
Alex (Bin) Xie 3d514c85b9 SWDEV-329646 - MicroStation app crash upon closing
Change-Id: Ie3422788c80b233c836e319c355214ca076e5d4f
2022-04-20 14:34:44 -04:00
Julia Jiang b1611e0123 SWDEV-330164 - Fix in conformance svm_enqueue_api crash
Change-Id: I12eca6ca3e8d722b7534047fca79b289604aa2b0
2022-04-20 13:20:18 -04:00
Alex Xie 5528812aa9 SWDEV-330240 - HLK pnp with IO stress test fail
This code change is to improve error handling.
This code change does not fix issue itself.
Before this code change, hostcallBuffer_ point is initialized in the end of
create() function. If create function fails and returns early,
hostcallBuffer_ point is not initialized. This non-initialized point can
cause access violation when object is destructed.

This code change put the initialization of the pointer in the constructor.

Change-Id: I7fb6e764eb0547196dca03db237e49d3ff0fd06a
2022-04-19 11:04:26 -04:00
Saleel Kudchadker 9ec8a7306d SWDEV-332512 - Signal pool changes
Create a new signal if the next set of signals are busy

Change-Id: I5108e68c88fe41e3a45bad4495ebdf3742e76dcd
2022-04-18 15:58:38 -04:00
Saleel Kudchadker b6cbfaf499 SWDEV-301667 - Separate scope from marker_ts_
Change-Id: I19f4d394e898bfb8c9d9a2c2edf9d5bf5def3b08
2022-04-16 19:26:31 -04:00
pghafari 4d54f873b0 SWDEV-324412 - Removing depth24
OGLP fails conformance tests with depth24

Change-Id: I1efd66a81f64a5b999d0f3c3e9314b9e6129a587
2022-04-15 15:31:03 -04:00
Christophe Paquot b5f555f9ec SWDEV-322620 - Virtual Memory Management
Adding virtual memory management APIs to rocclr.
The HIP layer will handle virtual allocs on devices.

Change-Id: Ia978f105c2c3fed3959c77580ba228e845105754
2022-04-15 00:10:02 -04:00
German Andryeyev 7975a07112 SWDEV-332512 - Add ROC_SIGNAL_POOL_SIZE
Default value is 32 HSA signals in the pool.

Change-Id: Icb69413d3ff6ef228d9a9e22fd024e72c6d8ebe4
2022-04-14 17:32:00 -04:00
Saleel Kudchadker 8eeaa998c0 SWDEV-301667 - Add cache state for a device
- Add a global cache state for a device to indicate scopes of submitted
AQL packets
- Remove scopes for TS marker if hipEventReleaseToDevice is passed. Set
env ROC_EVENT_NO_FLUSH=1 to use NOP AQL for event records.
It would flush caches by default with system scope release.
- Calling finish() should ensure if caches are flushed, if not queue a
marker

Change-Id: Ibbbdbb1cd7ac61cb35649169212142545be159e0
2022-04-12 12:27:31 -04:00
Maxime Chambonnet d45794e985 SWDEV-1 - ROC CLR typos
This is cherry-picked from this github issue:
https://github.com/ROCm-Developer-Tools/ROCclr/issues/28

Change-Id: I236f4f25a2dabe05883159af0fab0bad06ab0fd0
2022-04-11 14:24:39 -04:00
German Andryeyev abf088ea89 SWDEV-307184 - Hidden heap keyword was renamed
Change-Id: I0a72b0cc16bd3d637cbaa79a692640bc922f62c4
2022-04-11 09:26:14 -04:00