Skip to content

Instantly share code, notes, and snippets.

@tomoaki0705
Created July 21, 2019 13:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tomoaki0705/94c49d84e28c9966c4cbbdff3acdea2b to your computer and use it in GitHub Desktop.
Save tomoaki0705/94c49d84e28c9966c4cbbdff3acdea2b to your computer and use it in GitHub Desktop.
clinfo output from Firefly RK3399
Welcome to Ubuntu 16.04.5 LTS (GNU/Linux 4.4.16 aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
firefly@firefly:~$ clinfo
-bash: clinfo: command not found
firefly@firefly:~$ sudo apt install clinfo
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
clinfo
0 upgraded, 1 newly installed, 0 to remove and 102 not upgraded.
Need to get 27.3 kB of archives.
After this operation, 84.0 kB of additional disk space will be used.
Get:1 http://ports.ubuntu.com/ubuntu-ports xenial/universe arm64 clinfo arm64 2.1.16.01.12-1 [27.3 kB]
Fetched 27.3 kB in 1s (17.6 kB/s)
Selecting previously unselected package clinfo.
(Reading database ... 128145 files and directories currently installed.)
Preparing to unpack .../clinfo_2.1.16.01.12-1_arm64.deb ...
Unpacking clinfo (2.1.16.01.12-1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up clinfo (2.1.16.01.12-1) ...
firefly@firefly:~$ clinfo
Number of platforms 0
firefly@firefly:~$ strace -o ~/strace.log clinfo
Number of platforms 0
firefly@firefly:~$ tail ~/strace.log
mprotect(0x41d000, 4096, PROT_READ) = 0
mprotect(0x7f88a26000, 4096, PROT_READ) = 0
munmap(0x7f889e3000, 91299) = 0
brk(NULL) = 0x421000
brk(0x442000) = 0x442000
openat(AT_FDCWD, "/etc/OpenCL/vendors", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 8), ...}) = 0
write(1, "Number of platforms "..., 52) = 52
exit_group(0) = ?
+++ exited with 0 +++
firefly@firefly:~$ ls -l /etc/OpenCL
ls: cannot access '/etc/OpenCL': No such file or directory
firefly@firefly:~$ sudo mkdir -p /etc/OpenCL/vendors/
firefly@firefly:~$ strace -o ~/strace.log clinfo
Number of platforms 0
firefly@firefly:~$ tail ~/strace.log
openat(AT_FDCWD, "/etc/OpenCL/vendors", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
getdents64(3, /* 2 entries */, 32768) = 48
getdents64(3, /* 0 entries */, 32768) = 0
lseek(3, 0, SEEK_SET) = 0
close(3) = 0
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 8), ...}) = 0
write(1, "Number of platforms "..., 52) = 52
exit_group(0) = ?
+++ exited with 0 +++
firefly@firefly:~/work/libmali/lib/aarch64-linux-gnu$ ls
libmali-midgard-t86x-r13p0-gbm.so libmali-midgard-t86x-r14p0-wayland.so libmali-utgard-450-r7p0-gbm.so
libmali-midgard-t86x-r13p0-wayland.so libmali-midgard-t86x-r14p0-x11-fbdev.so libmali-utgard-450-r7p0-wayland.so
libmali-midgard-t86x-r13p0.so libmali-midgard-t86x-r14p0.so libmali-utgard-450-r7p0-x11-fbdev.so
libmali-midgard-t86x-r14p0-fbdev.so libmali-midgard-t86x-r9p0.so libmali-utgard-450-r7p0.so
libmali-midgard-t86x-r14p0-gbm.so libmali-utgard-450-r7p0-fbdev.so
firefly@firefly:~$ sudo touch /etc/OpenCL/vendors/mali.icd
firefly@firefly:~$ sudo vim /etc/OpenCL/vendors/mali.icd
firefly@firefly:~$ cd /etc/OpenCL
firefly@firefly:/etc/OpenCL$ ls
vendors
firefly@firefly:/etc/OpenCL$ ls vendors/
mali.icd
firefly@firefly:/etc/OpenCL$ strace -o ~/strace.log clinfo
Number of platforms 1
Platform Name ARM Platform
Platform Vendor ARM
Platform Version OpenCL 1.2 v1.r13p0-00rel0-git(a4271c9).04dadb82d3612c978f88c00109101694
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_3d_image_writes cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp16 cl_khr_gl_sharing cl_khr_icd cl_khr_egl_event cl_khr_egl_image cl_khr_image2d_from_buffer cl_arm_core_id cl_arm_printf cl_arm_thread_limit_hint cl_arm_non_uniform_work_group_size cl_arm_import_memory
Platform Extensions function suffix ARM
Platform Name ARM Platform
Number of devices 1
Device Name Mali-T860
Device Vendor ARM
Device Vendor ID 0x8602000
Device Version OpenCL 1.2 v1.r13p0-00rel0-git(a4271c9).04dadb82d3612c978f88c00109101694
Driver Version 1.2
Device OpenCL C Version OpenCL C 1.2 v1.r13p0-00rel0-git(a4271c9).04dadb82d3612c978f88c00109101694
Device Type GPU
Device Profile FULL_PROFILE
Max compute units 4
Max clock frequency 200MHz
Device Partition (core)
Max number of sub-devices 0
Supported partition types None
Max work item dimensions 3
Max work item sizes 256x256x256
Max work group size 256
Preferred work group size multiple 4
Preferred / native vector sizes
char 16 / 16
short 8 / 8
int 4 / 4
long 2 / 2
half 8 / 8 (cl_khr_fp16)
float 4 / 4
double 2 / 2 (cl_khr_fp64)
Half-precision Floating-point support (cl_khr_fp16)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Single-precision Floating-point support (core)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Double-precision Floating-point support (cl_khr_fp64)
Denormals Yes
Infinity and NANs Yes
Round to nearest Yes
Round to zero Yes
Round to infinity Yes
IEEE754-2008 fused multiply-add Yes
Support is emulated in software No
Correctly-rounded divide and sqrt operations No
Address bits 64, Little-Endian
Global memory size 2072125440 (1.93GiB)
Error Correction support No
Max memory allocation 518031360 (494MiB)
Unified memory for Host and Device Yes
Minimum alignment for any data type 128 bytes
Alignment of base address 1024 bits (128 bytes)
Global Memory cache type Read/Write
Global Memory cache size 262144
Global Memory cache line 64 bytes
Image support Yes
Max number of samplers per kernel 16
Max size for 1D images from buffer 65536 pixels
Max 1D or 2D image array size 2048 images
Base address alignment for 2D image buffers 32 bytes
Pitch alignment for 2D image buffers 16 bytes
Max 2D image size 65536x65536 pixels
Max 3D image size 65536x65536x65536 pixels
Max number of read image args 128
Max number of write image args 8
Local memory type Global
Local memory size 32768 (32KiB)
Max constant buffer size 65536 (64KiB)
Max number of constant args 8
Max size of kernel argument 1024
Queue properties
Out-of-order execution Yes
Profiling Yes
Prefer user sync for interop No
Profiling timer resolution 1000ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels No
printf() buffer size 1048576 (1024KiB)
Built-in kernels
Device Available Yes
Compiler Available Yes
Linker Available Yes
Device Extensions cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_3d_image_writes cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp16 cl_khr_gl_sharing cl_khr_icd cl_khr_egl_event cl_khr_egl_image cl_khr_image2d_from_buffer cl_arm_core_id cl_arm_printf cl_arm_thread_limit_hint cl_arm_non_uniform_work_group_size cl_arm_import_memory
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) ARM Platform
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [ARM]
clCreateContext(NULL, ...) [default] Success [ARM]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) Success (1)
Platform Name ARM Platform
Device Name Mali-T860
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform
clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) Success (1)
Platform Name ARM Platform
Device Name Mali-T860
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.8
ICD loader Profile OpenCL 1.2
NOTE: your OpenCL library declares to support OpenCL 1.2,
but it seems to support up to OpenCL 2.1 too.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment