|
8ba71e66
|
2024-06-26T13:37:42
|
|
CL/Vulkan: Update few device caps based on VK caps
-1- Device fence caps flags
The spec requires below fence capabilities to be preset
- CL_DEVICE_ATOMIC_ORDER_RELAXED
- CL_DEVICE_ATOMIC_ORDER_ACQ_REL
- CL_DEVICE_ATOMIC_SCOPE_WORK_GROUP
-2- Add missing param names in program query
The params CL_PROGRAM_SCOPE_GLOBAL_{CTORS,DTORS}_PRESENT are missing
from program query. Adding them.
-3- Set max sampler and image buffer to spec min
Set the max samplers and image buffer size to minimum for now. These
will be changed once the image support is complete.
Bug: angleproject:366412386
Change-Id: Iee2c11319c6c5b2f3a1565e06f1f09c5f770a07c
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6004685
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
7483897c
|
2024-10-01T17:23:37
|
|
CL/Vulkan: Add numeric versioning for extensions
With extended versioning support, the version number of extensions need
to be reported as well. Using the numeric versioning mode for adding
supported extensions.
Also, fix the version number for cl_khr_icd and
cl_khr_extended_versioning extensions.
Bug: angleproject:372085147
Change-Id: I7bf3157227f9579c69c351a63a88b92be7f07d71
Signed-off-by: Gowtham Tammana <g.tammana@samsung.com>
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5916159
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a21b7ad0
|
2024-04-24T02:11:42
|
|
CL/Vulkan: Add skeleton for CLSamplerVk
* It is setup to be a wrapper for the SamplerHelper interface
Bug: angleproject:42266936
Change-Id: Iac7e80c4d5262687d98a8188a60a24a9be190dc2
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5801184
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7c99c225
|
2024-04-03T01:48:57
|
|
CL/Vulkan: Implement clEnqueue APIs involving images
Review enables the functionality of:
- clEnqueueReadImage
- clEnqueueWriteImage
- clEnqueueCopyImage
- clEnqueueMapImage
- clEnqueueCopyImageToBuffer
- clEnqueueCopyBufferToImage
Tests-Passing: OCLCTS.test_basic imagecopy, imagerandomcopy,
OCLCTS.test_profiling copy_array_to_image
Bug: angleproject:42266936
Change-Id: Ifd4ccd0a9e16bac11dbff74d4634d9ca4c5b4284
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5796530
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Rafay Khurram <r.khurram@samsung.com>
|
|
8eecc8e9
|
2024-05-30T13:30:08
|
|
CL/Vulkan: Update CL_DEVICE parameters
Update device fields for the following:
- Change address bits from 64 -> 32
- Report OpenCL C version to 1.2
- Change non-uniform wgs support to false
We either did not support nor take full advantage
of these features, thus leading to the omission
or change/downgrade.
Bug: angleproject:366412386
Change-Id: Ia6b361d0285d5a1a88013a49fd747a3d03db9655
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5860307
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
d193d51b
|
2024-06-17T22:46:08
|
|
Replace issue ids post migration to new issue tracker
This change replaces anglebug.com/NNNN links.
Bug: None
Change-Id: I8ac3aec8d2a8a844b3d7b99fc0a6b2be8da31761
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5637912
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
7a78c2c9
|
2024-04-03T14:32:35
|
|
CL/VK: Add helper to select LWS
In the case where user passes NULL for LWS,
the runtime has the responsibility to select
an appropriate LWS for user.
Bug: angleproject:8631
Change-Id: I89048c57880a5a4f18d4ef46340b73338cee933e
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5421573
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
914fe61b
|
2024-03-15T13:20:49
|
|
Vulkan: Rename RendererVk.* to vk_renderer.*
Done in a separate CL from the move to namespace vk to avoid possible
rebase-time confusion with the file name change.
Bug: angleproject:8564
Change-Id: Ibab79029834b88514d4466a7a4c076b1352bc450
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5370107
Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
|
|
60aaf4a0
|
2024-03-14T12:58:56
|
|
Vulkan: Move renderer to namespace vk
This class is agnostic of EGL. This change moves it to namespace vk for
use with the OpenCL implementation
Bug: angleproject:8564
Change-Id: I57f7807d6af8b3d5d7f8efbaf8b5d537a930f881
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5371324
Reviewed-by: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
c673c837
|
2024-01-08T19:05:38
|
|
OpenCL/Vulkan: Initial support for platform/device
Introduce OpenCL platform and device object creation
for Vulkan backend in ANGLE.
Bug: angleproject:8498
Change-Id: I5af9a23ed343648115bd9f0e81cd7a53080e2982
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5233365
Commit-Queue: Austin Annestrand <a.annestrand@samsung.com>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
|
|
66d29149
|
2023-10-16T12:43:43
|
|
OpenCL: Add scaffolding to renderer/vulkan code
Start off ANCLE (OpenCL on ANGLE) with backend scaffolding code with
placeholder API error returns until they are later implemented.
Bug: angleproject:8377
Change-Id: I223d3482cce097ccb298e121fc03ec416e8958fd
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/4950556
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
a9512a9f
|
2023-11-29T14:56:29
|
|
OpenCL: Replace error-return APIs to use angle::Result
The motivation of converting existing CL APIs using
"cl_int errorCode" to now use "angle::Result" is for better
interop with internal ANGLE plumbing/abstractions.
To facilitate this, we now make use of a TLS errorCode
object that we set internally and read from entrypoint/stubs
layer so that we can propagate back to user.
Bug: angleproject:8435
Change-Id: I7c2a786019c33c56649be4b6e8b61bc318497bb1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/5075772
Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Reviewed-by: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
|
|
baca10b7
|
2021-05-29T16:26:57
|
|
CL: Remove object cache and fix multi-threading
All CL front end objects used to be cached to be able to determine
if an object has been created by the front end to check its validity.
The validity is now checked with the existence of an intrinsic value
(the dispatch table pointer), which is consistent with the patterns
found in Mesa and clvk (though clvk uses a magic value).
This allows the removal of all cached objects.
The cached objects were stored with std::unique_ptr. These are now
gone and all remaining pointers are now custom intrinsic reference
count pointers.
Also remove global lock which causes deadlocks, e.g. when CL API
is called from a separate thread to unlock a blocking call with
a user event. Most of the front end is constant and already
thread-safe. The ref count is also thread-safe now (atomic).
A few remaining locks will follow.
Without the global lock it was now possible to make the API
reentrant, and to remove the workaround with the Khronos ICD
loader to skip ANGLE's OpenCL library.
Bug: angleproject:6001
Change-Id: I7d3b52db9011a02cb7ea9ebdeb6e22c4c702ef5b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2927395
Commit-Queue: John Plate <jplate@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
51ab3dc3
|
2021-05-25T16:54:11
|
|
CL: Improve validation readablity
Improve validation readablity by introducing a bit field class
and by changing how the CL error code is returned.
Bug: angleproject:6001
Change-Id: I51deb745454e5281de725481edef85eb30be28c7
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2919690
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: John Plate <jplate@google.com>
|
|
10a8182c
|
2021-05-19T21:00:05
|
|
CL: Fix querying default device if non exists
Bug: angleproject:5992
Change-Id: Ie43f905fbb9cf41b0f6f88b2db27ebe9de9c37e8
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2906993
Commit-Queue: John Plate <jplate@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
c2fd3388
|
2021-05-15T22:28:27
|
|
CL: Add front end object references to back end objects
Add front end object references to back end objects, which requires
a significant amount of refactoring, because the back end objects
have to be constructed during the construction of the front end
objects, so that the references can be passed to the back end objects,
which then can be passed to the front end member initialization.
That would have been easier with inheritance than with PImpl.
Bug: angleproject:5904
Change-Id: Ib58e6a698e76987bdd63cd8088f923424d6c622b
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2897249
Commit-Queue: John Plate <jplate@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|
|
48b835cf
|
2021-05-09T22:47:00
|
|
CL: Implement context for front end and passthrough
Bug: angleproject:5904
Change-Id: I23b764bba87be3a51a1b5b44b13968fc572efde9
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2883773
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Commit-Queue: John Plate <jplate@google.com>
|
|
b300dc52
|
2021-05-09T00:35:24
|
|
CL: device partitioning for front end and passthrough
Partitioning is the creation of sub-devices. Also add reference
counting for CL objects, which is needed now for sub-devices.
Also fix CL print format strings, since cl_ulong is actually
always 64 bit and not unsigned long.
Bug: angleproject:5904
Change-Id: I006699fad2f953ce312bca87c9b6362b5d77a18a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2880665
Commit-Queue: John Plate <jplate@google.com>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
|
|
e369a282
|
2021-05-08T14:08:28
|
|
Implement CL device object for front end and passthrough
Bug: angleproject:5904
Change-Id: I17f6d10ed59c62fe9126d29b7de2c127c5d0039a
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2880662
Reviewed-by: Cody Northrop <cnorthrop@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: John Plate <jplate@google.com>
|
|
16a919b1
|
2021-04-27T11:36:11
|
|
Add stubs for CL platform layer back ends
Bug: angleproject:5904
Change-Id: If23c7f76013a17c3c67c13194566438035beb3d1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2853582
Commit-Queue: John Plate <jplate@google.com>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Cody Northrop <cnorthrop@google.com>
|