提交線圖

1075 次程式碼提交

作者 SHA1 備註 日期
Siu Chi Chan eebba4799c improve code object loading error message (#1889) 2020-02-28 16:47:40 +05:30
saleelk 40a28e767e Fix HIPRTC headers to export C style symbols (#1879) 2020-02-28 16:47:29 +05:30
Rahul Garg 6be7537cf9 Remove deprecated HIP markers (#1876) 2020-02-28 16:47:15 +05:30
Rahul Garg 1c794045e0 Add hipDrvOccupancyMaxActiveBlocksPerMultiprocessor[WithFlags] (#1854)
Equivalent to cuOccupancyMaxActiveBlocksPerMultiprocessor[WithFlags].
2020-02-28 16:46:55 +05:30
Alex Voicu cea5489f00 Address post-staging issues in #1809 (#1894)
Fixes SWDEV-223910 and SWDEV-223663
2020-02-27 16:21:12 +05:30
Alex Voicu 730f23829e Tweak synchronous memcpy implementation (#1809)
The existing one can have issues on certain systems, therefore this limits use of direct memcpy via largeBAR to sizes where it is unequivocally better.

Also addresses SWDEV-220030 and SWDEV-222237.
2020-02-18 20:50:27 +05:30
Rahul Garg ec84c16d75 Fix hipMemcpy3D (#1798)
Fixes #1790 and #1791. hipMemcpy3D still requires further refactoring for different input and output combinations.
2020-02-17 19:35:35 +05:30
Maneesh Gupta e085417370 Use deque instead of vector for code readers so that the iterators and references will be stable (#1851)
* Use deque instead of vector for code readers so that the iterators and references will be stable

* Fix compile error

* Assign the iterator

* Add multithreaded test

* Make threads a multiple of hardware concurrency

* Output on failure

* Add setDevice to try and initialize the context on cuda

* Create context for cuda

* Set context on each thread

* Reduce threads on cuda

* Skip test on cuda

* Try to initialize the primary context on cuda

* Push ctx to the stack as current

* Revert "Push ctx to the stack as current"

This reverts commit e8a7cc6957.

* Revert "Try to initialize the primary context on cuda"

This reverts commit 86cdb30195.

* updated test for nvidia path

* Add c++11 option for nvcc

Co-authored-by: satyanveshd <53337087+satyanveshd@users.noreply.github.com>
2020-02-15 09:51:24 +05:30
Jeff Daily fe47fce496 missing break statement in hipDeviceGetAttribute (#1865)
The break is missing for hipDeviceAttributeMaxTexture3DDepth.
2020-02-13 14:22:56 +05:30
Sarbojit2019 a03628335c [hip] Fix for bug introduced in #1770 when blockSize is non-power of 2 (#1864)
Fixes SWDEV-222161
2020-02-13 14:22:46 +05:30
Sarbojit2019 e334d3d6ec ihipEnablePeerAccess return error if peer is not accessible (#1858)
hipDeviceEnablePeerAccess returns success and adds peer into the list even if it is not accessible which creates problem in hipMalloc when it tries to share the ptr to peer device.
Proposed change is to check the access status before updating the peer list and update only when it can access the peer.
2020-02-13 14:22:11 +05:30
ansurya 888a7f2a90 Reduce GPU copying based on arch it runs on (#1751)
Implements SWDEV-213230.
2020-02-13 14:21:51 +05:30
Aryan Salmanpour dfa565d76f resolve merge conflict 2020-02-10 10:30:55 -05:00
Maneesh Gupta d032637934 Revert "Match Occupancy APIs syntax with CUDA (#1625)" (#1857)
Reverting this for now till we figure out how to avoid the build
breakage.

This reverts commit 262ad13dd5.
2020-02-10 10:45:28 +05:30
Paul 84d6eb985d Assign the iterator 2020-02-06 12:15:29 -06:00
Paul bb26e99c73 Fix compile error 2020-02-06 12:04:50 -06:00
Paul 1354a447e1 Use deque instead of vector for code readers so that the iterators and references will be stable 2020-02-06 11:56:17 -06:00
vsytch fa363ae721 Device texture functions should not normalize the sampled pixel (#1826)
* Device texture functions should not normalize the sampled pixel. This is already done by HW.
* Add support to use h/w capability for normalized float data convertion for driver API's

Co-authored-by: ansurya <50609411+ansurya@users.noreply.github.com>
2020-02-05 20:56:17 +05:30
saleelk 854d3103dd Implement __hipPushCallConfiguration/__hipPopCallConfiguration for hip_clang (#1845)
This is needed so that the right symbols are present if we want to use hip-clang with hip/hcc runtime
2020-02-04 19:37:57 +05:30
Siu Chi Chan 14e235378f Fix C-style hipLaunchKernel (#1835)
* Fix bug in LaunchKernel test
Instead of passing the address of the gpu buffer, pass the address
of the pointer that holds the address of the gpu buffer

* Fix hipLaunchKernel's kernarg buffer construction.
The hipLaunchKernel implementation should rely on ihipModuleLaunchKernel
to construct the kernarg buffer correctly based on kernel metadata.

* Fix a bug in get_functions where the Kernel_descriptor wasn't constructed with the correct kernarg layout information.

* Fix a bug in kernarg layout parsing dealing with kernel without any arg

* teach ihipModuleLaunchKernel to handle kernel without any arg

* Add a more interesting test
2020-02-04 19:37:16 +05:30
Sarbojit2019 6e62ea5ee3 Added overflow check in kernel launch (#1770) 2020-02-04 09:02:16 +05:30
Aryan Salmanpour 6db9b782be [HIP][HIPIFY] Add some missing flags for cooperative launch and occupancy APIs 2020-01-30 15:05:53 -05:00
Evgeny Mankov f1c70ea6ba Merge pull request #1700 from scchan/object_load_error_check
add error checking for code object loading
2020-01-30 21:31:03 +03:00
satyanveshd 262ad13dd5 Match Occupancy APIs syntax with CUDA (#1625)
* Match Occupancy APIs syntax with CUDA and fix tests using these APIs
2020-01-29 13:05:53 -08:00
vsytch 6da0c82b78 Add missing texturePitchAlignment member to the hipDeviceProp_t struct. (#1802)
* Add missing texturePitchAlignment member to the hipDeviceProp_t struct.

* Add missing hipDeviceAttributeTexturePitchAlignment enumerator to the hipDeviceAttribute_t enum.

* Initialize texturePitchAlignment to 256. This works for gfx9+, but is technically overaligned in most cases for pre-gfx9.

* Add the texturePitchAlignment property to the NVCC path.
2020-01-27 16:37:00 -08:00
Siu Chi Chan 8fc7cad90f Fix associate code object symbols with host allocation bug (#1799)
The current implementation skips this procedure for a given device
object when a global symbol is found in the cache.  This is incorrect:

 - There could be other undefined globals that have not been previously
encountered further down the list
 - If a symbol is found in the cache, it doesn't need to be pinned again
but it still need to be defined for the current executable

Added special case for the printf buffer symbol (already pinned by HCC)

The bug was exposed by running printf on different GPUs.
2020-01-24 16:22:49 +05:30
ansurya 688b6e6af0 Fix texture tests, always pass row pitch to HSA API for linear layout images (#1785)
=> New ROCr calculates pitch as per HSA specification and addrlib is used to check whether HW can support that configuration. Hence few texture tests are failing with HSA_EXT_STATUS_ERROR_IMAGE_PITCH_UNSUPPORTED.

=> Determine pitch for linear images and always pass rowpitch to HSA API's.
2020-01-16 08:54:30 +05:30
Jatin Chaudhary 0b211478dd Remove filesystem dependency in hipRTC (#1749)
Removing dependency on filesystem, so libstdc++fs is no longer required to link
2020-01-10 13:47:54 +05:30
Maneesh Gupta c091635f5a Revert PRs that break ROCm builds (#1781)
Fixes SWDEV-218626 and SWDEV-218629

Changes:
- Revert "`static inline` in a header, just like excess sugar in a diet, causes bloat (#1692)"
   This reverts commit cf526f5484.
- Revert "Fix rocFFT build failure (#1777)"
   This reverts commit cbd8f604ec.
2020-01-08 15:11:58 +05:30
Siu Chi Chan 26b50e1e1b Detect when an explicit printf buffer flush is required (#1766)
* Detect when an explicit printf buffer flush is required
in a device/stream synchronization function.

* hip_module.cpp: add missing hc_am.hpp header
2020-01-07 09:06:38 -08:00
satyanveshd 9b2f22f7aa hipMemcpy[To/From]Symbol(Async) fixes (#1774) 2020-01-07 08:11:53 +05:30
Rahul Garg 178d432b90 Fix nested designator warnings (#1768) 2020-01-06 12:33:34 +05:30
Evgeny Mankov ed43699a3a Merge pull request #1759 from emankov/master
[HIP] Unify hipError_t (Step 2)
2019-12-30 19:21:09 +03:00
Aryan Salmanpour 857052be1e [hip] refactoring cooperative kernel launch APIs (#1737)
This PR is a follow-up on PR# #1698 and it makes two more APIs (hipLaunchCooperativeKernel/hipLaunchCooperativeKernelMultiDevice) inline so that they can work correctly with lazy binding.
2019-12-30 12:42:17 +05:30
ansurya 651c7a8e27 Fix texture 3D & 2D layered with N components (#1746)
SWDEV-151670: Issue with 3D texture with 4 components
SWDEV-151671: Issue with 2D layered texture with 4 components

Fixed memcpy when memory is allocated with driver API's.

Github issues: #1755
Fixed 3D default case when array type is not set during memory allocation.
2019-12-30 12:41:42 +05:30
Evgeny Mankov 4aaa2336a8 [HIP] Clean-up deprecated HIP error codes
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle
2019-12-23 17:01:35 +03:00
saleelk 1ca75e5f6d Fix the return type of demangle function so that its compatible across ABIs (#1744) 2019-12-23 19:11:40 +05:30
Alex Voicu 150e690a3a Fix late-coming issues. (#1724)
Implementation for hipMemcpyWithStream.
2019-12-23 19:11:24 +05:30
Alex Voicu cf526f5484 static inline in a header, just like excess sugar in a diet, causes bloat (#1692) 2019-12-23 19:09:38 +05:30
Rahul Garg a369bd4418 Revert - Changes related to hipMemcpyWithStream (#1718)
Reverting #1673, #1697 and #1707.
Support for hipMemcpyWithStream and memcpy optimizations, will be brought in again once issues seen with these are resolved independently.
2019-12-06 09:51:53 +05:30
Rahul Garg 261a04580f Fix hipMemcpyWithStream (#1707)
* Fix hipMemcpyWithStream
* Add a dtest for the same.
2019-12-04 11:56:23 +05:30
Aryan Salmanpour 8eaea4d114 [hip] refactoring hipExtLaunchMultiKernelMultiDevice API (#1698)
[Background] it was found that if lazy linking used for a library that calls hipExtLaunchMultiKernelMultiDevice API then this API can get the wrong program_state object for looking up device kernels leading to a "No device code available" error in this API.

To fix this issue, the API was refactored to be inline and get and pass the correct program_state to an internal hip API to request a multi-device kernel launch.
2019-12-04 11:50:51 +05:30
Siu Chi Chan d33975d6e8 add error checking for code object loading 2019-11-28 14:00:48 -05:00
Jeff Daily 6df73e1f12 fix hipMempcy precondition, test for zero size first (#1697) 2019-11-25 19:03:03 -08:00
satyanveshd d4dde7a27d fixed directed tests fail when hcc bumped to 3.0 (#1678)
Handled the HCC version check appropriately as few of the directed tests (SWDEV-212161) were failing when hcc was bumped to 3.0.
2019-11-20 21:37:52 +05:30
Alex Voicu 022ac3cb0a General sync memcpy improvements. Add hipMemcpyWithStream (#1673)
* General sync memcpy improvements. Add `hipMemcpyWithStream`

* Update hip_memory.cpp
2019-11-20 21:36:37 +05:30
Rahul Garg 13c2a31d7e Update error codes for hipGetDevice for doxygen and move up null check (#1668)
* [docs] Update error codes for hipGetDevice

* Move up out ptr check
2019-11-20 21:35:27 +05:30
Sarbojit2019 8a3c36a424 Revert [HIP] Fixed hipStreamAddCallback (#1674)
This reverts commit 97fca3439d.
Addresses SWDEV#212675.
2019-11-20 11:55:46 +05:30
Jeff Daily dfaaf04611 hipStreamSynchronize can skip marker if stream is empty (#1667) 2019-11-19 09:42:43 -08:00
Sarbojit2019 7985ad218f Added null check in hipEventSynchronize (#1627)
* Added missing null check in hipEventSynchronize
* Minor correction in the Event API description
2019-11-18 12:18:55 +05:30