Commit Graph

4901 Commits

Author SHA1 Message Date
Vladislav Sytchenko d4bb8d522d Reeanble texture tests for VDI
Enable hipBindTex2DPitch and hipBindTexRef1DFetch

Change-Id: I36a3252e25d1ed844967ec117e1f1951004cba11


[ROCm/clr commit: b1d2e581ff]
2020-02-24 15:24:00 -05:00
Vladislav Sytchenko b48d6279ef HIP-VDI texture rework
The current texture implementation is based off the one for HIP-HCC. There's a lot of problems with it - only creating images from buffers, hard coding logic and ignoring user parameters. This leads to a whole lot of UB even with simple examples (as seen with RedShift's code).

This CL is aimed to bring the HIP-VDI texture implementation closer to what is described by Cuda.

hipMemcpyAtoA() - image to image copy.
hipMemcpyHtoA()/hipMemcpyDtoA() - buffer to image copy.
hipMemcpyAtoH()/hipMemcpyAtoD() - image to buffer copy.

hipArrayCreate()/hipArray3DCreate()/hipMallocArray()/hipMalloc3DArray() - creates 1D/2D/3D/1D Array/2D Array images.
hipCreateTextureObject() - creates sampler, (optional) creates 1D/2D image from buffer, (optional) creates image views.
hipBindTexture() - creates 1D image from buffer (should create a typed buffer, however this is not compatible with HIP-HCC).
hipBindTexture2D() - creates 2D image form buffer.
hipBindTextureToArray() - creates image view.
hipTexRefSetAddress() - creates 1D image from buffer (should create a typed buffer, however this is not compatible with HIP-HCC).
hipTexRefSetAddress2D() - creates 2D image from buffer.
hipTexRefSetArray() - creates image view.

There are still a lot of  TODOs in the code, here's a few important ones:
1. VDI doesn't support a lot of sampler flags.
2. VDI doesn't support device to image 2D/3D copy.
3. Mipmaps implementation is incomplete.
4. Image view implementation is incomplete.

Change-Id: Ia374ee27aa14f76451fee7667495036f4419a487


[ROCm/clr commit: f71817a342]
2020-02-24 15:23:45 -05:00
Payam Ghafari 696479d088 Merge "export hip::host and hip::device" into amd-master-next
[ROCm/clr commit: 9518af6083]
2020-02-24 13:29:01 -05:00
Payam d171c9c2d1 export hip::host and hip::device
Change-Id: If1427a180f91d3f8bae203d956f21cd69345c060


[ROCm/clr commit: e5c8903925]
2020-02-21 19:58:42 -05:00
Vladislav Sytchenko f8eed3159b Update hipGetErroName() to match hipError_t
Change-Id: I8f7fe0cca01ddec5d6333ba6e876128276323be9


[ROCm/clr commit: 16ffc6fe3e]
2020-02-21 18:31:27 -05:00
Vladislav Sytchenko d356f64e60 Fix Windows build
MSVC unlike gcc doesn't add colons for you.

Change-Id: I06d81a9a9b346065d0452fe7117ab82144a06f74


[ROCm/clr commit: d934d731a0]
2020-02-21 14:37:41 -05:00
Vladislav Sytchenko e0ac3b427d Report the HW requirments for pitch alignment
Change-Id: Iaaa9d597dff57cfad5d07d931f881aba1a5f98f1


[ROCm/clr commit: 8be685e7b9]
2020-02-21 11:09:47 -05:00
Vladislav Sytchenko 779a4a1b48 Disable hip{Create/Destroy}SurfaceObject
The current implementation of surd2D{read/write} directly addresses into
the image buffer via the hipArray::data ptr. This is incorrect to do
since we don't know the layout of the image. Also with VDI we won't have
access to the underlying image buffer.

Disable the surface api untill the device functions are switched to
using __ockl_image_{load/store}().

Change-Id: I19a33680176812d5aad3660e9045812061a1c443


[ROCm/clr commit: 8c8d963c65]
2020-02-21 11:09:28 -05:00
Tao Sang 10021089af Add __hip_pinned_shadow__ for texture
Add missing __hip_pinned_shadow__ for texture in tex2d_kernel test.

Change-Id: Iefc96084fec8f84a1d1bb979998ffb95b4011f0b


[ROCm/clr commit: ba494c64cf]
2020-02-20 20:01:28 -05:00
Tao Sang 9938d897ee Merge "Make __gnu_h2f_ieee and __gnu_f2h_ieee visible" into amd-master-next
[ROCm/clr commit: 012a322292]
2020-02-20 16:00:18 -05:00
Tao Sang 5ba6e9164a Make __gnu_h2f_ieee and __gnu_f2h_ieee visible
Make __gnu_h2f_ieee and __gnu_f2h_ieee visible so that hipTestHalf
test can succeed in Clang compiler + Hcc RT.

Change-Id: I5f7d5db19e559b3b66356f0170a8dbc1e5505f3e


[ROCm/clr commit: 314766b4c2]
2020-02-20 14:09:53 -05:00
Karthik Jayaprakash e7af38c1cf SWDEV-223674 - Return hipErrorNoBinaryForGpu in case particular binary is not found in clang offload bundler.
Change-Id: Iaa08fcdc8ecb719edd9f81e4a1456ea642f362f4


[ROCm/clr commit: 4b2ff6ec91]
2020-02-19 20:01:36 -05:00
Christophe Paquot fbef5e7d2a SWDEV-223262
hipMemcpyWithStream is supposed to be synchronous.

Change-Id: Ie44e37ecc9246e26a6b315c01e88a279f9e42fd7


[ROCm/clr commit: 13bf30569e]
2020-02-19 14:08:12 -08:00
Christophe Paquot 1f32dbad00 Merge "HIP-HCC + Clang fix failing texture tests(SWDEV-223622)" into amd-master-next
[ROCm/clr commit: 644dad178c]
2020-02-19 14:57:14 -05:00
Christophe Paquot af6e0f6c7c Merge "Removing gcc test for clang" into amd-master-next
[ROCm/clr commit: be1dc1d217]
2020-02-19 14:56:03 -05:00
Christophe Paquot a4c9292ca7 Merge "Adding a break at right spot to fix a bug in tests which got exposed with clang usage" into amd-master-next
[ROCm/clr commit: 27d79601f0]
2020-02-19 14:54:15 -05:00
Jatin Chaudhary 1b17cc297a Removing gcc test for clang
Change-Id: Iccf00221a07be920683207daa9ed0e0949259623


[ROCm/clr commit: e1024a249a]
2020-02-19 11:09:47 -05:00
agodavar 37745e6f1b HIP-HCC + Clang fix failing texture tests(SWDEV-223622)
Change-Id: I1c0a7059c6bba1ea2e39dc6634b32d006c07d1f5


[ROCm/clr commit: 63c1d28a4b]
2020-02-19 07:03:57 -05:00
Payam 569fe9f8e4 Removed Static lib for hip target
Change-Id: Iea7fc3f26f5d99df622e69aab3898f7bc931fc58


[ROCm/clr commit: 1079679afa]
2020-02-19 03:51:55 -05:00
Payam Ghafari 98be10e430 Merge "removing static lib for hip target" into amd-master-next
[ROCm/clr commit: e115d20af0]
2020-02-18 19:16:31 -05:00
Tao Sang 673b902832 Merge "Temporarily comment out Hcc-specific APIs for CLang compiler" into amd-master-next
[ROCm/clr commit: 40d0884a03]
2020-02-18 18:50:05 -05:00
Evgeny Shcherbakov ae59215c8b Merge "adding 'hipHccModuleLaunchKernel' and 'hipExtModuleLaunchKernel'" into amd-master-next
[ROCm/clr commit: 9c4e11f217]
2020-02-18 18:10:22 -05:00
Tao Sang d2c8aafb61 Merge "Fix bug of hip/samples/2_Cookbook/7_streams" into amd-master-next
[ROCm/clr commit: e34a907b8b]
2020-02-18 17:41:34 -05:00
Christophe Paquot dad62d78c0 Introducing hip::Device which wraps around amd::Context and deviceId
Change-Id: Ie35a6edb65c001b35eb9f5d2af26e765dc41c00e


[ROCm/clr commit: b4ad4262cc]
2020-02-18 17:18:56 -05:00
Payam cc7722683f removing static lib for hip target
Change-Id: I401f428469d5c1c03278f20c3c24c69636876f7c


[ROCm/clr commit: a7a60a8322]
2020-02-18 16:46:36 -05:00
Tao Sang 21abc838ef Fix bug of hip/samples/2_Cookbook/7_streams
Initialize Kernel_descriptor with matched function name.

Change-Id: I26911d6bc9b2beae186a9e6f9441ce408521bce9


[ROCm/clr commit: 47d3276177]
2020-02-18 13:53:21 -05:00
Karthik Jayaprakash 8ad9be80bd SWDEV-223394 - Pass module info from hipModuleGetTexRef to internal Platformstate:: functions.
Change-Id: I7d1ba3f940f595c3fca74a57fa20f484c52d4741


[ROCm/clr commit: e066cc6f60]
2020-02-18 11:23:03 -05:00
Payam Ghafari 6cb9ca6157 Merge "updated package generation and removed hiphcc_static as a target for hip-vdi" into amd-master-next
[ROCm/clr commit: f7300f5cbe]
2020-02-18 10:47:47 -05:00
Jatin Chaudhary c60714754c Adding a break at right spot to fix a bug in tests which got exposed with clang usage
Change-Id: Ibf197f0108eec0bc4b87df8672d24e394a03d1b3


[ROCm/clr commit: 96a5d45b0e]
2020-02-18 17:23:45 +05:30
Tao Sang 0f409bb67e Merge "Fix bug of hip/samples/0_Intro/hcc_dialects/vadd_hip" into amd-master-next
[ROCm/clr commit: ffb8689462]
2020-02-17 22:01:12 -05:00
Christophe Paquot c1e679491a Don't create a marker for start event in hipModuleLaunchKernel
And also don't optimize the case where start==stop event to compute
elapsed time since the command can be a NDRange one.
HIP directed test will need to be fixed for that.

Change-Id: I64fadd6ab8ab1a490e7a2b7165a591df5a5cf3a2


[ROCm/clr commit: 1f5ae789bb]
2020-02-17 14:16:31 -08:00
Evgeny 2ebf4994d7 adding 'hipHccModuleLaunchKernel' and 'hipExtModuleLaunchKernel'
Change-Id: Id9990ed3041b82956872a088ff019ade69d40afb


[ROCm/clr commit: 45b1673e26]
2020-02-17 16:06:24 -06:00
Payam Ghafari 67b65d785d Merge "updated hipcc to include HSA path for clang builds as well" into amd-master-next
[ROCm/clr commit: 52e6e35bf4]
2020-02-17 02:01:37 -05:00
Tao Sang 0292fd9991 Temporarily comment out Hcc-specific APIs for CLang compiler
Temporarily comment out Hcc-specific template functions
hipExtLaunchKernelGGL and hipOccupancyMaxPotentialBlockSize for CLang
compiler so that all test cases under hip/samples can be built
successfully for Clang + Hip/Hcc runtime.

Change-Id: Iafc761257be4a7b34eafa6759a01f369570cd6ce


[ROCm/clr commit: 15b91e9f1e]
2020-02-16 22:26:47 -05:00
Tao Sang 690db691bb Fix bug of hip/samples/0_Intro/hcc_dialects/vadd_hip
For hipLaunchKernelGGL(), hmod->kernargs is empty, thus we need
insert hmod->kernargs[name_str] which is empty.

Change-Id: I95f818d0525da84452e66c5778f0648a643843c7


[ROCm/clr commit: 05785772e3]
2020-02-16 17:58:04 -05:00
Payam 55c8ccf2be updated package generation and removed hiphcc_static as a target for hip-vdi
Change-Id: I0067dd6341f47a212cb02b8d43d3ea01644c2391


[ROCm/clr commit: 2f9cb366f2]
2020-02-16 03:00:59 -05:00
Tao Sang 53e62f704d Support defaultDriver test with Clang+Hcc Runtime
Fix the following issues:
1.Ignore hidden arguments of kernel functions.
2.Look up both origial function name and function name with .kd postfix
when argments are retrived from module.
3.Addition, fix compiling issue of LaunchKernel test app.

Change-Id: I9400943f2f02433cb4409b19c0cac3626c2bc454


[ROCm/clr commit: eb8c4d1ce2]
2020-02-15 19:29:13 -05:00
Payam ca7c148089 removing oocupancy tests from hip-vdi for now
Change-Id: I06e966d07021af87fa2c195e4bbaf6bcc336658d


[ROCm/clr commit: 9bdc203a99]
2020-02-13 21:40:06 -05:00
Christophe Paquot b486a20a88 Merge "hipLaunchByPtr and hipLaunchKernel deviceId potential issue" into amd-master-next
[ROCm/clr commit: d6b9b323b8]
2020-02-13 18:49:06 -05:00
Payam b6f311794e updated hipcc to include HSA path for clang builds as well
Change-Id: Icaaa68fdbe79fb16e4e9fedd420460f1479d7fe0


[ROCm/clr commit: 87cd9451f2]
2020-02-13 16:48:24 -05:00
Christophe Paquot 06ab4fdf36 SWDEV-222949 - hipEventRecord
hipEventRecord should always create a new marker so it can track work going on at the time the API is called.

Change-Id: I10ce98044be894fbacab8798441ec3d3f2753b93


[ROCm/clr commit: eb132ccef8]
2020-02-13 15:01:49 -05:00
Christophe Paquot 39a1cff6e0 hipLaunchByPtr and hipLaunchKernel deviceId potential issue
Those APIs should look at the device associated with the stream first.
If that stream is null then get the current device ID.

Change-Id: Iedde1d1644818ba64f128b988f0bd9674f5b8ad6


[ROCm/clr commit: 8f5a70a150]
2020-02-13 12:00:30 -08:00
Tao Sang 1da44b1e01 Merge "Support app(hcc compiled/Hip-Vdi runtime linked)" into amd-master-next
[ROCm/clr commit: b733a1bc5c]
2020-02-13 14:25:30 -05:00
Aaron Enye Shi 468959c409 HIP-VDI fix CPACK packaging dependencies
Change-Id: I64d803499dd8b2fc80b1320f71115ebaf019a9e7


[ROCm/clr commit: 0bab88c22e]
2020-02-13 10:02:49 -05:00
Tao Sang 94a70b3447 Support app(hcc compiled/Hip-Vdi runtime linked)
The issues of the following functions have been fixed.
hipModuleLoad: Make Hip-Vdi runtime able to read code object module
generated by Hcc compiler.
hipLaunchKernel: Use introspect method to find function if it cannot
be found from platform state instance.

Change-Id: Id740e5a96614ec6a0b6c704f8f74600bfdc4983e


[ROCm/clr commit: 62ef029288]
2020-02-12 16:42:54 -05:00
Laurent Morichetti 6982f99f6e Remove cl_icd.cpp from the build.
We should be using the temporary fixme.cpp instead.

Change-Id: I7e7a04bb518f56584c41bdb46a9192bde1f70060


[ROCm/clr commit: 64d9e658a9]
2020-02-12 10:46:33 -08:00
Mark Searles 12449b9f9f Change 2068543 by michliao@hliao-dev-11-hip-workspace on 2020/02/10 10:04:50
SWDEV-125823 - Fix the build issue due to API interface change.

        - PR#1625 is temporarily reverted. Revert CL#2064519 correspondingly.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/hip/hip_platform.cpp#61 edit

Change-Id: I519b11532d7e6fe8cbee41804155cc9ca64e596c


[ROCm/clr commit: 0c6b34845f]
2020-02-12 00:22:48 -08:00
Laurent Morichetti abe27cad61 Merge branch 'master' into amd-master-next
Change-Id: Ibb7775e7acd263d2ece40a241517bbd15976fdd4


[ROCm/clr commit: 9b3e214952]
2020-02-12 00:14:07 -08:00
Jatin Chaudhary 4436f22326 Revert "Sync hip-targets*.cmake in package with install changes (#1831)" (#1860)
Fixes SWDEV-222155 & SWDEV-222158
This reverts commit e0b4ba96e8.

[ROCm/clr commit: 18a64fe8d4]
2020-02-11 11:56:57 +05:30
Christophe Paquot f6bc161d4a SWDEV-220533 - HostMapped should use fine grained.
Change-Id: I4ad2064e8e5ea1cd4ed7df143c778ccb685c4f22


[ROCm/clr commit: 0c6efd9678]
2020-02-10 16:53:06 -05:00