커밋 그래프

5414 커밋

작성자 SHA1 메시지 날짜
Christophe Paquot dfec136725 Revert "Call notifyCmdQueue when building the event wait list"
This reverts commit 1cfc9d1860.

Reason for revert: better fix in ROCclr

Change-Id: I9707e69adf42a662c08fe9b3ec7458655d838bdd
2020-05-28 17:01:10 -04:00
kjayapra-amd f2899243f3 SWDEV-233927 - Crash if binary for current device is not found.
Change-Id: I57281ae6c09110f39155664fca5a83ea57bb62b4
2020-05-28 16:18:27 -04:00
Joseph Greathouse 766e708535 Fix a build error on signed/unsigned comparison
Change-Id: Ic79eb4c3ec5c6fd36cea7c4810d990619f08b9e1
2020-05-28 14:27:16 -05:00
kjayapra-amd 55cdef8e45 SWDEV-236465 - Return error code as soon as global creation fails.
Change-Id: I790b8b4fdd6ab8818bc5b6b9a79e6900b840372d
2020-05-28 13:28:23 -04:00
Joseph Greathouse 90453b68d3 Fix occupancy calculation functions in ROCclr path
The hipOccupancyMaxPotentialBlockSize API is meant to return the
number of threads for the highest-occupancy workgroup, and the number
of those workgroups. It was previously calculating the number of
maximum-sized workgroups that would fit on a single CU. This is
a mixture of the API we wanted (to calculate max potential block size)
and the MaxBlocksPerMultiprocessor function.

This patch fixes it up so that the internal occupancy calculation
function works for two uses: the traditional function that calculates
the maximum blocks per multiprocessor when a user passes in a fixed
block size (used for hipMaxBlocksPerMultiprocessor style functions)
and a function that calculates the size of a block that would lead
to maximum occupancy, and how many blocks of that size would be
needed to fill the whole GPU (for hipOccupancyMaxPotentialBlockSize
style functions).

This also updates the occupancy calculation function to prepare for
gfx10, which does not have SGPR-based occupancy limits.

Change-Id: Ie007b3f9d5ebc4e166b50a3a051498af35650f35
2020-05-28 10:22:10 -05:00
Evgeny d863edb8ba adding hipKernelNameRefByPtr function
Change-Id: Iefc18967b10394b85a207ffdb5bbfe5e3601474d
2020-05-28 10:59:48 -04:00
Matt Arsenault eb31e45123 Attempt to handle case where git isn't available
Git may not be available, and this may not be a git checkout, as would
happen in a release tarball. Doesn't really attempt to get a nicer
version formatting if some of the git subcommands fail.

Change-Id: Ib568cd1310983a43f2664ded72528d7e41f554c0
2020-05-28 09:23:24 -04:00
Saleel Kudchadker facb05495f Fix elapsed time calculation for null stream
SWDEV-237377 - This fixes time calculation where the event may
be recorded on Null stream and work submitted on other streams

Change-Id: Ie36310dea5cee2fed4a514ed01f04db4b47e571c
2020-05-27 18:42:07 -04:00
Michael LIAO cbe2bedf42 [hip] Those texture interfaces are C interfaces should be always exposed.
Change-Id: Ie34f1420839b17486346149b1672e70ec0088b54
2020-05-27 15:03:59 -04:00
Christophe Paquot 1cfc9d1860 Call notifyCmdQueue when building the event wait list
SWDEV-237846

Change-Id: I8bf70e7ad19903767a080d8c6e516c83b0dc2545
2020-05-27 12:53:46 -04:00
Sarbojit Sarkar e288338e4a [doc]shfl*sync update
1. Updated FAQ with shft*sync not supported hip_faq.md
2. Corrected some of input parameter description in hcc_details/hip_runtime_api.h
3. Redirect shfl*() to shfl_*_sync() for nvcc path where CUDA > 9.0

Change-Id: I3d8184db5fcc622852c9bad96b706348e8dfc16c
2020-05-27 02:17:40 -04:00
Aryan Salmanpour c9b8a19ce0 [dtest] add a test for hipExtStreamCreateWithCUMask API
Change-Id: Ib567e559c5ab7d04ac5c300fd7e15eedfc4fb6e6
2020-05-26 18:15:09 -04:00
Christophe Paquot 9611b5a8b4 hipDeviceSynchronize needs to sync NonBlocking streams as well
SWDEV-237167

Change-Id: Ie916d8f03ce91e8ef05a2b4edc580a7021520f6f
2020-05-26 17:59:22 -04:00
Ramesh Errabolu b941f9243f Remove dependency on hsa-ext-rocr-dev package
Change-Id: I1147a299c31ce1ae5978b7312d82fa83d796b019
2020-05-26 14:40:42 -05:00
Evgeny ed11059230 hip_prof: fixing printing pointer args
Change-Id: I93969723650f7c29d5c00a3809d3701c6a3dca44
2020-05-25 13:17:16 -04:00
kjayapra-amd 6bc01b31d6 SWDEV - 237467 - Return proper hip error codes incase of ROCclr IPC API failures.
Change-Id: I2cc8da543f70bb3d8b82520fa9b2f509d20ce3c0
2020-05-23 10:51:37 -04:00
Dittakavi Satyanvesh ee4688d37e hipIpcCloseMemHandle checks the status of IpcDetach
Change-Id: Ifbe8e5bbda610a1007f881627d0da1c874d03682
2020-05-23 08:47:36 -04:00
Mahesha Shivamallappa f4e6dec3ac Add support for cooperative group type - thread_block
Change-Id: If3770b6d6718a638b70f527ae2533d9ef3267ff4
2020-05-22 23:08:42 -04:00
Matt Arsenault a98920d9a3 Remove ROCclr search hacks
find_package should now be the only way to import ROCclr. Also update
the build example comment.

The build scripts used 2 custom variables to manually specify the
build and source directories for where to find VDI. Once renamed to
ROCclr, these conflicted with the variables automatically set by
find_package(ROCclr). These hacks tried to satisfy this intermediate
step to try satisfying commit ordering problems to get through PSDB.

The INSTALL.md documentation should also be updated, but it's
completely missing any mention of ROCclr now, and still gives
directions for hcc.

Change-Id: I6fc94b6cb36241a9d4f22d24e49523367f803461
2020-05-22 15:52:35 -04:00
Vlad Sytchenko 355661b5da Reenable texture reference tests
Change-Id: I77024476cff77951d61dc48f7e30094d6b47266c
2020-05-22 14:13:50 -04:00
Tao Sang 51b6c1856c Fix square build failure with static lib in Jenkin
When libamdhip64_static.a is built by Jenkin, sample square cannot been
built successfully because libamdhip64_static.a is archiveved in thin
mode. Thus in the patch it will be archiveved in full mode. Meanwhile
libamdhip64_static_temp.a will be useless and thus removed.

Change-Id: Ifd3882598ef0dc5e7af8db0e389e786025ceb455
2020-05-22 11:49:52 -04:00
Aryan Salmanpour 3a30b9eb8d Add support for hipExtStreamCreateWithCUMask API
Change-Id: I369d0eaca493821c4badc6b18ac02daa2fddc95f
2020-05-22 11:34:06 -04:00
Matt Arsenault 1003128925 Don't search ROCclr_DIR for prof_protocol.h
This points to the cmake directory where the find module was found,
not a prefix for where it was found.

Based on the search below looking in roctracer, searching in ROCclr
for the header doesn't make much sense. The header should be either
provided by ROCclr xor roctracer. Having it possibly be provided by
two different dependencies is confusing, and a potential source of
version mismatch problems.

Change-Id: Ic2f6ec03f9a7b86225cf7e5c43f39a1360318a34
2020-05-22 09:59:09 -04:00
Laurent Morichetti 161c14c1de load functions when registered if lazy load is disabled
Change-Id: I08c9684ca4ab86a6294ed9e670f3125c1a0cc6c4
2020-05-21 09:19:20 -04:00
Sarbojit Sarkar 06a0de3567 added null check
Change-Id: I7631965286bad5684bacb7e38c63031b5c691dc0
2020-05-20 23:08:55 -04:00
Saleel Kudchadker fe9aa9356b Fix elapsed time calc for hipEventElapsedTime
If the start and stop events have same command internally
then measure command end to command start
Change-Id: Ie70cfa37c06c06573f0ed58dab2bbe4434c1724b
2020-05-20 16:02:48 -04:00
German Andryeyev 3ae839c85b Add a test case for async double memset
Change-Id: I8a1df610c8d3d942651f258e7812e8697067c347
2020-05-20 12:52:29 -04:00
Dittakavi Satyanvesh 4ed5c887c0 enable occupancy sample on HIP-Clang
Change-Id: I236daad743bbbc7f8daa41e8157a4ff73058518b
2020-05-19 03:08:19 -04:00
agodavar e1961c838f Fix hipMemset for unaligned ptr, correct offset required by ROCclr per aligment and testcase to validate unaligned ptr
Change-Id: Ib1a0f9d1556d09cf72a12a90cad2e27c6d9c6a1c
2020-05-16 02:38:14 -04:00
Christophe Paquot 4932115d6d [hip] Skip lang guess if -x <lang> is specified.
Change-Id: If5cbdd1e5d36d2d8b83f3eadd0598162691167aa
2020-05-15 17:07:40 -04:00
Matt Arsenault 206810e014 Include interface directories from rocclr target
This is overly painful because this is an object library.

Change-Id: I618843b810549876053212bf24efff18aece9470
2020-05-15 13:17:13 -04:00
Payam 0a9d550d9b load functions when registered if lazy load is disabled
Change-Id: I6f10a72f7643e476407af03b04ef52e59741be45
2020-05-15 12:15:32 -04:00
Icarus Sparry ae65b83869 Merge "SWDEV-235875:Fix rocALUTION build error" into amd-master-next 2020-05-15 12:10:02 -04:00
Aaron En Ye Shi 8b52d70b9b Merge "API tracing instrumentation" into amd-master-next 2020-05-15 11:18:14 -04:00
Aaron En Ye Shi b9f0b54cae Merge "Fix missing hip_version.h install and package" into amd-master-next 2020-05-15 10:38:09 -04:00
Aaron Enye Shi 1a48abfdd6 Fix missing hip_version.h install and package
Change-Id: I7182518f8c0dea6e00ffd649d1a29027fdc78b24
2020-05-14 21:54:28 +00:00
agodavar 945726f870 SWDEV-235875:Fix rocALUTION build error
Change-Id: I2f2a15687e943a860ff6ca05f22422f791a36c0a
2020-05-14 14:43:25 -04:00
Payam 4638f0f11c updating envar to HIP_ROCCLR_HOME
Change-Id: Ic0bbf40638538307377e6db1a7379fb23dec8306
2020-05-14 12:59:51 -04:00
Evgeny 10cb7645dc API tracing instrumentation
Change-Id: I257409b9fe299b009ded3e3a43287322d5f93a70
2020-05-14 11:03:09 -05:00
Payam 6152b200cb adding support to disable lazy loading, HIP_ENABLE_LAZY_KERNEL_LOADING
Change-Id: Iafe0f396570ee2bccf642b537cbf9aad967e1370
2020-05-13 17:18:48 -04:00
Aaron En Ye Shi 9726cb85d4 Merge "Fix missing hip_prof_str.h in hip-base package" into amd-master-next 2020-05-13 16:25:06 -04:00
German Andryeyev a48ba48773 Merge "Correct mgpu coop launch test" into amd-master-next 2020-05-13 16:20:24 -04:00
Aaron Enye Shi e61b8dc425 Fix missing hip_prof_str.h in hip-base package
Change-Id: Icd163ff83fadc2ee0e68f5755c652a45d2e781e5
2020-05-13 19:13:16 +00:00
German Andryeyev 999295b3fa Correct mgpu coop launch test
When the original size is devided accross all GPUs rounding can
occur, causing incorrect validation. Readjust the final value
for comparison to the new size accordingly.

Change-Id: I9b42149e33dfcb328de7419e546a0202a69a8610
2020-05-13 14:39:11 -04:00
Vlad Sytchenko 5067cd1dd1 Correctly check if env vars are set
Change-Id: I365da786c822e9395aec5c6b75753ba297da3f64
2020-05-13 14:08:03 -04:00
Christophe Paquot 2cc0fb9381 Make sure to remove the global var from amd::MemObjMap
We need this otherwise ROCr can give us a matching address
for another allocation and doing "insert" in ROCclr will not
update the map with the newest object. We would then end up
using stale objects (yikes)
SWDEV-234992

Change-Id: I3475adf9781a9309d64a024fae45181d7e5afb04
2020-05-13 00:26:19 -07:00
Christophe Paquot 374fd36f31 Add lock to addFatBinary and removeFatBinary
In case hipModule(Un)Load is called from different thread as hipInit we need to grab the lock
as both are going to modify modules_
Also add some logging for __hipExtractCodeObjectFromFatBinary in case binary isn't found for GPU
SWDEV-236032

Change-Id: Icbd72b412502df80d5066cea42a4fbcd5b0b8a98
2020-05-12 16:04:08 -07:00
Aaron En Ye Shi 4fa2ce777a Merge "search path logic updated for extractkernel SWDEV-230929" into amd-master-next 2020-05-12 17:59:47 -04:00
Saleel Kudchadker 93dcace83c Merge "SWDEV-235495 Fix elapsed time calculation" into amd-master-next 2020-05-12 15:23:23 -04:00
Saleel Kudchadker 5b60eee02e SWDEV-235495 Fix elapsed time calculation
This issue happens because we getLastQueuedCommand when recording
the event and do end_ - start_ so it takes the ticks for the
completion of the last command before event record. This may not
happen if one records a marker command for hipEventRecord

Change-Id: I1d6b06a5befb3b93f16b67692c59dca25c982e0f
2020-05-12 09:38:01 -07:00