Giuseppe Bilotta [Wed, 14 Mar 2018 23:18:53 +0000 (00:18 +0100)]
Differentiate szptr device info by separator
Sub-group sizes are simple list, so use comma as separator instead of
times.
Giuseppe Bilotta [Wed, 14 Mar 2018 23:00:50 +0000 (00:00 +0100)]
Options to unconditionally show all properties
Introduce -a and -A options to try and fetch all properties, regardless
of conditions, and show them if successfully retrieved (or by the error,
respectively).
Giuseppe Bilotta [Wed, 14 Mar 2018 21:55:48 +0000 (22:55 +0100)]
Allow device checks to access the platform checks too
This is used for the cl_amd_device_attribute_query to fetch v4 elements
if the _platform_ reports support for 2.0, not just the device.
Giuseppe Bilotta [Wed, 14 Mar 2018 21:26:28 +0000 (22:26 +0100)]
Typo
Giuseppe Bilotta [Wed, 14 Mar 2018 08:25:08 +0000 (09:25 +0100)]
OpenCL extension insanity
The value for the CL_DEVICE_TERMINATE_CAPABILITY_KHR flag changed
between 1.2 and 2.x, take this into account.
Giuseppe Bilotta [Wed, 14 Mar 2018 08:14:13 +0000 (09:14 +0100)]
cl_amd_object_metadata support
Giuseppe Bilotta [Tue, 13 Mar 2018 14:46:21 +0000 (15:46 +0100)]
Fix spelling for simulataneous
Giuseppe Bilotta [Tue, 13 Mar 2018 14:42:56 +0000 (15:42 +0100)]
Discuss limitations more in depth
The lack of documentation and extension versioning in OpenCL is not a
clinfo bug, document it as a limitation instead.
Giuseppe Bilotta [Tue, 13 Mar 2018 14:31:16 +0000 (15:31 +0100)]
Experimental cl_amd_copy_buffer_p2p support
Giuseppe Bilotta [Tue, 13 Mar 2018 14:02:11 +0000 (15:02 +0100)]
Undocumented AMD properites from the ROCm stack
Also make ASYNC_QUEUES available again, assume that v4 devices report it
(to be tested).
Giuseppe Bilotta [Tue, 13 Mar 2018 13:53:11 +0000 (14:53 +0100)]
Add new cl_amd_device_attribute_query properties
Giuseppe Bilotta [Tue, 13 Mar 2018 11:54:56 +0000 (12:54 +0100)]
cl_khr_il_program support
Giuseppe Bilotta [Sun, 28 Jan 2018 10:51:18 +0000 (11:51 +0100)]
Work around macOS API deprecation
It doesn't follow what the rest of the OpenCL ecosystem does, so just
suppress the warning altogether.
Giuseppe Bilotta [Sat, 27 Jan 2018 19:47:16 +0000 (20:47 +0100)]
Different hack for function vs data pointer aliasing
Apparently older gcc versions (pre-4.6 at the very least) have a
different (stricter?) aliasing detection logic, which prevents the hack
we use to cast the return value of clGetExtensionFunctionAddress into a
proper function pointer.
Simply disabling the warning in the relevant area doesn't seem to be
sufficient for some reason, but this can be worked around by going the
indirect route (i.e. casting a pointer-to-pointer rather than the
original pointers we're interested in) in a different way.
Fixes GH issue #33.
Giuseppe Bilotta [Sat, 27 Jan 2018 20:36:06 +0000 (21:36 +0100)]
Declare that we will use deprecated APIs
Instead of disabling the warning around the call to
clGetExtensionAddress, simply declare that we will use the deprecated
function before including the CL header. This prevents the header from
actually marking the API as deprecated.
Giuseppe Bilotta [Fri, 12 Jan 2018 22:35:52 +0000 (23:35 +0100)]
Clarify build requirements in the README
Hopefully this will be sufficient to let people know that CMake is
intentionally not used (ref. issue #20 and pull request #32).
Giuseppe Bilotta [Fri, 12 Jan 2018 22:30:15 +0000 (23:30 +0100)]
Makefile.win: add support for Intel OpenCL SDK
Find the SDK path from the environment variable INTELOCLSDKROOT and
take into account the different directory used for the library.
Jan Chren [Sun, 3 Dec 2017 03:01:02 +0000 (04:01 +0100)]
Makefile: make developer CFLAGS optional
Giuseppe Bilotta [Wed, 25 Oct 2017 19:50:40 +0000 (21:50 +0200)]
Version 2.2.17.10.25
Giuseppe Bilotta [Wed, 25 Oct 2017 19:50:14 +0000 (21:50 +0200)]
Fix new-version.sh script after
f98c9ede8
The man page has changed location.
Giuseppe Bilotta [Wed, 25 Oct 2017 13:21:37 +0000 (15:21 +0200)]
Warnings as errors
Giuseppe Bilotta [Wed, 25 Oct 2017 13:20:45 +0000 (15:20 +0200)]
Correctly-rounded div and sqrt is only a flag for fp32
Ruiling Song [Wed, 25 Oct 2017 10:56:56 +0000 (18:56 +0800)]
Fix CL_DEVICE_IMAGE_PITCH_ALIGNMENT unit to pixels.
Per OCL Spec, the row pitch alignment is in units of pixels.
Signed-off-by: Ruiling Song <ruiling.song@intel.com>
Martin Kelly [Sat, 23 Sep 2017 00:24:03 +0000 (17:24 -0700)]
fix manpage target
Currently, make install fails with this message:
make: *** No rule to make target 'man1/clinfo.1', needed by
'/usr/local/man/man1/clinfo.1'. Stop.
Fix this by renaming the man directory to be the man1 directory.
Giuseppe Bilotta [Fri, 25 Aug 2017 10:50:00 +0000 (12:50 +0200)]
Version 2.2.17.08.25
Giuseppe Bilotta [Fri, 25 Aug 2017 10:49:57 +0000 (12:49 +0200)]
Switch to annotated tags
Giuseppe Bilotta [Sun, 20 Aug 2017 20:44:52 +0000 (22:44 +0200)]
Provide a `make install` target
Giuseppe Bilotta [Sun, 20 Aug 2017 19:13:52 +0000 (21:13 +0200)]
Check for extra bits in some bitfields
Giuseppe Bilotta [Thu, 17 Aug 2017 22:05:36 +0000 (00:05 +0200)]
Preliminary support for cl_khr_terminate_context
Giuseppe Bilotta [Thu, 17 Aug 2017 21:46:18 +0000 (23:46 +0200)]
Declare support for OpenCL 2.x experimental
2.0 and 2.1 were explicitly listed. Replace with shorthand 2.x notation.
Giuseppe Bilotta [Thu, 17 Aug 2017 21:44:46 +0000 (23:44 +0200)]
Actually add support for cl_khr_subgroup_named_barrier property
Giuseppe Bilotta [Thu, 17 Aug 2017 21:35:57 +0000 (23:35 +0200)]
Add tentative missing defines for cl_khr_terminate_context
Giuseppe Bilotta [Thu, 17 Aug 2017 21:28:07 +0000 (23:28 +0200)]
Defines for cl_khr_subgroup_named_barrier
Giuseppe Bilotta [Tue, 13 Jun 2017 22:44:50 +0000 (00:44 +0200)]
Version 2.2.17.06.14
Giuseppe Bilotta [Sat, 23 Apr 2016 09:45:21 +0000 (11:45 +0200)]
OpenCL 2.2 support
There are no new device properties declared in the 2.2 provisional
specification, but a couple of new API calls. Add one of them to the
list used for ICD loader version checking.
Paul Kippes [Wed, 22 Mar 2017 18:43:32 +0000 (11:43 -0700)]
Add "size" to "cache line" info
Giuseppe Bilotta [Fri, 10 Feb 2017 10:16:26 +0000 (11:16 +0100)]
Add NMAKE makefile
Give a pretense of support for building the thing on Windows, at least
from the command-line. Also include a 'make.cmd' batch file that calls
NMAKE with the correct parameters.
Giuseppe Bilotta [Fri, 10 Feb 2017 10:47:16 +0000 (11:47 +0100)]
Update Windows support
Particularly concerning the OpenCL ICD version retrieval.
Giuseppe Bilotta [Fri, 10 Feb 2017 10:15:24 +0000 (11:15 +0100)]
Avoid possible narrowing warnings
Giuseppe Bilotta [Fri, 10 Feb 2017 10:09:44 +0000 (11:09 +0100)]
Use PRIuS to print size_t
Giuseppe Bilotta [Fri, 10 Feb 2017 10:09:08 +0000 (11:09 +0100)]
Make UNUSED macro function-style
This should hopefully allow us to extend it better to other compilers.
Giuseppe Bilotta [Thu, 9 Feb 2017 22:44:54 +0000 (23:44 +0100)]
Also check default devices in clCreateContextFromType
Giuseppe Bilotta [Thu, 9 Feb 2017 15:56:08 +0000 (16:56 +0100)]
Version 2.1.17.02.09
Giuseppe Bilotta [Thu, 9 Feb 2017 15:44:14 +0000 (16:44 +0100)]
Waive copyrights via CC0
Public domain licensing isn't necessarily allowed everywhere, so waive
any copyright using the Creative Commons 0 formulation, which is the
closest thing with a parvence of formal legality.
This fixes GitHub Issue #16.
Giuseppe Bilotta [Thu, 9 Feb 2017 15:07:14 +0000 (16:07 +0100)]
CL_DEVICE_PRINTF_BUFFER_SIZE is a size_t
So device a new printer or size_t-sized memory values. This fixes Debian
Bug #848182.
Giuseppe Bilotta [Thu, 9 Feb 2017 14:59:40 +0000 (15:59 +0100)]
Global memory cache size is a memory size
Use the device_info_mem to report it.
This also fixes Debian Bug #848171.
Giuseppe Bilotta [Thu, 9 Feb 2017 14:48:35 +0000 (15:48 +0100)]
Memory suffix tuning
A cl_ulong can represent up to 16EiB, so let's extend the suffix table
up to that, and in fact beyond, down the YiB.
It is now technically impossible for strbuf_mem to move beyond the end
of the array (cf. Debian Bug #848177) since no memory amount that can be
represented will trigger the off-by-one, but let's fix the logic anyway.
Giuseppe Bilotta [Thu, 9 Feb 2017 14:28:30 +0000 (15:28 +0100)]
GET_STRING2 macro to get strings
Refactor the common "get size, resize, get value" idiom for string into
a GET_STRING2 macro. This is one of the last things that weren't
converted with the property table refactoring.
Giuseppe Bilotta [Thu, 9 Feb 2017 13:06:59 +0000 (14:06 +0100)]
Realloc bufsz only if no error
If the size query call didn't return CL_SUCCESS, there is no need to
resize the buffer, since we're not going to use its value anyway. Plus,
the new size might actually be completely bogus and cause issues.
This should fix Debian Bug #848169.
Giuseppe Bilotta [Thu, 9 Feb 2017 12:06:07 +0000 (13:06 +0100)]
The dynamic linker is needed everywhere
Link to it unconditionally.
Giuseppe Bilotta [Fri, 20 Jun 2014 08:55:32 +0000 (10:55 +0200)]
Add travis control file
Giuseppe Bilotta [Fri, 20 Jan 2017 19:44:15 +0000 (20:44 +0100)]
Support cl_intel_planar_yuv
Giuseppe Bilotta [Fri, 20 Jan 2017 19:28:57 +0000 (20:28 +0100)]
Support cl_intel_device_side_avc_motion_estimation
Sam McKelvie [Tue, 1 Nov 2016 20:39:18 +0000 (13:39 -0700)]
Fix erroneous use of long rather than size_t for CL_DEVICE_PROFILING_TIMER_RESOLUTION--breaks on 32-bit host
Giuseppe Bilotta [Thu, 27 Oct 2016 18:58:09 +0000 (20:58 +0200)]
Unbreak Darwin build
-lOpenCL should be removed from LDLIBS on Darwin. Use a trick similar
to the one used for OS-specific inclusions to remove the unwated
include.
Giuseppe Bilotta [Tue, 25 Oct 2016 22:28:53 +0000 (00:28 +0200)]
Rewrite build system
This should allow building on BSD systems without requiring GNU make.
Giuseppe Bilotta [Wed, 5 Oct 2016 05:03:23 +0000 (07:03 +0200)]
Work-group kernel: don't clobber strbuf
Othewise the log would appear in the work-size multiple output. Shadow
the variables instead.
Also flush stdout and stderr as appropriate.
Giuseppe Bilotta [Sat, 16 Jul 2016 17:19:01 +0000 (19:19 +0200)]
Support cl_arm_shared_virtual_memory
Giuseppe Bilotta [Sat, 16 Jul 2016 16:16:53 +0000 (18:16 +0200)]
Support cl_intel_required_subgroup_size
Giuseppe Bilotta [Sat, 16 Jul 2016 16:10:36 +0000 (18:10 +0200)]
Minor whitespace
Giuseppe Bilotta [Sun, 22 May 2016 14:35:31 +0000 (16:35 +0200)]
Don't get preferred wg size multiple if compiler is not available
Giuseppe Bilotta [Fri, 22 Apr 2016 16:03:03 +0000 (18:03 +0200)]
Cleanly compile with pedantic
Giuseppe Bilotta [Tue, 12 Jan 2016 10:51:23 +0000 (11:51 +0100)]
Version 2.1.16.01.12
Giuseppe Bilotta [Tue, 12 Jan 2016 10:51:10 +0000 (11:51 +0100)]
No header of OCLICD properties in RAW mode
Giuseppe Bilotta [Tue, 12 Jan 2016 09:55:52 +0000 (10:55 +0100)]
Don't check NULL platform behavior in RAW mode
Giuseppe Bilotta [Tue, 12 Jan 2016 09:35:21 +0000 (10:35 +0100)]
Prefix OCL ICD loader properties in raw mode too
When in raw mode, explicitly redefine the line prefix before showing
the OCL ICD loader properties. (Without this, we were actually
prefixing those lines with the same prefix as the last displayed
platform/device.
Giuseppe Bilotta [Mon, 11 Jan 2016 09:19:38 +0000 (10:19 +0100)]
Fix time_offset bufcpy conversion
Giuseppe Bilotta [Wed, 6 Jan 2016 11:07:55 +0000 (12:07 +0100)]
Version 2.1.16.01.06
Giuseppe Bilotta [Wed, 9 Dec 2015 21:59:00 +0000 (22:59 +0100)]
More aggressive sparse, also use CPPFLAGS and CFLAGS
Giuseppe Bilotta [Wed, 9 Dec 2015 21:58:31 +0000 (22:58 +0100)]
More separator stuff
Giuseppe Bilotta [Wed, 9 Dec 2015 21:29:52 +0000 (22:29 +0100)]
Avoid mixing declarations and code
Giuseppe Bilotta [Wed, 9 Dec 2015 21:21:55 +0000 (22:21 +0100)]
Option to run sparse via make
Giuseppe Bilotta [Wed, 9 Dec 2015 21:21:45 +0000 (22:21 +0100)]
Use NULL where appropriate
Giuseppe Bilotta [Wed, 9 Dec 2015 21:09:06 +0000 (22:09 +0100)]
Mark void functions as such
In C, function that tak no argument should have a `void` argument list,
not an empty one.
Giuseppe Bilotta [Wed, 9 Dec 2015 21:05:05 +0000 (22:05 +0100)]
More header cleanup
Giuseppe Bilotta [Wed, 9 Dec 2015 17:38:23 +0000 (18:38 +0100)]
Refactor separators handling
Giuseppe Bilotta [Wed, 9 Dec 2015 17:20:02 +0000 (18:20 +0100)]
Some header cleanup
Giuseppe Bilotta [Wed, 9 Dec 2015 17:14:34 +0000 (18:14 +0100)]
Use snprintf+bufcpy in device_info_time_offset
This should avoid warnings about use of dangerous functions such as
sprintf or strcpy.
Giuseppe Bilotta [Wed, 9 Dec 2015 16:57:38 +0000 (17:57 +0100)]
Use snprintf when generating platform symbolic name
Giuseppe Bilotta [Wed, 9 Dec 2015 16:53:02 +0000 (17:53 +0100)]
libdl only needed on Linux
Giuseppe Bilotta [Tue, 8 Dec 2015 22:45:00 +0000 (23:45 +0100)]
Version 2.1.15.12.08
Giuseppe Bilotta [Tue, 8 Dec 2015 21:36:42 +0000 (22:36 +0100)]
Document ICD loader version detection
Giuseppe Bilotta [Tue, 8 Dec 2015 21:31:28 +0000 (22:31 +0100)]
Audo-detect ICD loader OpenCL version support
We test for the existence of one (new) API symbol per OpenCL version,
and if it's found we assume the ICD loader supports that OpenCL
version. Notices are output if:
* the declared OpenCL version support for the ICD loader doesn't match
the one we found;
* the OpenCL version found is lower than the highest platform version
found.
Giuseppe Bilotta [Tue, 8 Dec 2015 20:02:48 +0000 (21:02 +0100)]
Introduce preliminary version checks
If the highest platform version is lower than the OpenCL version
supported by the ICD loader, print a warning note at the end.
Currently we only check the version supported by ICD loader only for
ocl-icd, which exposes it via an extension.
Giuseppe Bilotta [Tue, 8 Dec 2015 19:42:06 +0000 (20:42 +0100)]
plat_version should be a cl_uint
Giuseppe Bilotta [Tue, 17 Nov 2015 21:03:06 +0000 (22:03 +0100)]
Version 2.1.15.11.17
Giuseppe Bilotta [Tue, 17 Nov 2015 21:03:02 +0000 (22:03 +0100)]
Document (experimental) support for 2.1
Giuseppe Bilotta [Tue, 17 Nov 2015 20:59:20 +0000 (21:59 +0100)]
Add support for new device properties
Giuseppe Bilotta [Tue, 17 Nov 2015 20:45:18 +0000 (21:45 +0100)]
Add support for new platform property
This brings the platform info behavior closer to the device info
behavior, since the new property is not a string and it requires a
suffix.
Note that the actual display of the new property is untested (since I
don't have a 2.1 platform yet).
Giuseppe Bilotta [Tue, 17 Nov 2015 20:45:06 +0000 (21:45 +0100)]
Declare new 2.1 platform and device info
Giuseppe Bilotta [Wed, 11 Nov 2015 10:29:00 +0000 (11:29 +0100)]
Compile (cleanly) on GCC 4.4 too
Andrey Gursky [Wed, 28 Oct 2015 17:00:34 +0000 (18:00 +0100)]
Fix memory leak
devs is locally dynamically allocated and must be freed.
Giuseppe Bilotta [Mon, 21 Sep 2015 19:53:00 +0000 (21:53 +0200)]
Typo
Giuseppe Bilotta [Tue, 28 Apr 2015 06:40:30 +0000 (08:40 +0200)]
Version 2.0.15.04.28
Giuseppe Bilotta [Sat, 4 Apr 2015 14:39:22 +0000 (16:39 +0200)]
Experimental support for a few other Intel extension
Giuseppe Bilotta [Fri, 3 Apr 2015 07:06:50 +0000 (09:06 +0200)]
We're using C99
I'm not sure we _specifically_ depend on anything C99, but let's go with
it.
Giuseppe Bilotta [Fri, 3 Apr 2015 07:06:41 +0000 (09:06 +0200)]
Tune handing of platforms with no devices
Giuseppe Bilotta [Fri, 3 Apr 2015 07:06:06 +0000 (09:06 +0200)]
Some updates from cl_amd_device_attribute_query v3
Giuseppe Bilotta [Wed, 25 Mar 2015 16:55:28 +0000 (17:55 +0100)]
Cleanups by clang's static analyzer
Giuseppe Bilotta [Wed, 25 Mar 2015 16:38:25 +0000 (17:38 +0100)]
Clean build with -Wextra