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

2800 Коммитов

Автор SHA1 Сообщение Дата
Kent Russell 85b0b04903 Remove extra strlen call
While the ternary is nice to read, strlen in general is an expensive
call, so call it once and check if the value is greater than our maximum
allowable string length and adjust accordingly

Signed-off-by: Kent Russell <kent.russell@amd.com>
Change-Id: Id744f2ba0eb81bb2b3c52eb69f38a615398a655d


[ROCm/ROCR-Runtime commit: 025036a662]
2020-10-30 06:44:48 -04:00
Felix Kuehling acdda4811b libhsakmt: handle GPU mapping errors
Don't update the vm_object if GPU mapping failed. Print an error message
to help diagnose underlying problems.

Change-Id: I801ab6fe6c155bd25e6c0358007c106a4a019480
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: c7e6f5a274]
2020-10-26 18:46:24 -04:00
Felix Kuehling 35b07e1e28 libhsakmt: optimize system memory allocation
Use MAP_POPULATE when allocating anonymous system memory for later
GPU mapping as a userptr. This can speed up large allocations by
more than factor 2. I suspect populating pages in this way is more
efficient than the CPU page fault code path triggered by
get_user_pages in the kernel.

Change-Id: I188bbc1462ccb650d48cbfb1080dbb8eb7ada8b5
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 8f26c0c40c]
2020-10-26 18:44:20 -04:00
Sean Keely 56fa259711 Diable sram ecc reporting.
Temporary workaround while language and compiler teams sort out
handling both modes.

Change-Id: I5d676cd546382dba05ec0b62bb885baa854614f6


[ROCm/ROCR-Runtime commit: a09ba8bcc8]
2020-10-20 17:06:30 -05:00
Laurent Morichetti d933e70089 libhsakmt: Fix the ctrl stack size calculation
On gfx9, the maximum number of wavefronts per queue is the minimum of
40 waves per compute units, or 512 waves per shader engine.  On gfx10,
there can only be 32 waves per compute units.

Signed-off-by: Laurent Morichetti <laurent.morichetti@amd.com>
Change-Id: I148d1a4fe6c07cdbfaa1f77939eb29311c81c008


[ROCm/ROCR-Runtime commit: 783e346777]
2020-10-16 12:35:11 -07:00
Arun Sunil 8c495a73de CMakeLists.txt: Fix issue with rocrtst
Fix for issue where rocrtst could not be built if out directory 
was outside the src (WORK_ROOT) directory due to hard-coded 
relative path for OPENCL_INC_DIR.

Change-Id: Icb93de2266d568e9c2437166e34c88ec526fb45c


[ROCm/ROCR-Runtime commit: 8d00f1aa59]
2020-10-13 18:14:26 -04:00
Evgeny 2c1f448744 aqlprofile: adding counters DISABLE get-info id
Change-Id: I90d0f6ae96b0d80c481648eecf907301fc13ab74


[ROCm/ROCR-Runtime commit: 0d1e5cbcb6]
2020-10-12 17:12:25 -05:00
Chengming Gui 120457680e kfdtest: Add gfx1032 support
Signed-off-by: Chengming Gui <Jack.Gui@amd.com>
Change-Id: I04cd412a5e243dfe7aa7596287341e1671c1521a


[ROCm/ROCR-Runtime commit: 4a9d55c414]
2020-10-12 11:30:39 +08:00
Chengming Gui c5429d56c1 libhsakmt: Prepare gfx1032 support
PCI IDs have yet to be added later.

Signed-off-by: Chengming Gui <Jack.Gui@amd.com>
Change-Id: I28f657201868423012e856df4310a493b7cd5752


[ROCm/ROCR-Runtime commit: b543f4f77c]
2020-10-12 11:30:39 +08:00
Sean Keely c3142d6b6d Initialize intercept queue packets properly.
Change-Id: I0ff1540940665409a9ade3a517dd576a8f334c7b


[ROCm/ROCR-Runtime commit: 9192dfe1b0]
2020-10-08 15:33:43 -05:00
Laurent Morichetti 18240aa6d6 Update the context save area size
Reserve some space in the context save area for the debugger's
use. There should be 32 bytes per wave for a given queue.

Change-Id: I65ddb6123d0f6afd3149844617ad19023009101d


[ROCm/ROCR-Runtime commit: 2ed2e46b9b]
2020-10-05 12:10:58 -07:00
Chris Freehill 6e6cc27c73 Add README for rocrtst
Change-Id: Icd43a243ccfc9caf5ade3cd0e7ffc00e251fc0a2


[ROCm/ROCR-Runtime commit: 2b41fb9fdc]
2020-09-28 20:27:53 -05:00
Jay Cornwall 7821213760 libhsakmt: Limit control stack size on gfx10
The queue control stack size cannot exceed 0x7000 on ASICs
gfx1010 through gfx1031. The lower limit is not achievable
with AQL so this should have no practical effect.

Fixes control stack size overflow on large ASICs.

Change-Id: Ib78cf6e4c5f096044bf8de24debe211689891caa
Signed-off-by: Jay Cornwall <jay.cornwall@amd.com>


[ROCm/ROCR-Runtime commit: 44f80d170d]
2020-09-28 18:14:57 -05:00
Sean Keely e78c1df5e3 Correct return type error in hsa_amd_signal_wait_any.
The error checking macro IS_OPEN returns an hsa_signal_t.
This conflicts with the return type of uint32_t.

Add an assert and rely on spurious return rule to return zero
when rocr is not initialized.

Change-Id: Ifc9bb75e22ecdd675273de59b31e5026a69c62e0


[ROCm/ROCR-Runtime commit: a3c4aaf95a]
2020-09-25 21:33:23 -04:00
Sean Keely d78de2d062 Add try/catch blocks to image APIs.
Change-Id: I724dcc8015ac556649278dd6cdf1ad4097aaa846


[ROCm/ROCR-Runtime commit: 248904ab26]
2020-09-22 19:49:36 -04:00
Sean Keely e5df994bff Correct image limits tables to SI limits.
Limits remain unchanged through gfx1030.

Change-Id: Ibdd39b7b97101ea0133af6cebdf295aeef81ac45


[ROCm/ROCR-Runtime commit: 33a57ddf72]
2020-09-22 19:49:08 -04:00
Harish Kasiviswanathan 0e9dbc61d2 libhsakmt: add device ID for gfx1030
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
Change-Id: I3024bf706f88c0e612391f6d8045020101007bdc


[ROCm/ROCR-Runtime commit: 3311785c7b]
2020-09-21 14:23:46 -04:00
Chengming Gui 90298c1436 kfdtest: fix MTYPE error when init sdma fence packet
Signed-off-by: Chengming Gui <Jack.Gui@amd.com>
Change-Id: I14a1ef204dbd5ab1e9f1840b9555f88b0df361c0


[ROCm/ROCR-Runtime commit: befc7edaea]
2020-09-21 03:57:12 -04:00
Jinzhou.Su 8fc695a7c1 kfdtest: fix gfx90c blacklist issue
This patch is the hot fix to update gfx90c blacklist 

Change-Id: I41f48154ad5ec3035fcb7891a224fc940dca991f


[ROCm/ROCR-Runtime commit: 7efa823ec8]
2020-09-16 09:42:01 +08:00
Jinzhou.Su 0b78c33201 kfdtest:Update gfx90c blacklist
1. Add KFDEvictTest.* for gfx90c based on CI test results

2. Remove SDMA blacklist based on SDMA issue fixed:

Change-Id: I86910fc98a5141f29959b35248a900f0c098a6e8


[ROCm/ROCR-Runtime commit: 36249ddc0e]
2020-09-14 22:49:53 -04:00
Huang Rui 2b2835e596 libhsakmt: fix to update the param number after remove to dgpu input
This patch is the hot fix to fix the param number checking after remove
dgpu input.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Change-Id: Ic980588f78616f99076de742af580afb4273fb2f


[ROCm/ROCR-Runtime commit: 8fc816affe]
2020-09-11 10:25:37 -04:00
Chris Freehill d529685dd8 Add gfx1031 support
Change-Id: I855f7fe8d096331d0c1da10b10adf6b1e75a527f


[ROCm/ROCR-Runtime commit: 4944c74189]
2020-09-10 11:06:58 -04:00
Huang Rui e2de06530f libhsakmt: update gfx90c isa version
gfx90c should use GFX902 which is the same with gfx902.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Change-Id: Id24dc2c85c9f49f36b00889c3b8b1b19cce34e09


[ROCm/ROCR-Runtime commit: 8ea0d49337]
2020-09-09 22:10:58 -04:00
Kent Russell 0ec9c67e02 Remove -dev make instructions
These are removed now that we've consolidated the dev package
information into CMakeLists.txt from hsakmt-dev.txt.

Change-Id: I49496ec5def85b0af7fa6b15110910528a8e0be0


[ROCm/ROCR-Runtime commit: 654ee83ac8]
2020-09-09 11:28:18 -04:00
Kent Russell 3262952918 Fix lintian errors in deb packages
Add extended descriptions and e-mail address to CMakeLists
A lintian error will remain regarding stripping the .so, as we
will not be doing this for Release versions of the hsakmt .so

Signed-off-by: Kent Russell <kent.russell@amd.com>
Change-Id: I41c768dee28c0564d92b9c103a6e2d97590e4589


[ROCm/ROCR-Runtime commit: 0a4b23d625]
2020-09-09 11:28:18 -04:00
Kent Russell f28303dd25 README: Update README info and installation instructions
Added caveat regarding Ubuntu 20.04 /dev/kfd permissions
Edit copyright date, remove outdated HW support list

Change-Id: I3138058a01db6c46cf624bcfb8cfb04c164d9133
Signed-off-by: Kent Russell <kent.russell@amd.com>


[ROCm/ROCR-Runtime commit: ae4e980ea8]
2020-09-09 11:28:18 -04:00
Huang Rui bbc6eb6f3f libhsakmt: remove is_dgpu flag in the hsa_gfxip_table
Whether use dgpu path will check the props which exposed from kernel.
We won't need hard code in the ASIC table.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Change-Id: I0c018a26b219914a41197ff36dbec7a75945d452


[ROCm/ROCR-Runtime commit: ad87f38dad]
2020-09-09 20:56:50 +08:00
Huang Rui 51a5e47a1b libhsakmt: implement the method that using flag which exposed by kfd to configure is_dgpu
KFD already implemented the fallback path for APU. Thunk will use flag
which exposed by kfd to configure is_dgpu instead of hardcode before.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Change-Id: I445f6cf668f9484dd06cd9ae1bb3cfe7428ec7eb


[ROCm/ROCR-Runtime commit: 12813691a2]
2020-09-09 20:56:39 +08:00
Sean Keely fe47915a8e Use SDMA for small copies in VRAM.
For small copies cache flush latency is larger than data transfer
latency in local VRAM.  Select SDMA for small copies.

Environment key HSA_FORCE_SDMA_SIZE is added for easy adjustment
of the small copy size.  This may be removed after tuning is done.

Change-Id: I733fa0ae01c616617c5de50e71226b51fd589ef2


[ROCm/ROCR-Runtime commit: 2a0c6774fb]
2020-09-03 03:11:57 -05:00
Oak Zeng a1aec2cc19 CWSR control stack size calculation for gfx10
Gfx10 need 12bytes/wave control stack

Change-Id: I6c6f2819572e6b43aa3140d4dbe79d930e4c1c9c
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com>


[ROCm/ROCR-Runtime commit: 3d3b28b670]
2020-09-01 21:34:00 -07:00
Sean Keely 700dca7dd4 Correct memory release function.
l_name is populated by strdup which requires using free rather
than delete.

Change-Id: I9d9bdcfaa3ef095502270f332b95a0ee5c0bbcfc


[ROCm/ROCR-Runtime commit: 9c20f0e649]
2020-08-26 18:22:59 -05:00
Sean Keely ecf5e6ca8f Convert from double to uint64_t in two steps.
We want wraparound behavior here but we don't want to trigger sanitizer
warnings.  Converting to int64_t and then wraping around by cast to
uint64_t avoids the UB issue that triggers the sanitizer warning.

Change-Id: I9400b988dce7899e9ba42cab3e35c7ffedec8fe1


[ROCm/ROCR-Runtime commit: 5f43778a51]
2020-08-25 20:12:52 -05:00
Cole Nelson 7f409a38c1 packaging: set arch, field separators, vendor info
Enables standards compliant package naming for debian and rpm.

Change-Id: Iad86bf942b4e2938516ef46cda6fa2e4bb3744cc
Signed-off-by: Cole Nelson <cole.nelson@amd.com>


[ROCm/ROCR-Runtime commit: 24bad55dc7]
2020-08-21 11:33:05 -04:00
Philip Cox 52a223ac90 libhsakmt: call madvise() from fmm_allocate_device
This is needed to avoid additional references to mapped BOs in child
processes that can prevent freeing memory in the parent process and lead
to out-of-memory conditions.

Change-Id: I25c90510a14dde515cc23ea5dc1f68e8d7e37a66
Signed-off-by: Philip Cox <Philip.Cox@amd.com>


[ROCm/ROCR-Runtime commit: f7a3427c99]
2020-08-19 13:33:47 -04:00
Chris Freehill 2067fc4f85 Fix build issue with memset use on newer gcc version
Change-Id: I57824a3dac94d3da3675f7c74f2e3bc5ac1052ed


[ROCm/ROCR-Runtime commit: 78be4b8225]
2020-08-19 09:13:24 -05:00
Jinzhou.Su 32cb33a6a6 kfdtest: remove test cases on gfx90c which block IQE test
SDMA_BLACKLIST, KFDMemoryTest.LargestSysBufferTest,
KFDQMTest.BasicCuMaskingEven

Change-Id: Ic603452ede5ef14f5fcb49925d57d3a656d48a08
Signed-off-by: Jinzhou.Su <Jinzhou.Su@amd.com>


[ROCm/ROCR-Runtime commit: a69830917f]
2020-08-19 10:20:24 +08:00
Kent Russell 0c1420ef32 Fix GCC warning regarding strncpy in CPU info
strlen(src) should not be used as the length in strncpy. Use memcpy
since we know the length of the string, and ensure that we
NULL-terminate regardless of length

Signed-off-by: Kent Russell <kent.russell@amd.com>
Change-Id: I21cc6d106510c69464e7ac9d3fc7da3a1e6d1a68


[ROCm/ROCR-Runtime commit: 04f6b9e16b]
2020-08-14 07:10:19 -04:00
Kent Russell 0fd38ef996 Fix typo lager->larger
Signed-off-by: Kent Russell <kent.russell@amd.com>
Change-Id: I188d629b6441e5ebb14f104869e871d003c78c9d


[ROCm/ROCR-Runtime commit: 6085baa2dc]
2020-08-13 06:34:42 -04:00
Sean Keely 6b75c08312 Add gfx1030 to image blit kernel build list.
Change-Id: I2ddb6a595bb7ca5f6a94f38f8ecc2e40831c52fd


[ROCm/ROCR-Runtime commit: 1d919adc75]
2020-08-12 16:38:39 -05:00
Sean Keely 240a56b059 Switch to release e_flags id for gfx1030.
Change-Id: I51c9ecdf78d6ec56ccc70ca5777bb011db35fda3


[ROCm/ROCR-Runtime commit: 78e5c06ea8]
2020-08-12 16:38:16 -05:00
Sean Keely d095c05aae Add xnack isa recognition to gfx1030.
Change-Id: I99301a62f1952b6a3cc548272f4129ad8c0542da


[ROCm/ROCR-Runtime commit: dc7e5e7e46]
2020-08-12 16:34:17 -05:00
Sean Keely d4b61cc3e6 Add ELF types for gfx1030.
Change-Id: If875534d698da9840e47c380d5630b6dd742ab0c


[ROCm/ROCR-Runtime commit: ddfe07871a]
2020-08-12 16:34:17 -05:00
Chris Freehill 9e97c1acd1 Add gfx1030 support
Change-Id: I4bccc731ba802480925f98c6c42593503bf9b98d


[ROCm/ROCR-Runtime commit: e702531b40]
2020-08-12 16:34:10 -05:00
Ramesh Errabolu 3b1a619d0a IPC child process should exit and not return
Change-Id: I9b01f473eea1b42cf65c042f89fcf24bfd2ffc0d


[ROCm/ROCR-Runtime commit: 3444da7df6]
2020-08-10 11:19:21 -05:00
Philip Yang bbe2fd7b02 libhsakmt: always use render fd to create CPU mapping
The option to use kfd_fd for cpu mapping is for very old broken KFD
version, it is not used in upstreaming process. This causes issue when
multiple process uses shared system memory because the GTT address is
over 40 bits.

Change to always use render node fd to create CPU mapping.

Change-Id: Id7e7b2a2e2f13c6e62c5de170589abfff4d456b0
Signed-off-by: Philip Yang <Philip.Yang@amd.com>


[ROCm/ROCR-Runtime commit: 9e9771a7d9]
2020-08-04 12:54:57 -04:00
Chengming Gui 11c3d639c2 kfdtest: Add gfx1031 support
Signed-off-by: Chengming Gui <Jack.Gui@amd.com>
Change-Id: I3806ec33eefd84ff1dd690dd142889e076b7ef43


[ROCm/ROCR-Runtime commit: 72294266c2]
2020-07-28 18:02:51 -04:00
Chengming Gui 8cd0bc0134 libhsakmt: Add gfx1031 support
Signed-off-by: Chengming Gui <Jack.Gui@amd.com>
Change-Id: Ic1e78e5c3a453eb01f725612cf9ecc702ce2e132


[ROCm/ROCR-Runtime commit: bf1a7acea3]
2020-07-28 15:01:00 -05:00
Ashutosh Mishra b25ba0af58 Adapting HSA Changes
Using mordern cmake changes for rocrtest in accordance with the
recent changes in HSA. These changes also make sure that tests
can be compiled both for static as well as dynamic libs

Change-Id: I6dfb5259a4cbd994f413f68d1ebadc2ba5fe4f34


[ROCm/ROCR-Runtime commit: d13342d03a]
2020-07-24 17:15:12 +05:30
Ashutosh Mishra 92f7333282 Adapting HSA Changes
Following Cmake changes are in accordance to the changes in HSA / THUNK , VDI etc
These have made the code compilable now both for satic as well as dynamic libs

Change-Id: I4d8d3e2b84d6e1ea00531594522111ccbce8a87b


[ROCm/ROCR-Runtime commit: 4827d1d4d4]
2020-07-21 12:06:51 -04:00
Sean Keely b6ed5e92bd Make explicit reference between init modules.
Make explicit reference to hsa_api_trace.cpp from
initialization of hsa_table_interface.cpp.  Breaks
the ability to use hsa_table_interface.cpp in plugins.

Change-Id: I22a42d3a132512b0d9ec7a1ca629b169e7f8eba7


[ROCm/ROCR-Runtime commit: f4fe7ddf47]
2020-07-15 16:02:15 -04:00