Commit Graph

73 Commits

Author SHA1 Message Date
Joseph Greathouse 44b16df84f 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.
2020-03-17 14:00:51 +05:30
Rahul Garg 893ccc4ddf [sample] Add hipDispatchEnqueueRateMT (#1869)
* [sample] Add hipDispatchEnqueueRateMT
2020-02-13 23:21:40 -08:00
Rahul Garg 8b8e4a66b4 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
2020-01-22 14:37:47 -08:00
Sarbojit2019 919bb6c74d Added missing device prop fields into hipInfo sample (#1357)
* Added prop.integrated into hipInfo sample

* Added missing deviceProp fileds in hipInfo
2019-08-23 09:21:47 +00:00
chrispaquot d0b11deb7f Set device before processing each one (#1358) 2019-08-23 09:19:50 +00:00
Rahul Garg 900590967d Remove -g from hipBusBandwidth makefile (#1351) 2019-08-21 10:01:31 +00:00
ansurya 12bf6dbcda HIPCommander code cleanup (#1207)
* HIPCommander code cleanup

* Removed non-used headerfiles

* Removed empty ifdef
2019-07-18 03:18:15 +00:00
Evgeny Mankov 7664560f14 [HIP][tests] Copyright notice update 2019-05-20 18:46:23 +03:00
Maneesh Gupta 4eff6bd09a Merge pull request #938 from gargrahul/fix_hipBusBW_p2p_bidir
Fix hipBusBW sample for P2P bidirectional test
2019-02-28 07:14:38 +05:30
Rahul Garg 828e62fe4f Fix hipBusBW sample for P2P bidirectional test 2019-02-28 00:56:07 +05:30
Rahul Garg 4fef69afdc Fix hipBusBW overflow with setting beats/iterations 2019-02-27 00:18:52 +05:30
Maneesh Gupta e1fe095471 Replace hipLaunchKernel -> hipLaunchKernelGGL
Change-Id: I4d99009e1199811d417becf1e1b934ec4d4e30be
2018-10-17 14:32:25 +05:30
Rahul Garg 9707e9f563 Fix hipCommander Makefile 2018-05-16 15:01:32 +05:30
Maneesh Gupta 9e47fccc89 Apply .clangformat to all repo source files
Change-Id: I7e79c6058f0303f9a98911e3b7dd2e8596079344
2018-03-12 11:29:03 +05:30
Rahul Garg 4090c82936 Use 2X for bidir p2p memory bandwidth calc 2017-10-23 21:57:20 +05:30
Ben Sander 21689e8710 Use 2X for bidir memory bandwidth calc 2017-10-21 07:47:32 -05:00
Ben Sander 9da4352142 Refactor dispatch latency test and fix several bugs. 2017-08-17 08:46:58 -05:00
Aditya Atluri 0fe0381608 automate gcnarch detection
Change-Id: Ibbad22db136f7f5e2be84c82e9169298a144cc77
2017-06-29 12:01:40 -05:00
Sandeep Kumar 01842faa1c Add peer2peer bandwidth and latency test
Change-Id: I6d88e4aa9f6e64096af16579eebef4740734203e
2017-06-14 09:44:56 +05:30
Maneesh Gupta 6877554f5e Fix build issues in hipCommander sample
- Remove -stdlib=libstdc++ from Makefile
- Removed deleted HIP header file fom includes

Change-Id: Ia189396bee19fc52b679259df56c6c6e2bafb6fe
2017-04-07 14:54:03 +05:30
Ben Sander b7acb85fa8 Refactor registered memory calls. 2017-03-11 09:18:27 -06:00
Ben Sander f23b5a1f90 Add first step to a "registerd" mode in hipBusBandwidth. 2017-03-11 09:18:27 -06:00
Rahul Garg 73b56e690f Command scripts for latency measurements
Change-Id: I8c28765a09fb0358447367939de524b12699a317
2017-02-07 15:03:46 +05:30
Rahul Garg aa3f278475 Fixed hipcommander default execution for HCSWAP-106
Change-Id: I9fbd10dfaeeb4928b2ec23ceed131b5200a658f9
2017-01-19 15:04:32 +05:30
Ben Sander ab07d9b4a7 Print limits on CUDA devices 2016-12-16 08:55:11 -06:00
Ben Sander a30b36afdc remove TODO file 2016-12-15 14:42:52 -06:00
Ben Sander a504df955e Add more debug info 2016-11-26 08:56:02 -06:00
Ben Sander 44aee4b61c Print non-peers too
Change-Id: I2a6905edcdf144aa732ae3120c17780477f232ac
2016-11-04 06:34:07 -05:00
Maneesh Gupta 945a09c241 samples: Updated copyright header
Change-Id: I821f514ced5e34d492cb167b65d7273e26ed7b84
2016-10-15 23:05:04 +05:30
Maneesh Gupta ead394ec09 samples: Updated to use new hip include path
Change-Id: I53a1385a17f13a997ea21d14315f15a3ad851dab
2016-10-04 22:21:10 +05:30
Ben Sander 061bcc6a5c 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
2016-09-26 16:36:01 -05:00
Ben Sander e8beacbfb1 Sample improvements.
- Enable -O3 for hipDispatchLatency.
- Use nearly-null kernel to prevent it from being optimized away.
- Formatting for hipDispatchLatency.
- Formatting for hipInfo.
2016-09-22 13:05:47 -05:00
Maneesh Gupta 3d4bbc4224 hipDispatchLatency: reduce iterations to 5120
Change-Id: I94ae4993ff5058cf15f9487a5a528fc24c1ad5fa
2016-06-13 14:23:51 +05:30
Maneesh Gupta 273f4b4cbe Fix makefiles in samples 2016-04-18 10:15:35 +05:30
Ben Sander a894ca3abb fix peer query order 2016-04-11 07:58:59 -05:00
Ben Sander 9e7efd7c65 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.
2016-04-11 07:58:59 -05:00
Ben Sander a4d97c3172 Remove stray debug msgs, hipInfo don't print self as peer. 2016-04-11 07:58:58 -05:00
Ben Sander 034bf3d31c Use HIP_PATH if set else use relative ../... 2016-04-11 07:58:58 -05:00
Ben Sander 23dbffb207 Print peers in hipConfig.
Also include peer APIs in vim hilighting.
2016-04-11 07:58:58 -05:00
streamhsa a629d4975f change makefile for samples 2016-03-29 16:02:09 +08:00
Aditya Atluri 867554c423 Logging dispatch latency through database util 2016-03-23 11:39:57 -05:00
Ben Sander 004b4ada93 Only include activity logger if CodeXL installed.
Fix hipHostMalloc in hipBusBandwidth.
2016-03-22 09:27:10 -05:00
Ben Sander 2d0fade1f7 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.
2016-03-22 02:30:10 -05:00
Ben Sander 90ad8ddc5d Merge branch 'privatestaging' of https://github.com/AMDComputeLibraries/HIP-privatestaging into privatestaging
Conflicts:
	src/hip_hcc.cpp
2016-03-19 03:22:09 -05:00
Ben Sander 5197cf250d Add beastperiteration and onesize for testing.
onesize allows running tests at one specific size.
2016-03-19 02:43:04 -05:00
Ben Sander c5d0813f03 Improve formatting - line up cols 2016-03-18 23:43:04 -05:00
Ben Sander 3dc6906855 Print Pinned or Unpinned in result summary 2016-03-18 21:28:29 -05:00
Ben Sander 690486b9eb Supported --aliged mode. Add results check for H2D and D2H. 2016-03-18 03:09:52 -05:00
Aditya Atluri 369d01086f corrected first and second kernel dispatch 2016-03-15 14:22:00 -05:00
Aditya Atluri a6441c3334 Added single kernel launch to sample 2016-03-15 21:05:15 -05:00