커밋 그래프

5078 커밋

작성자 SHA1 메시지 날짜
Michael LIAO 9c361faab3 [vdi] Fix calculation of MaxWaves
- Consider the case where `usedVGPRs` is zero.
- This fixes [SWDEV-228537](http://ontrack-internal.amd.com/browse/SWDEV-228537)

Change-Id: I8675311f5fe24fb59c5d45bada122afefb55b128


[ROCm/clr commit: 55d869df99]
2020-03-30 09:10:16 -04:00
Saleel Kudchadker eba4688437 Merge "Check event status before notify" into amd-master-next
[ROCm/clr commit: a5c287554e]
2020-03-27 20:19:40 -04:00
Vladislav Sytchenko d71bdef595 (SWDEV-228794)
Adjust the origin of the copy if the user passes a pointer that wasn't allocated by the runtime.

Change-Id: I0aeb20195ed730857a461a53f537626ec2573fd1


[ROCm/clr commit: 86c969fcea]
2020-03-27 16:33:16 -04:00
Vladislav Sytchenko 3f6db04b75 (SWDEV-228794)
Add hipMallocHost()

Change-Id: Ia3c7c5ca94b39fe30f3a51d1b60782d3472259ff


[ROCm/clr commit: 08729d0f43]
2020-03-27 15:57:48 -04:00
Vladislav Sytchenko 004dff62c4 (SWDEV-228782)
The only requirment from hipMallocPitch() is that the returned pitch is aligned to the HW image pitch alignment. There is no restriction on the size of the allocation, since the memory might not be used for images.

Change-Id: I97438e5fe4012ca4721b14b85f514dbac803c17c


[ROCm/clr commit: 111897dbea]
2020-03-27 15:52:17 -04:00
Tao Sang 0e3a7ed058 Merge "Support hipFuncGetAttributes with hip-clang+Hcc RT" into amd-master-next
[ROCm/clr commit: b2afe3c250]
2020-03-27 14:36:41 -04:00
Saleel Kudchadker 4abf9f5c38 Check event status before notify
Change-Id: I68f6bbbf236e49b859be2d5afbe0c8282fe15dd3


[ROCm/clr commit: fa7dea42b5]
2020-03-27 11:32:46 -07:00
Tao Sang 8218ede5e8 Support hipFuncGetAttributes with hip-clang+Hcc RT
Fix issues of missing kernel function symbols and missing argument list via
using __hipRegister* functions.
Then the following tests can pass,
directed_tests/runtimeApi/module/hipFuncGetAttributes
directed_tests/runtimeApi/module/hipExtLaunchMultiKernelMultiDevice
directed_tests/gcc/LaunchKernel

Change-Id: I52135b61e8283eb4f9f10f77895151e4e55418d9


[ROCm/clr commit: 4a113bb669]
2020-03-26 23:28:35 -04:00
Vladislav Sytchenko 96dad9615a Add support for formating hipExtent objects
Change-Id: Iea54a510e81a856c0c450305b3e5a7179ee48295


[ROCm/clr commit: 2b538b09e6]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko cfc508eef0 Add initial entry points for mipmapped array API
Change-Id: Icd59cc7323ddcb6773da6105260415a1e6f4cdcb


[ROCm/clr commit: 06bb183558]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko cf49aaa7fc Replace hip::TextureObject with __hip_texture
This avoids the use of extra casts when obtaining a texture object handle.

Change-Id: I42df22bdad0ab9ac6c33cb8b282dee65fe7cfd6e


[ROCm/clr commit: 6cfbe19160]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko df2f07ce18 Headers need to export C symbols for texture API
This also adds declarations of all the missing texture APIs.

hipTexRefSet*() functions need to take a textureReference as a ptr for type erasure to work. Runtime has been modified to accomodate this.

This change only applies to VDI.

Change-Id: Icf43cc5bd44dfc2c39084b7fe56d5a793bf7319f


[ROCm/clr commit: 428b56e411]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko e9eababfdd Enable initial sRGB support
Instead of using the sampler field force_degamma to perform sRGB->linear conversion during pixel sampling, we use an appropriate image format instead. The overhead of this is having to create an image view when creating a texture object from an array.

Change-Id: I1ca368c312c1fd4b6f784a3a1b35b5eeb28070ff


[ROCm/clr commit: 23211f05d6]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko 21587cb0fa Handle offsets for dptr <-> image copies
Change-Id: I7a4a56ee07a26a741d2aac35502446d248f720ad


[ROCm/clr commit: af1c5a0015]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko fe369a0e18 Correctly format hipResourceDesc objects
The struct consists of a union - only the active object should be read.

Change-Id: I1c40965b61518acd91a2dcbae92a015ac9be346a


[ROCm/clr commit: 1cacb5c9b7]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko b7f6419f6a Set textureObject to nullptr
This avoids dangling pointers for newly initiazlied textures

Change-Id: Ia444b91fe17fd756ed583ec595ae1febbdfbd034


[ROCm/clr commit: 3ab8ff87cc]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko d3786bc9b3 Modify formatting for textureReferences
We don't program the numChannels and format members (these are HCC specific), so printing these will only display garbage.

Change-Id: I83dc8be9a3cae2659c64f4594d07c05330d2dd14


[ROCm/clr commit: d662abaf55]
2020-03-26 14:45:20 -04:00
Vladislav Sytchenko c0a3cb04fe Correct typos in texture function declarations
Change-Id: I492995e984eda2e8a5e806c5d4c9c78da09ac483


[ROCm/clr commit: dc015d27c1]
2020-03-26 12:43:17 -04:00
Vladislav Sytchenko 3b75b5fd64 Allow creating texture from unaligned user ptr
All we have to do is align the ptr to HW requirments an if it's not zero, then return the offset to the user.

We currently don't have anywhere to store this offset, so hipGetTextureAlignmentOffset() will still always return 0.

Change-Id: If31998127d99a2a3222a026d88249519d6102505


[ROCm/clr commit: 9823ccf5b0]
2020-03-26 12:43:17 -04:00
Payam Ghafari 4fdd67e878 Merge "updated cmake to create libamdhip64 static file as well" into amd-master-next
[ROCm/clr commit: 857990e3f6]
2020-03-26 01:10:12 -04:00
jujiang d77658cbee SWDEV-226708-hipMemcpyPeerAsync failed-->Update test app to create stream on proper device
Change-Id: Ia9f51435ffb5a8fbbff39e363acecabb338bf34c


[ROCm/clr commit: 01272807ea]
2020-03-25 17:22:56 -04:00
Payam 45a328041b updated cmake to create libamdhip64 static file as well
Change-Id: I2054b9501cefa232abbf398524ab62450ab6805d


[ROCm/clr commit: b3d705f7b3]
2020-03-25 16:37:57 -04:00
Vladislav Sytchenko 0333a3c226 Disable failing tests for VDI
The hipExtModuleLaunchKernel and hipModuleLoadDataMultiThreaded tests keeps randomly failing on Jenkins.

Change-Id: I87e5d54fb7429c14ff1dcecb20e03a7816670fae


[ROCm/clr commit: 684cdd4a18]
2020-03-23 17:09:57 -04:00
Christophe Paquot ebb2480254 Merge "Enable VDI Occupancy test" into amd-master-next
[ROCm/clr commit: cf09b9ca1e]
2020-03-23 13:38:57 -04:00
Saleel Kudchadker f69dbb2438 Merge "Sync streams when freeing or destroying mem" into amd-master-next
[ROCm/clr commit: 436e5bb664]
2020-03-21 13:33:41 -04:00
Christophe Paquot f037cb7285 hipStreamAddCallback test seg faults
Change-Id: If419d2fad490d0ed50eb1315af809fc1deda1ce3
SWDEV-227875: Add a lock in streams to lock when the callback is call so we make sure things aren't moving forward in the stream


[ROCm/clr commit: 9f81498bb5]
2020-03-20 13:07:34 -07:00
Saleel Kudchadker adc574b2ed Sync streams when freeing or destroying mem
Change-Id: I6932f225a8b932bb2adbd5e37880f7e604496809


[ROCm/clr commit: 68df8efe90]
2020-03-20 10:53:23 -07:00
Christophe Paquot ee23705de2 Merge "hipStreamAddCallback test seg faults" into amd-master-next
[ROCm/clr commit: 446c8685e2]
2020-03-20 12:05:37 -04:00
kjayapra-amd 216aba5512 SWDEV-216213 - Lookup module functions from PlatformState::functions_.
Change-Id: I91dfe327f2ebdcf4c9b39ddd14d60aa0ce2fa9f4


[ROCm/clr commit: 334a1f8770]
2020-03-20 11:52:28 -04:00
Christophe Paquot 9130e160d8 hipStreamAddCallback test seg faults
Change-Id: I1f107fc8a5c586cd571f0280ed8716c5f89d25b7
SWDEV-227875: Need to add a dummy marker in case the stream is empty.


[ROCm/clr commit: 31df9b358d]
2020-03-19 11:11:59 -07:00
Sarbojit Sarkar aa49455725 Enable VDI Occupancy test
Change-Id: Ia89155ca909b9b7346584d19962fa0a94033bb17


[ROCm/clr commit: 6cf86b20c6]
2020-03-19 10:43:40 +05:30
Vladislav Sytchenko fd286a205b Add support for creating typed buffers
What Cuda refers to "linear texture memory" is the OpenCL equivalent of CL_MEM_OBJECT_IMAGE1D_BUFFER. For these types of allocations we should create a typed buffer instead of an image.

Currently there is no check in the texture fetch functions as to what kind of SRD is written into the texture object, so any kind of incorrect programming will cause the TA to hang. Fortunately for us, every one writes correct code :)

Change-Id: I80dab85a992f2c0754ebf303d40ac6b5e045c7c1


[ROCm/clr commit: 78f7954765]
2020-03-18 18:15:17 -04:00
Vladislav Sytchenko fadfaf9c80 Program texture flags in a better way
Not sure what I was thinking when initially implementing this...

Change-Id: Ib82f0f5a86683c08823dd4b59c98259d27151822


[ROCm/clr commit: ea7170d33c]
2020-03-18 18:15:09 -04:00
Vladislav Sytchenko b2e593fc62 Purge the use of ihip*impl() texture APIs
These are artifacts left from HIP-HCC and now are not needed by HIP-VDI.

Change-Id: Ib25a1081fe6146c8a89659395151e9d5bdaf7519


[ROCm/clr commit: 8083935855]
2020-03-18 18:15:01 -04:00
Vladislav Sytchenko 42f9702627 Rework the texture C++ API
Currently the texture C++ API is forwarded to the ihip*Impl() calls, which are not even a part of Cuda. These should be forwarded to their respective Cuda C APIs instead.

This change also fixes a bug with hipUnbindTexture() creating a dangling pointer.

Change-Id: Ifafc9d106855a11bec84a18ea214b3d89e39990d


[ROCm/clr commit: 53dd6b7a66]
2020-03-18 18:14:53 -04:00
Vladislav Sytchenko 5dc14caf87 Correctly infer the texture read mode
Currently we extract the read mode from the ihip*impl() calls, which is not correct. We should be getting it from the texture itself directly.

Change-Id: Idf6449fefa395a887138a252e8ea937a6897e600


[ROCm/clr commit: 42b149fe3c]
2020-03-18 18:14:45 -04:00
Vladislav Sytchenko 6f93cfe58e Correct the definition of ...
hipBindTextureToMipmappedArray()

The texture reference needs to be passed as a constant pointer.

Change-Id: I6d31204c7f2325a5bc1e8b6e089fd9f8d21d1d78


[ROCm/clr commit: 9731b61a60]
2020-03-18 18:14:36 -04:00
Vladislav Sytchenko 39c78589e2 Correct the declaration of hipBindTexture2D()
The texture reference needs to be passed as a constant pointer.

Change-Id: Idde461f0f328ac87ce677b6bab3203161b514cbf


[ROCm/clr commit: 7a81e55de7]
2020-03-18 18:08:23 -04:00
Vladislav Sytchenko 77867d5700 Correct the declaration of hipBindTextureToArray()
The texture reference needs to be passed as a constant pointer.

Change-Id: Iff171626536071fb2020cfff7132ec930577b1b9


[ROCm/clr commit: 7765792a42]
2020-03-18 18:08:13 -04:00
Vladislav Sytchenko 900f2a76c0 Correct the declaration of hipBindTexture()
The texture reference needs to be passed as a constant pointer.

Change-Id: I36ca0bddaba30becfc2ce70dd9e5b7db66c57f27


[ROCm/clr commit: 600b1006c8]
2020-03-18 18:08:01 -04:00
Vladislav Sytchenko 415070fbfc Add missing mipmap API entries
Introduce hipFreeMipmappedArray(), hipMallocMipmappedArray() and hipGetMipmappedArrayLevel() APIs.

Change-Id: I878228c79fa1c54536c17d6baf45f83d51d2b1c7


[ROCm/clr commit: 6ff0d15a62]
2020-03-18 18:07:45 -04:00
Vladislav Sytchenko 762d6f3212 Don't hardcode the texture read mode
The readmode needs to be inferred from the template arguments.

Change-Id: I067037035e2492a24eac47e16d4015f879be0ea7


[ROCm/clr commit: b4b05e2ab0]
2020-03-18 18:07:33 -04:00
Vladislav Sytchenko b255d351b0 Merge "Start the lifetime of the texture reference" into amd-master-next
[ROCm/clr commit: da5f852cdd]
2020-03-18 18:07:24 -04:00
Jiabao Xie 7c5db60141 Merge "Cleaned include statements and deleted unnecessary operator overloads" into amd-master-next
[ROCm/clr commit: bbfba3bae1]
2020-03-18 14:37:19 -04:00
Vladislav Sytchenko 84ba26979a Start the lifetime of the texture reference
reinterpret_cast<> doesn't create an object, so the texref is actually unitiliazed. This may lead to garbage data in some of its struct members.

Initialize it by performing a placement new. The constructer should set all of its members to default values. There's no way currently to extract the channel type, so use single channel char for now.

Change-Id: I41b305a75bb3f30130324de785099f55b3e130c7


[ROCm/clr commit: b4a0008b36]
2020-03-18 12:30:11 -04:00
Vladislav Sytchenko ebd1dec272 Add constraints to texture indirect functions
Similar to the previous patch, this change adds type constraints to texture indirect functions. Since we don't have to deduce the return type for these, we simply just have to check if the user provided a valid channel type.

Change-Id: Ia094bd6126e01df2ea90902c9aa59cb6cfe85773


[ROCm/clr commit: 8667e21b25]
2020-03-18 12:24:40 -04:00
Vladislav Sytchenko 8b211978a7 Add constraints to texture fetch functions
When sampling a pixel the hw always returns a float4. The type in the texture reference controls the bitcast that we perform before returning the sampled pixel. Creating a texture with an unsupported will lead to potential UB.

This change makes it so that it's only possible to use textures with a type that makes sense. Using something like texture<int, hipTextureType1D, hipReadModeNormalizedFloat> will now lead to a compilation error with a message "Invalid channel type!".

Change-Id: I7fde44cb1d4b9737e0c48c28cb59c018c59ccaa2


[ROCm/clr commit: a994da8af6]
2020-03-18 12:24:40 -04:00
Sarbojit Sarkar bfc7d1c663 Merge "[hip-vdi]Fix for TF build failure [SWDEV-225827]" into amd-master-next
[ROCm/clr commit: 4cd02f20cf]
2020-03-18 11:52:46 -04:00
Jatin Chaudhary b77ba57b22 Merge "Enable saxpy Test" into amd-master-next
[ROCm/clr commit: d32802a176]
2020-03-18 06:32:05 -04:00
Sarbojit Sarkar 7cac7ff3b5 [hip-vdi]Fix for TF build failure [SWDEV-225827]
Change-Id: I8478779bef92bad8353b8d066b28c220bb59b98d


[ROCm/clr commit: 957caff8b4]
2020-03-17 22:52:01 -04:00