Giuseppe Bilotta [Fri, 20 Nov 2020 11:22:42 +0000 (12:22 +0100)]
cl_khr_device_uuid support
Giuseppe Bilotta [Fri, 20 Nov 2020 10:35:12 +0000 (11:35 +0100)]
Support for cl_ext_cxx_for_opencl
Giuseppe Bilotta [Fri, 20 Nov 2020 10:27:11 +0000 (11:27 +0100)]
Rearrange some queries based on dependencies
Giuseppe Bilotta [Fri, 20 Nov 2020 10:20:31 +0000 (11:20 +0100)]
Update man page
Giuseppe Bilotta [Fri, 20 Nov 2020 10:12:52 +0000 (11:12 +0100)]
Support cl_khr_extended_versioning as platform extension
Giuseppe Bilotta [Fri, 20 Nov 2020 10:08:44 +0000 (11:08 +0100)]
Support cl_khr_extended_versioning as device extension
Giuseppe Bilotta [Fri, 20 Nov 2020 10:09:56 +0000 (11:09 +0100)]
Typos in comments
Giuseppe Bilotta [Fri, 20 Nov 2020 06:41:24 +0000 (07:41 +0100)]
CL_DEVICE_LATEST_CONFORMANCE_VERSION_PASSED
Giuseppe Bilotta [Fri, 20 Nov 2020 06:30:01 +0000 (07:30 +0100)]
Device enqueue support is a bitfield, not a bool
It has also been renamed from CL_DEVICE_DEVICE_ENQUEUE_SUPPORT to
CL_DEVICE_DEVICE_ENQUEUE_CAPABILITIES.
Giuseppe Bilotta [Fri, 20 Nov 2020 00:32:43 +0000 (01:32 +0100)]
Add a couple of TODOs
Giuseppe Bilotta [Fri, 20 Nov 2020 00:30:53 +0000 (01:30 +0100)]
3.0 OpenCL versions and features
Giuseppe Bilotta [Fri, 20 Nov 2020 00:27:43 +0000 (01:27 +0100)]
Preferred work-group size multiple device prop
Giuseppe Bilotta [Fri, 20 Nov 2020 00:24:38 +0000 (01:24 +0100)]
Bunch of boolean props
Giuseppe Bilotta [Fri, 20 Nov 2020 00:11:57 +0000 (01:11 +0100)]
Atomic memory/fences support
Giuseppe Bilotta [Thu, 19 Nov 2020 23:47:33 +0000 (00:47 +0100)]
More «stuff with versions» properties
Giuseppe Bilotta [Thu, 19 Nov 2020 23:43:45 +0000 (00:43 +0100)]
Support CL_DEVICE_EXTENSIONS_WITH_VERSION and make homogeneous
Giuseppe Bilotta [Thu, 19 Nov 2020 23:23:03 +0000 (00:23 +0100)]
Add support for CL_PLATFORM_EXTENSIONS_WITH_VERSION
Giuseppe Bilotta [Thu, 19 Nov 2020 22:33:37 +0000 (23:33 +0100)]
Introduce support for CL_{PLATFORM,DEVICE}_NUMERIC_VERSION
Giuseppe Bilotta [Thu, 19 Nov 2020 21:14:49 +0000 (22:14 +0100)]
Future-proof loader version check
If the loader claims a version higher than the highest version clinfo
knows about, we should not warn about version mismatches, because we
cannot actually check if what the loader claims is correct or not.
SImilarly, we comparing loader and maximum platform version, we trust
what the loader claims if it's higher than what we know about, but use
our detected version otherwise.
Giuseppe Bilotta [Tue, 17 Nov 2020 20:41:00 +0000 (21:41 +0100)]
Allow specification of single device to show info about
Brice Videau [Thu, 22 Oct 2020 22:15:05 +0000 (22:15 +0000)]
Updated loader version detection to OpenCL 3.0.
bdenhollander [Sat, 10 Oct 2020 18:51:51 +0000 (14:51 -0400)]
Fix a typo
Giuseppe Bilotta [Mon, 5 Oct 2020 16:38:31 +0000 (18:38 +0200)]
Avoid false positives in extensions detection
Pad the extension string with spaces and check for the extension string
surrounded by spaces.
ddeka2910 [Sun, 4 Oct 2020 08:34:43 +0000 (14:04 +0530)]
Add architecture ppc64le to travis build
Giuseppe Bilotta [Sun, 5 Jul 2020 19:23:49 +0000 (21:23 +0200)]
Fix no device handling for checkNullGetDevices
The main issue was that we were updating the non-error buffer, even
though an error condition was present in this case, so error buffer
should have been updated instead.
While we're at it, cleanup the output for this case, pointing out that
no device was found and that we're only tentatively guessing what the
associated platform might be.
Giuseppe Bilotta [Sun, 3 May 2020 15:33:43 +0000 (17:33 +0200)]
Fix CL_DEVICE_COMPUTE_UNITS_BITFIELD define name
This is for an Arm extension, but was missing the _ARM suffix. When the
define was added to the official headers, it was done with the correct
name, but I forgot to update it too.
Giuseppe Bilotta [Fri, 10 Apr 2020 11:55:51 +0000 (13:55 +0200)]
Improve Android support
Extend the default library path to add the vendor libraries
(which is where `libOpenCL.so` is typically found),
and include some documentation on how to build clinfo on Android in a
Termux session.
Running still requires a library search path override due to the
way the Bionic runtime linker works (no DT_RPATH or DT_RUNPATH support).
Android is not autodetected (`uname -s` returns `Linux`) so it has to be
manually specified by the user. (A possible idea would be to look at the
output of `uname -o` in Linux, since this does mention Android.)
Giuseppe Bilotta [Fri, 10 Apr 2020 08:34:03 +0000 (10:34 +0200)]
Typo in Makefile
Giuseppe Bilotta [Sun, 29 Mar 2020 14:04:54 +0000 (16:04 +0200)]
Document LLVM CommandLine issue
Giuseppe Bilotta [Sun, 29 Mar 2020 13:48:32 +0000 (15:48 +0200)]
Update documentation about CL_DEVICE_GLOBAL_FREE_MEMORY_AMD
Giuseppe Bilotta [Sun, 29 Mar 2020 13:46:30 +0000 (15:46 +0200)]
Preliminary support for cl_arm_job_slot_selection
Giuseppe Bilotta [Sun, 29 Mar 2020 12:54:26 +0000 (14:54 +0200)]
Better handling of CL_DEVICE_GLOBAL_FREE_MEMORY_AMD
ROCm chooses how many values to return depending on the requested size.
Since we know it returns two at most, let's ask for all of them.
Giuseppe Bilotta [Sun, 29 Mar 2020 12:39:09 +0000 (14:39 +0200)]
Improve support for CL_DEVICE_P2P_DEVICES_AMD
This property cannot be queried using the standard array query approach
due to the way it's implemented in ROCm (at least the version I have
tried). Work around this by directly querying the array values,
and only doing so when the CL_DEVICE_NUM_P2P_DEVICES_AMD query
returned a positive value.
Giuseppe Bilotta [Fri, 27 Dec 2019 18:50:09 +0000 (19:50 +0100)]
Missing attribute from cl_amd_device_attribute_query
Giuseppe Bilotta [Thu, 12 Dec 2019 22:11:29 +0000 (23:11 +0100)]
How to report missing information
Giuseppe Bilotta [Thu, 11 Jul 2019 14:51:04 +0000 (16:51 +0200)]
Add a TODO
Giuseppe Bilotta [Sun, 17 Mar 2019 21:24:24 +0000 (22:24 +0100)]
It should be kernel void, not void kernel
Most platforms don't care, but apparently Vivante does.
Closes GitHub issue #41.
Giuseppe Bilotta [Wed, 12 Dec 2018 13:50:48 +0000 (14:50 +0100)]
Fixes for cl_arm_core_id
Giuseppe Bilotta [Thu, 11 Oct 2018 12:48:26 +0000 (14:48 +0200)]
cl_intel_dx9_media_sharing values are not consecutive
Split their enumeration so we can keep the ranged search during
printout.
Giuseppe Bilotta [Tue, 14 Aug 2018 07:03:55 +0000 (09:03 +0200)]
Tentative support for cl_arm_core_id v2
Giuseppe Bilotta [Thu, 7 Jun 2018 18:49:05 +0000 (20:49 +0200)]
Update fetch script for Windows CI
Giuseppe Bilotta [Thu, 7 Jun 2018 18:30:38 +0000 (20:30 +0200)]
Prepare for new unified headers from Khronos
Giuseppe Bilotta [Thu, 7 Jun 2018 17:59:55 +0000 (19:59 +0200)]
Better support for OpenCL 1.0 platforms and devices
Giuseppe Bilotta [Wed, 25 Apr 2018 15:24:43 +0000 (17:24 +0200)]
One-liner to find faulty platforms
Giuseppe Bilotta [Wed, 25 Apr 2018 15:11:22 +0000 (17:11 +0200)]
Add a note about platforms causing a segmentation fault
Giuseppe Bilotta [Fri, 6 Apr 2018 05:50:01 +0000 (07:50 +0200)]
Version 2.2.18.04.06
Kristofer Rye [Thu, 5 Apr 2018 22:09:09 +0000 (17:09 -0500)]
Fix a typo
Giuseppe Bilotta [Tue, 3 Apr 2018 20:42:23 +0000 (22:42 +0200)]
Tune hex format specifier
Use "%#" instead of "0x%", and use lowercase hex everywhere.
Giuseppe Bilotta [Tue, 3 Apr 2018 20:33:44 +0000 (22:33 +0200)]
Fixup floating-point support output/fetch
In the reorganization, it was being printed unconditionally even in raw
mode, where we only want to output it only when it's expected. Split
the DINFO in HUMAN vs RAW to achieve this now.
Giuseppe Bilotta [Tue, 3 Apr 2018 19:12:38 +0000 (21:12 +0200)]
Un-globalize platform_sname_maxlen
Giuseppe Bilotta [Tue, 3 Apr 2018 19:06:46 +0000 (21:06 +0200)]
Un-globalize maxdevs
Giuseppe Bilotta [Tue, 3 Apr 2018 19:04:33 +0000 (21:04 +0200)]
Un-globalize icdl properties
Giuseppe Bilotta [Tue, 3 Apr 2018 18:55:56 +0000 (20:55 +0200)]
Un-globalize max_plat_version
Giuseppe Bilotta [Mon, 2 Apr 2018 15:27:50 +0000 (17:27 +0200)]
macOS and its stupid different include paths
Giuseppe Bilotta [Mon, 2 Apr 2018 14:08:58 +0000 (16:08 +0200)]
cond_prop_mode should be ignored in brief mode
Giuseppe Bilotta [Mon, 2 Apr 2018 14:06:30 +0000 (16:06 +0200)]
Use printPlatformDevices for offline devices too
Giuseppe Bilotta [Mon, 2 Apr 2018 09:12:54 +0000 (11:12 +0200)]
Start refactoring of platform device info output
This will allow us to coalesce processOfflineDevicesAMD with
the 'standard' device info printing.
Giuseppe Bilotta [Mon, 2 Apr 2018 09:04:24 +0000 (11:04 +0200)]
Refactor printPlatformName
Still not satisfied by the complexity of the logic, may need some
rethinking of the whole I*_STR mess.
Giuseppe Bilotta [Mon, 2 Apr 2018 00:29:35 +0000 (02:29 +0200)]
Move output options to own header
Giuseppe Bilotta [Mon, 2 Apr 2018 00:20:48 +0000 (02:20 +0200)]
Simplify printDeviceInfo signature
Giuseppe Bilotta [Mon, 2 Apr 2018 00:09:34 +0000 (02:09 +0200)]
Output options aren't global anymore either
Giuseppe Bilotta [Sun, 1 Apr 2018 23:13:00 +0000 (01:13 +0200)]
Unify listPlatformAndDevices and showDevices
Giuseppe Bilotta [Sun, 1 Apr 2018 21:25:26 +0000 (23:25 +0200)]
Get rid of global platform list
Put the relevant data in a structure that gets passed around.
Giuseppe Bilotta [Sat, 31 Mar 2018 23:21:08 +0000 (01:21 +0200)]
Typos
Giuseppe Bilotta [Sat, 31 Mar 2018 23:12:03 +0000 (01:12 +0200)]
Formal correctness: PRIu32 instead of u
Also place pdata closer to related static variables, and fix a missing
closed parenthesis.
Giuseppe Bilotta [Sat, 31 Mar 2018 22:48:33 +0000 (00:48 +0200)]
Further work on fetch vs show split
With the exception of array and composite values, all device info
functions separate the fetch from the rendering, with the fetch
functions filling up ret and the value field, and returning the value
itself.
Giuseppe Bilotta [Sat, 31 Mar 2018 20:33:21 +0000 (22:33 +0200)]
Fix comments
Giuseppe Bilotta [Sat, 31 Mar 2018 20:29:49 +0000 (22:29 +0200)]
Remove extra empty line
Giuseppe Bilotta [Sat, 31 Mar 2018 20:27:29 +0000 (22:27 +0200)]
Switch to cl_bool where it makes sense
Giuseppe Bilotta [Fri, 30 Mar 2018 20:14:20 +0000 (22:14 +0200)]
Get rid of the Makefile/GNUMakefile split
We can leverage the difference in syntax between the two main make
variants to get the OS, which was the only missing part.
For those interested in a full-fledged “autoconf”, or in general in
learning more tricks on how to write portable Makefiles, I highly
recommend looking at this masterpiece:
https://github.com/wahern/autoguess/blob/config-guess/config.mk.guess
Giuseppe Bilotta [Wed, 28 Mar 2018 19:25:27 +0000 (21:25 +0200)]
Split definitions of *_info_ret to own header file
Giuseppe Bilotta [Wed, 28 Mar 2018 17:21:26 +0000 (19:21 +0200)]
Missing strbuf init
Giuseppe Bilotta [Wed, 28 Mar 2018 17:19:11 +0000 (19:19 +0200)]
Fix -a flag not working correctly
Giuseppe Bilotta [Wed, 28 Mar 2018 17:01:42 +0000 (19:01 +0200)]
Deallocate what was allocated
Giuseppe Bilotta [Wed, 28 Mar 2018 16:56:33 +0000 (18:56 +0200)]
Initialize strbuf in listPlatformsAndDevices
Giuseppe Bilotta [Wed, 28 Mar 2018 16:54:04 +0000 (18:54 +0200)]
Reorganize handling of empty values
Giuseppe Bilotta [Wed, 28 Mar 2018 15:45:55 +0000 (17:45 +0200)]
Remove global strbuf
To achieve this, all info retrieval functions get a new “ret” typ that
includes a buffer with the textual description of the result, which is
used to pass strings around.
Giuseppe Bilotta [Tue, 27 Mar 2018 21:22:51 +0000 (23:22 +0200)]
DIRI: global strbuf suppression, step 1
Introduce the _strbuf structure and switch to it, making most uses
explicit.
Giuseppe Bilotta [Tue, 27 Mar 2018 19:57:18 +0000 (21:57 +0200)]
Forgot had_error => err renaming in strbuf.h
Giuseppe Bilotta [Tue, 27 Mar 2018 19:53:35 +0000 (21:53 +0200)]
Header fencing cleanup
Giuseppe Bilotta [Mon, 26 Mar 2018 23:45:58 +0000 (01:45 +0200)]
DIRI: sanitize error location management
Get rid of the error-related globals and shuffle arround a new info_loc
structure carrying the salient information.
As a bonus, we now pass the relevant platform to all device info checks,
and we get rid of a number of shadowing and global overrides.
Giuseppe Bilotta [Mon, 26 Mar 2018 21:33:48 +0000 (23:33 +0200)]
Typo
Giuseppe Bilotta [Mon, 26 Mar 2018 17:08:01 +0000 (19:08 +0200)]
DIRI: more sophisticated return
This is the first step in fixing the Device Information Retrieval
Insanity. The relevant functions now return a structure that includes
the error condition as well as (in most cases) the actual return value.
This needs to be further improved, including array return values and
raw vs human representation.
Giuseppe Bilotta [Mon, 26 Mar 2018 15:55:02 +0000 (17:55 +0200)]
Version 2.2.18.03.26
Giuseppe Bilotta [Mon, 26 Mar 2018 14:42:14 +0000 (16:42 +0200)]
AMD offline info whitelist tuning and cleanup
Giuseppe Bilotta [Sun, 25 Mar 2018 06:43:58 +0000 (08:43 +0200)]
Phrasing
Giuseppe Bilotta [Sun, 25 Mar 2018 06:40:43 +0000 (08:40 +0200)]
Mention the most typical use cases for clinfo
Giuseppe Bilotta [Sun, 25 Mar 2018 06:31:16 +0000 (08:31 +0200)]
Travis CI build status
Giuseppe Bilotta [Sun, 25 Mar 2018 06:26:54 +0000 (08:26 +0200)]
Whitespace cleanup
Giuseppe Bilotta [Sat, 24 Mar 2018 21:47:35 +0000 (22:47 +0100)]
Improve checkNullCtxFromType
Apparently Apple returs CL_INVALID_VALUE instead of
CL_INVALID_DEVICE_TYPE for _CUSTOM types. Take the opportunity to clean
up the way errors are reported, and split each case of failure..
Giuseppe Bilotta [Sat, 24 Mar 2018 17:13:13 +0000 (18:13 +0100)]
GitHub doesn't like style tags inside tables in Markdown
On an unrelated noted, GitHub is starting to get on my nerves.
Giuseppe Bilotta [Sat, 24 Mar 2018 17:09:35 +0000 (18:09 +0100)]
Expand README
Add minimal usage and a link to Windows binaries.
Giuseppe Bilotta [Fri, 23 Mar 2018 09:25:15 +0000 (10:25 +0100)]
Interop list: don't print last group separator
Giuseppe Bilotta [Fri, 23 Mar 2018 08:50:54 +0000 (09:50 +0100)]
Swapped conditional in interop list
Giuseppe Bilotta [Thu, 22 Mar 2018 20:52:27 +0000 (21:52 +0100)]
AppVeyor support
Giuseppe Bilotta [Thu, 22 Mar 2018 20:44:24 +0000 (21:44 +0100)]
Improve Windows OpenCL dev fetcher
Now it also accepts x64 as parameter to fetch 64-bit libs.
Giuseppe Bilotta [Thu, 22 Mar 2018 18:59:16 +0000 (19:59 +0100)]
Makefile.win arch detection tuning
Giuseppe Bilotta [Thu, 22 Mar 2018 17:12:24 +0000 (18:12 +0100)]
Script to set up a minimal OpenCL build env in Windows
Giuseppe Bilotta [Thu, 22 Mar 2018 16:28:52 +0000 (17:28 +0100)]
Add missing header to Makefile.win
Giuseppe Bilotta [Thu, 22 Mar 2018 15:17:55 +0000 (16:17 +0100)]
Version 2.2.18.03.22