Commit Graph

1133 Commits

Author SHA1 Message Date
Aditya Atluri a3286737aa fixed multi-dim module kernel launch
Change-Id: Id1d81f2375d058979ab526433f905cf0ea3d23d6


[ROCm/clr commit: 6dcdf08e0d]
2016-11-11 12:25:23 -06:00
Ben Sander 5e354dcd77 Add option to deny peer access.
Also fix test.

Change-Id: I1b247f6c4271442b008e560669bca4daf8eb94c7


[ROCm/clr commit: d666fbaafe]
2016-11-10 23:12:48 -06:00
Ben Sander 40f8947cc3 Use forceUnpinnedCopy to resolve P2p corner cases.
Change-Id: I2aebb419881246cebb696bec87798635bc71acc2


[ROCm/clr commit: 6e54a600b6]
2016-11-10 23:12:48 -06:00
Ben Sander f634f73fef Enable async copy again.
Also add HIP_FORCE_SYNC_COPY chicken bit.

Change-Id: I76a385410494b99bf27305d3c08f55dd81987565


[ROCm/clr commit: 0eeaa3bcd5]
2016-11-10 23:12:48 -06:00
Ben Sander ee41609b48 Refactor copy and P2P logic.
Prefer use of source-engine for DMA copies, even if user submits copy
in a stream attached to a different device.
The stream is now used only for synchronization, and HIP
makes the most optimal decision for which engine to perform the
copy - typically the source copy engine.

HIP now makes decision on which engine should perform the copy
and passes this to HCC using new apis.
HIP has additional information about peer
visibility and will make a decision which agent should perform
the copy .

Change-Id: I0cf4cfebeae256e6ca795f08a7ed7130f4857d1f


[ROCm/clr commit: e767e0032e]
2016-11-10 23:12:48 -06:00
Ben Sander ae2992bcb9 Improve memory debug
Change-Id: I0f033139aa4e4b47039eb016e404009127bd0a44


[ROCm/clr commit: e9835617f1]
2016-11-10 23:12:48 -06:00
pensun daf19a2dbb resolve conflicts for git pull
Change-Id: Ie353b831e2241bc28042069b6cc7405257e871e1


[ROCm/clr commit: bbb619c732]
2016-11-09 21:38:43 -06:00
pensun 61635b585f Add option to alloc fingrained system memory
Change-Id: Ia13c8e058cb988b5857e75a590a4d67411362ae1


[ROCm/clr commit: 23de0e1b50]
2016-11-09 21:36:30 -06:00
Ben Sander 03fcf556e9 Improve Peer support and testing.
Change-Id: Icadc65988aaf145a265587ab0357c5bf4d26f3eb


[ROCm/clr commit: f3d38c2615]
2016-11-06 03:22:36 -06:00
Ben Sander 0af2722827 Set forceHostCopyEngine for other copy dirs. Support HIP_FORCE_P2P_HOST
Also: more debug for copy and P2p.

Change-Id: I87030c525410e041b2a00baaf6c68e6c0977ff42


[ROCm/clr commit: 06ecfa3975]
2016-11-04 19:53:23 -05:00
Ben Sander 06b9391974 Refactor resolve-mem step1
Change-Id: I7b8b2bbb56d7b31a97b48ebd42002641cd07a460


[ROCm/clr commit: 926e63c655]
2016-11-04 09:37:56 -05:00
Ben Sander 74c9c6e591 Add debug for Peer APIs. Enable PeerMemcpy APIs by default.
Change-Id: I46e39a9e7b07686a78484c1f3b5495b08e052fbb


[ROCm/clr commit: 00276d141e]
2016-11-04 08:51:16 -05:00
Aditya Atluri 2d299543bf added inter thread data movement intrinsics
Change-Id: I2a8a8ed49429cb7f96439bd28c4b83b5142737df


[ROCm/clr commit: f097b6ef81]
2016-11-01 16:37:33 -05:00
Rahul Garg 5040e8bcc3 Added hipDeviceGetByPCIBusId in hip/hcc path
Change-Id: I3cca0dc533d0281689d8a407c7da16ca1ba6a3a8


[ROCm/clr commit: 81c91f5b0b]
2016-11-01 10:57:48 +05:30
Ben Sander c8aad6ee8e Print short hipLaunchKernel correctly.
Change-Id: I6ca03d7c707cd03d6982199830213953d5855f17


[ROCm/clr commit: 3d0fa30183]
2016-10-27 23:09:32 -05:00
Ben Sander 4378a14789 Add initial hipProfileStart/Stop
And modify sample to show how to use.
Still needs some work to understand interaction with CXL.

Change-Id: I2579824d2dd7863ea23874d34f0dabb3cb305d3e


[ROCm/clr commit: 18dbafe6e8]
2016-10-27 23:09:32 -05:00
Ben Sander 6a06295e31 Add two levels of HIP_PROFILE_API (1=short,2=long)
Change-Id: I7ef98589f8731fb879db109fd573c62b489f2b61


[ROCm/clr commit: 1d5034f583]
2016-10-27 23:09:31 -05:00
Ben Sander 44127ad800 Fix scoped marker so begin/end ATP timestamps correct
Change-Id: Ic944d3fc00d7bc31b756c0e6c327b99eb489537e


[ROCm/clr commit: 90adf98a7e]
2016-10-27 23:09:31 -05:00
Ben Sander e0a3b2472c Rename HIP_ATP_MARKER and profiling vars
HIP_PROFILE_API
HIP_DB_START_API
HIP_DB_STOP_API

Change-Id: I6c4da67212ff8217e6356a2622d4c6278a188c34


[ROCm/clr commit: f7c42efa3f]
2016-10-27 23:09:31 -05:00
Ben Sander fd2e0db1f8 Allow HIP_DB to be number or string flags (ie HIP_DB=api+mem+sync)
Add callbacks for processing env vars.

Change-Id: I4ddf50e2da56b1dae43f50657bc693b07b23c03d


[ROCm/clr commit: caf446fe53]
2016-10-27 23:09:31 -05:00
Ben Sander 22ae54b4cc Add HIP_PROFILE_START_API, HIP_PROFILE_STOP_API
Refactor HIP_INIT_API to call recordApiTrace.

Change-Id: Ieff4b5018236f59e49e1b9841474440a34f821df


[ROCm/clr commit: 3132c36471]
2016-10-27 23:09:31 -05:00
Ben Sander 147cd45ebf Add per-thread API seqnum to debug
Change-Id: Ib13733a3e84cd56bae13a32bae40f936c20b7543


[ROCm/clr commit: 45e2dd4d69]
2016-10-27 23:09:31 -05:00
Ben Sander 5e20bb6370 Don't call allow-access if allocating device's only peer is self.
Change-Id: Iac58e6c3e460675833f10b1e8b2e393de223654d


[ROCm/clr commit: f8b356dce8]
2016-10-27 23:09:31 -05:00
Ben Sander 4029bc31e6 Improve HIP TID printing in debug mode.
Map long thread-id to a short one that is printed with each message.
Remove clunky stirng creation code for tid_tr.
Print TID on every message.

Change-Id: I780a91d8ce789cb4957789036b478bf5cde8c4e4


[ROCm/clr commit: 7d69e858a5]
2016-10-27 23:09:31 -05:00
Aditya Atluri c58f5af811 reverted change for cache size query
Change-Id: I44a1f43818cd287a2a3b6265f43d183f9bd5b71c


[ROCm/clr commit: 8145e1b129]
2016-10-25 11:03:35 -05:00
Aditya Atluri 71ac51b965 correct cachesize to output correct value
Change-Id: I5db031591eb718b0c12e78a35e4b19349de9526d


[ROCm/clr commit: e28f65604b]
2016-10-25 09:33:45 -05:00
pensun b0a039cd5e Add workaround for hipStreamAddCallback function: call stream synchronize on host and then add execute the call back function
Change-Id: If361f8e053949904b19b9e09245d267f05e29f7b


[ROCm/clr commit: 7a0375854a]
2016-10-22 23:59:39 -05:00
Ben Sander 3dea23ed3b Fix P2P for async
Also improve HIP debug message: Add more DB_COPY1 messages. memcpyStr,
expand HIP_DB bitmask.


[ROCm/clr commit: 714968cdc6]
2016-10-20 10:02:23 -05:00
Rahul Garg 41f4571b62 Quickfix for HCSWAP-60, support for hipHostMallocPortable
Change-Id: I2a4fcacea9d916ef222324fc9e9d8191f6dc12d0


[ROCm/clr commit: b4702f3912]
2016-10-20 10:44:30 +05:30
Ben Sander e53561c960 Add HIP_WAIT_MODE env var.
Also weaken cases where hipSetDeviceFlags returns hipErrorInvalidValue.

Change-Id: I7f113338be6fe498eaf1ab40fd0fd6b23849bb5e


[ROCm/clr commit: d4b23da91f]
2016-10-18 22:27:16 -05:00
Ben Sander 7fdf4828ec Add hipDeviceSchedule* support to queue wait
Change-Id: Iffa7a356500b026f3737c3f5719ca9f62b10d855


[ROCm/clr commit: c7303d5924]
2016-10-18 22:27:16 -05:00
Ben Sander e9997ea992 Remove some TODO items
Change-Id: I7e9de2e43a8584f8dc9ee6d45c8ed00ca465f591


[ROCm/clr commit: 0787c41ac0]
2016-10-18 22:27:16 -05:00
Ben Sander f6641ba37f Fix event flag detection.
Change-Id: I0b0ba66c2339021320fe3d7760fdad1a0490a76b


[ROCm/clr commit: 214673a4fb]
2016-10-18 22:27:16 -05:00
Ben Sander 1fc5bf0643 Update docs for event, review event TODO.
Change-Id: Iec491f9f22df163f01c0af6639fcbe33c81acdcc


[ROCm/clr commit: 54b20dbe0d]
2016-10-18 22:27:16 -05:00
Ben Sander d6ffcdb9b0 Move some internal headers from "include/hip/" to src.
Change-Id: I7041bd5c803d9318979f4a7c1d658445c614691e


[ROCm/clr commit: 403cdf93c3]
2016-10-18 22:27:16 -05:00
Maneesh Gupta 2655c96ab9 src/*: Update copyright header
Change-Id: I455f5d0d12fe9cb39a3ba873bd22b4c25ed07cbf


[ROCm/clr commit: 88d6cad3fb]
2016-10-15 22:55:22 +05:30
Ben Sander fc7eefb5c8 Cleanup files from code review.
- Remove some stale code
- Update docs
- Correct define for __HIP_ARCH_HAS_GLOBAL_INT64_ATOMICS__

Change-Id: Ic5e3cdb8269b1c18f6d2693700b55e08c4d0080e


[ROCm/clr commit: aa3e04cf9a]
2016-10-15 11:51:20 -05:00
Ben Sander 57adbf2a17 Add code to use new HCC API accelerator_view::dispatch_hsa_kernel.
Disabed by default, can enable with USE_DISPATCH_HSA_KERNEL=1

Change-Id: I7a6ba76f2bada34952ed47f5335ce695fa2faea5


[ROCm/clr commit: dcadaadb24]
2016-10-14 23:46:29 -05:00
Maneesh Gupta acae18c4ac Remove incorrect executable-bit from non-executable files
Change-Id: Iacc434374721e01f7d75d0ab54bceabe0b337f54


[ROCm/clr commit: 2e93d2d5d2]
2016-10-14 12:53:13 +05:30
Aditya Atluri 2829a64391 changed hipLimit to hipLimit_t and data type to enum
Change-Id: I94f408cdcac4b0bb38801d58709b68e9630d44d0


[ROCm/clr commit: 34ab2a55ab]
2016-10-13 15:13:11 -05:00
Aditya Atluri adca18892a added compiler flag for polaris
Change-Id: Ib14c14c0618982ac7b48f5bc704c04b54ff40ed9


[ROCm/clr commit: 1970ea07f1]
2016-10-13 14:16:48 -05:00
Ben Sander 4c69e2c2f8 Fix HIP_USE_PRODUCT_NAME detection.
Change-Id: I6879ec3a11845bea66a18a9328bd4eaf54713420


[ROCm/clr commit: 45bc107ad0]
2016-10-13 11:51:53 -05:00
Ben Sander eea909d96f fix file-not-found detection
Change-Id: Ida84923ed18b3ebf8ffcfd6ee84d8a72f611ecd3


[ROCm/clr commit: 1de3c1e450]
2016-10-13 11:43:49 -05:00
pensun eecfd8e141 Add ifdef guard for the feature requires ROCm1.3
Change-Id: I7154517c47000c37fe5eb09a3c1cf2a9aacbe27c


[ROCm/clr commit: 0ac70e7184]
2016-10-13 10:57:31 -05:00
Aditya Atluri b82a22ff7a added constant memory property to 16KB
Change-Id: If067b4057c2e3fc0c26cf4604a1d4fac7f139b12


[ROCm/clr commit: e25a1e50b3]
2016-10-13 10:47:40 -05:00
pensun f638d13f7c Change to query device name using HSA_AMD_AGENT_INFO_PRODUCT_NAME;
Note: this commit depends on ROCR runtime in ROCm 1.3 release.

Change-Id: I90385ef6d11ee8a1e8adae1d3fdf21747347544c


[ROCm/clr commit: 44cc44011b]
2016-10-12 20:01:30 -05:00
Aditya Atluri cd32c9418e Added hipDeviceGetLimit api
1. hipDeviceGetLimit API for HCC path is added
2. Test for hipDeviceGetLimit API is added
3. The feature added only supports querying heap size
4. Corrected indents for malloc and free device functions
5. Removed redundant data structures
6. Added g_heap_malloc_size to store the heap size

Change-Id: If48d1b0ce9270e994f1c542cc283ddbb14746bbb


[ROCm/clr commit: e5325a1ab4]
2016-10-12 19:58:48 -05:00
Aditya Atluri 243855977b changed copyright to appropriate format
Change-Id: I81488eb21243fd9dc9106290c06afaf65152b2ab


[ROCm/clr commit: 8f3e6fc81e]
2016-10-12 19:14:17 -05:00
Aditya Atluri caa6a298e7 added malloc and free device functions
1. Added malloc and free device functions
2. Added test which check malloc and free functions
TODO: Need to add support for multiple device. Works only on one device (multi device support id NOT available).

Change-Id: Id11fc36463915d6ad46c264d5a20c8feb2d2c17c


[ROCm/clr commit: 2918ff273d]
2016-10-12 19:08:34 -05:00
Aditya Atluri 41077d99af added more changes to memcpytosymbol
1. Refactored code to use HCC internal APIs rather than HCC copy APIs
2. Added hipMemcpyToSymbolAsync
3. Added test for hipMemcpyToSymbolAsync
4. Added new error hipErrorInvalidSymbol

Change-Id: I0e359b2d0ff5d682bbccdf9c2923e16b35e39497


[ROCm/clr commit: 0bf811b875]
2016-10-11 13:29:46 -05:00