Commit Graph

25 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
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
Evgeny Mankov a6e82d8254 [HIP][tests] Copyright notice update
[ROCm/hip commit: c9af61e9d1]
2019-05-20 18:46:23 +03:00
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
Aditya Atluri f7bfec2252 automate gcnarch detection
Change-Id: Ibbad22db136f7f5e2be84c82e9169298a144cc77


[ROCm/hip commit: 3e610ab0fe]
2017-06-29 12:01:40 -05:00
Ben Sander fcdaa05a4d Print limits on CUDA devices
[ROCm/hip commit: 43635f51dc]
2016-12-16 08:55:11 -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 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
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 85f22fe7db Print peers in hipConfig.
Also include peer APIs in vim hilighting.


[ROCm/hip commit: 0ac41ad143]
2016-04-11 07:58:58 -05:00
Aditya Atluri f1b8758919 corrected hipDeviceGetProperties to hipGetDeviceProperties - not docs
[ROCm/hip commit: d3ba2b9782]
2016-03-06 08:31:04 -06:00
Ben Sander 1ac07d2b87 fixes for titan platform
[ROCm/hip commit: ff66ef0779]
2016-02-26 05:25:30 -06:00
Evgeny Mankov 82900a1888 Attribute hipDeviceAttributeIsMultiGpuBoard for obtaining Device property isMultiGpuBoard is added.
On HIP path property obtaining done through hsa_iterate_agents and counting the devices of HSA_DEVICE_TYPE_GPU type.

P.S.
On multi-boards systems it might be problems with detection what board a GPU plugged into (not tested).


[ROCm/hip commit: 57e212606d]
2016-02-25 23:44:39 +03:00
Evgeny Mankov c3a600c63b Guard #ifdef USE_ROCR_20 is added for ROCR_20 device properties (memoryClockRate, memoryBusWidth)
By default isn't defined.
To add ROCR_20 support HIP have to be compiled as follows: make CXX_DEFINES+=-DUSE_ROCR_20


[ROCm/hip commit: 833c9e52ad]
2016-02-19 13:27:03 +03:00
Evgeny Mankov 4fcd9f2542 Device property memoryBusWidth implementation.
+ Device property memoryBusWidth is added to hipDeviceProp_t struct.
+ Device attribute hipDeviceAttributeMemoryBusWidth is added to hipDeviceAttribute_t struct.
+ Tests update.


[ROCm/hip commit: 1c19dbb807]
2016-02-18 18:15:01 +03:00
Evgeny Mankov a0cc7134e3 Device property memoryClockRate implementation.
+ Device property memoryClockRate is added to hipDeviceProp_t struct.
+ Device attribute hipDeviceAttributeMemoryClockRate is added to hipDeviceAttribute_t struct.
+ Tests update.
+ Rename hipDevAttrConcurrentKernels to hipDeviceAttributeConcurrentKernels.


[ROCm/hip commit: 5ea8543d2e]
2016-02-18 17:25:28 +03:00
Evgeny Mankov 801ae992d6 hipInfo sample update with new Device Properties.
[ROCm/hip commit: 5b05a9fef1]
2016-02-18 15:08:55 +03:00
Evgeny Mankov 189e652a5e Formatting, no functional changes.
[ROCm/hip commit: 072d649d8d]
2016-02-15 13:16:05 +03:00
Aditya Avinash Atluri ae7d13da30 Corrected compilation error
[ROCm/hip commit: 2d57a3dd0b]
2016-01-26 10:40:06 -05:00
Ben Sander 97cf8b8ac9 Initial commit for GPUOpen Launch
[ROCm/hip commit: f38e63ff18]
2016-01-26 20:14:33 -06:00