Commit Graph

73 Commits

Author SHA1 Message Date
Joseph Greathouse 0d31e51bc9 Fix maxSharedMemoryPerMultiProcessor attribute (#1927)
The maxSharedMemoryPerMultiProcessor attribute is meant to describe
the number of bytes of shared memory (LDS space in AMD terminology)
in each SM (CU in AMD terminology). For instance, on AMD GPUs this
is often 64KB per CU, and some Nvidia GPUs it's 96KB per SM.

This shared memory is a different address space from the normal
global memory. However, the current HIP-HCC properties fill this
in with a size that matches the totalGlboalMem property. This gives
a drastically too-high calculation for the amount of LDS space that
each CU has -- tens of GBs vs. 10s of KBs.

This patch fixes this by pulling the maxSharedMemoryPerMultiProcessor
property from the HSA pool that describes how much workgroup-local
space is available on each CU. The HSA runtime eventually pulls
this from the topology information about LDSSizeInKB, defined as
"Size of Local Data Store in Kilobytes per SIMD".

Previously, this HSA query was used to fill in the value of the
sharedMemPerBlock property. On today's AMD GPUs, we know that
the amount of LDS avaialble to the workgroup is identical to the
amount of LDS space in the CU. However, in the future this may
differ. As such, this patch changes around the order and fills
in the "PerMultiProcessor" property from the HSA query (since
what's what the query is defined to return), and then separately
fills in the "PerBlock" property as we know it.

[ROCm/hip commit: 55e55e78bb]
2020-03-17 14:00:51 +05:30
Rahul Garg 27526f47fb [sample] Add hipDispatchEnqueueRateMT (#1869)
* [sample] Add hipDispatchEnqueueRateMT



[ROCm/hip commit: 9d97f91fbb]
2020-02-13 23:21:40 -08:00
Rahul Garg 467dcc416d Simplify hipDispatchLatency sample (#1793)
* Use hipExtLaunchKernelGGL in dispatchlatency sample

* Let it run on NVCC path too

* Refactoring

* Add test_kernel source

* Remove ResultDB

* Remove error checks


[ROCm/hip commit: 2eb7ae4f0c]
2020-01-22 14:37:47 -08:00
Sarbojit2019 ddb0d10703 Added missing device prop fields into hipInfo sample (#1357)
* Added prop.integrated into hipInfo sample

* Added missing deviceProp fileds in hipInfo


[ROCm/hip commit: 7257f23063]
2019-08-23 09:21:47 +00:00
chrispaquot 808356f88b Set device before processing each one (#1358)
[ROCm/hip commit: 344d150bf8]
2019-08-23 09:19:50 +00:00
Rahul Garg 7509ffa68d Remove -g from hipBusBandwidth makefile (#1351)
[ROCm/hip commit: b3a0d4266b]
2019-08-21 10:01:31 +00:00
ansurya 8ff212f75b HIPCommander code cleanup (#1207)
* HIPCommander code cleanup

* Removed non-used headerfiles

* Removed empty ifdef


[ROCm/hip commit: 84f8441146]
2019-07-18 03:18:15 +00:00
Evgeny Mankov a6e82d8254 [HIP][tests] Copyright notice update
[ROCm/hip commit: c9af61e9d1]
2019-05-20 18:46:23 +03:00
Maneesh Gupta f3def1c107 Merge pull request #938 from gargrahul/fix_hipBusBW_p2p_bidir
Fix hipBusBW sample for P2P bidirectional test

[ROCm/hip commit: b93666bdde]
2019-02-28 07:14:38 +05:30
Rahul Garg c7620fc4e9 Fix hipBusBW sample for P2P bidirectional test
[ROCm/hip commit: 70278f1777]
2019-02-28 00:56:07 +05:30
Rahul Garg 6391066444 Fix hipBusBW overflow with setting beats/iterations
[ROCm/hip commit: 673ecd02fe]
2019-02-27 00:18:52 +05:30
Maneesh Gupta c4a93adb74 Replace hipLaunchKernel -> hipLaunchKernelGGL
Change-Id: I4d99009e1199811d417becf1e1b934ec4d4e30be


[ROCm/hip commit: 52e320f396]
2018-10-17 14:32:25 +05:30
Rahul Garg a45f17fe46 Fix hipCommander Makefile
[ROCm/hip commit: dc4d305c25]
2018-05-16 15:01:32 +05:30
Maneesh Gupta 4f42ee762d Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344


[ROCm/hip commit: 1ba06f63c4]
2018-03-12 11:29:03 +05:30
Rahul Garg 6a5da9f665 Use 2X for bidir p2p memory bandwidth calc
[ROCm/hip commit: 08c37f3296]
2017-10-23 21:57:20 +05:30
Ben Sander f47c40d2ff Use 2X for bidir memory bandwidth calc
[ROCm/hip commit: 0d1ad06458]
2017-10-21 07:47:32 -05:00
Ben Sander b3b134d65a Refactor dispatch latency test and fix several bugs.
[ROCm/hip commit: e87f7a4d00]
2017-08-17 08:46:58 -05:00
Aditya Atluri f7bfec2252 automate gcnarch detection
Change-Id: Ibbad22db136f7f5e2be84c82e9169298a144cc77


[ROCm/hip commit: 3e610ab0fe]
2017-06-29 12:01:40 -05:00
Sandeep Kumar 7b3f0eb15f Add peer2peer bandwidth and latency test
Change-Id: I6d88e4aa9f6e64096af16579eebef4740734203e


[ROCm/hip commit: c17ab84882]
2017-06-14 09:44:56 +05:30
Maneesh Gupta 6825ff455d Fix build issues in hipCommander sample
- Remove -stdlib=libstdc++ from Makefile
- Removed deleted HIP header file fom includes

Change-Id: Ia189396bee19fc52b679259df56c6c6e2bafb6fe


[ROCm/hip commit: 6e565d8469]
2017-04-07 14:54:03 +05:30
Ben Sander 71fc982cbe Refactor registered memory calls.
[ROCm/hip commit: 524e007db5]
2017-03-11 09:18:27 -06:00
Ben Sander ce74225d71 Add first step to a "registerd" mode in hipBusBandwidth.
[ROCm/hip commit: f022bd651f]
2017-03-11 09:18:27 -06:00
Rahul Garg 3d04971de3 Command scripts for latency measurements
Change-Id: I8c28765a09fb0358447367939de524b12699a317


[ROCm/hip commit: 55df1b6ff2]
2017-02-07 15:03:46 +05:30
Rahul Garg dc2f0fdeba Fixed hipcommander default execution for HCSWAP-106
Change-Id: I9fbd10dfaeeb4928b2ec23ceed131b5200a658f9


[ROCm/hip commit: cc0d2a6753]
2017-01-19 15:04:32 +05:30
Ben Sander fcdaa05a4d Print limits on CUDA devices
[ROCm/hip commit: 43635f51dc]
2016-12-16 08:55:11 -06:00
Ben Sander 89523da1c2 remove TODO file
[ROCm/hip commit: 4080fe209d]
2016-12-15 14:42:52 -06:00
Ben Sander e7edba491b Add more debug info
[ROCm/hip commit: ce92a53f25]
2016-11-26 08:56:02 -06:00
Ben Sander 411cf6c80a Print non-peers too
Change-Id: I2a6905edcdf144aa732ae3120c17780477f232ac


[ROCm/hip commit: 5832349e5e]
2016-11-04 06:34:07 -05:00
Maneesh Gupta 92498c947b samples: Updated copyright header
Change-Id: I821f514ced5e34d492cb167b65d7273e26ed7b84


[ROCm/hip commit: 501778898f]
2016-10-15 23:05:04 +05:30
Maneesh Gupta 2dba960b07 samples: Updated to use new hip include path
Change-Id: I53a1385a17f13a997ea21d14315f15a3ad851dab


[ROCm/hip commit: 3a247efb2f]
2016-10-04 22:21:10 +05:30
Ben Sander 00f8a4f5a7 Small tool, doc, sample enhancements.
- Expand message when HIP version mismatch detected.
- Doc touchup.
- change sorting of hipBusBandwidth so byte results shown at top.
-

Change-Id: Ifb4e44a5fdfb65d59c4994b11e5f13385705f7e0


[ROCm/hip commit: 7bc1af2776]
2016-09-26 16:36:01 -05:00
Ben Sander 13a12f65d5 Sample improvements.
- Enable -O3 for hipDispatchLatency.
- Use nearly-null kernel to prevent it from being optimized away.
- Formatting for hipDispatchLatency.
- Formatting for hipInfo.


[ROCm/hip commit: 1160cefc6d]
2016-09-22 13:05:47 -05:00
Maneesh Gupta a4a8d105db hipDispatchLatency: reduce iterations to 5120
Change-Id: I94ae4993ff5058cf15f9487a5a528fc24c1ad5fa


[ROCm/hip commit: 506d4086a9]
2016-06-13 14:23:51 +05:30
Maneesh Gupta b8cd64dec9 Fix makefiles in samples
[ROCm/hip commit: bcaefb81fc]
2016-04-18 10:15:35 +05:30
Ben Sander 775e484517 fix peer query order
[ROCm/hip commit: e4d1863ce8]
2016-04-11 07:58:59 -05:00
Ben Sander c964e3c75a P2p checkpoint.
- set USE_PEER_TO_PEER=3 (requires HCC "am_memtracker_update_peers")
- when enabling peer, turn it on for previously allocated memory.
- hipDeviceCanAccessPeer is no longer self-ware (self does not qualify
  as a peer)
- device peerlist always includes self, so when we call allow_access
  we never remove self access.
- hipDeviceReset() removes old peer mappings.


[ROCm/hip commit: 83f0de7806]
2016-04-11 07:58:59 -05:00
Ben Sander 80e2e37c51 Remove stray debug msgs, hipInfo don't print self as peer.
[ROCm/hip commit: d89539d40f]
2016-04-11 07:58:58 -05:00
Ben Sander c09e4adc03 Use HIP_PATH if set else use relative ../...
[ROCm/hip commit: 40e72dcd4a]
2016-04-11 07:58:58 -05:00
Ben Sander 85f22fe7db Print peers in hipConfig.
Also include peer APIs in vim hilighting.


[ROCm/hip commit: 0ac41ad143]
2016-04-11 07:58:58 -05:00
streamhsa 1d55744e91 change makefile for samples
[ROCm/hip commit: d0f0bf5c8e]
2016-03-29 16:02:09 +08:00
Aditya Atluri ad91545586 Logging dispatch latency through database util
[ROCm/hip commit: 78407ea40a]
2016-03-23 11:39:57 -05:00
Ben Sander 2313b4b7b5 Only include activity logger if CodeXL installed.
Fix hipHostMalloc in hipBusBandwidth.


[ROCm/hip commit: 3a5f964c4f]
2016-03-22 09:27:10 -05:00
Ben Sander b319209299 hipHostRegister and hipHostMalloc refactor.
Note hipHostMalloc (not hipHostAlloc or hipMallocHost).
 -  the hipHost* is used for all HIP APIs dealing with Host memory.
    (including hipHostMalloc, hipHostFree, hipHostRegister,
hipHostUnregister, hipHostGetFlags, hipHostGetDevicePointer).
  - hipMallocHost is consistent with "hipMalloc" for allocating device
    memory.  Enumerations hipHostMalloc* also used as optional
    flags parm to hipHostMalloc.


[ROCm/hip commit: ab910efb96]
2016-03-22 02:30:10 -05:00
Ben Sander 5297376252 Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp


[ROCm/hip commit: 1de63bfeea]
2016-03-19 03:22:09 -05:00
Ben Sander b6de799f47 Add beastperiteration and onesize for testing.
onesize allows running tests at one specific size.


[ROCm/hip commit: 7ff5b16d2a]
2016-03-19 02:43:04 -05:00
Ben Sander 79d0d442d3 Improve formatting - line up cols
[ROCm/hip commit: 85fce5f21e]
2016-03-18 23:43:04 -05:00
Ben Sander 5996a5c0a1 Print Pinned or Unpinned in result summary
[ROCm/hip commit: c2102847a4]
2016-03-18 21:28:29 -05:00
Ben Sander 8a47efb22a Supported --aliged mode. Add results check for H2D and D2H.
[ROCm/hip commit: 618556eaf9]
2016-03-18 03:09:52 -05:00
Aditya Atluri 637fca1cb6 corrected first and second kernel dispatch
[ROCm/hip commit: e23bd0a23e]
2016-03-15 14:22:00 -05:00
Aditya Atluri 2223b41232 Added single kernel launch to sample
[ROCm/hip commit: 862817626b]
2016-03-15 21:05:15 -05:00