OpenCL and Radeon R4 Integrated Graphics - gpu

I have a Dell Inspiron laptop with an AMD A6-6310 (Radeon R4 integrated graphics) SoC. I am running Debian Sid (updated to the latest). From wikipedia I see that the R4 Graphics has 128 shader cores across 2 compute units and the main processor being a quad core device.
I believe (correct me if I am wrong), this means that if I run clinfo it should detect two platforms, which however detects only one (my Quad core CPU). Can you guys advice me as to how I can get opencl detecting my GPU? I have the xserver-xorg-video-radeon and xserver-xorg-video-amdgpu packages installed along with libdrm-amdgpu1 and libdrm-radeon1. From lspci I can see that radeon driver is being used. Are there any drivers that need to be installed?
lspci output
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Root Complex
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Mullins [Radeon R4/R5 Graphics]
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Kabini HDMI/DP Audio
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:08.0 Encryption controller: Advanced Micro Devices, Inc. [AMD] Kabini/Mullins PSP-Platform Security Processor
00:10.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI Controller (rev 11)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode]
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 39)
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 39)
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 42)
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 11)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h (Models 30h-3fh) Processor Function 5
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller (rev 07)
03:00.0 Network controller: Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01)
clinfo output
Number of platforms 1
Platform Name Portable Computing Language
Platform Vendor The pocl project
Platform Version OpenCL 1.2 pocl 1.5, None+Asserts, LLVM 9.0.1, RELOC, SLEEF, DISTRO, POCL_DEBUG
Platform Profile FULL_PROFILE
Platform Extensions cl_khr_icd
Platform Extensions function suffix POCL
Platform Name Portable Computing Language
Number of devices 1
Device Name pthread-AMD A6-6310 APU with AMD Radeon R4 Graphics
Device Vendor AuthenticAMD
Device Vendor ID 0x6c636f70
Device Version OpenCL 1.2 pocl HSTR: pthread-x86_64-pc-linux-gnu-btver2
Driver Version 1.5
Device OpenCL C Version OpenCL C 1.2 pocl
Device Type CPU
Device Profile FULL_PROFILE
Device Available Yes
Compiler Available Yes
Linker Available Yes
Max compute units 4
Max clock frequency 1800MHz
Device Partition (core)
Max number of sub-devices 4
Supported partition types equally, by counts
Supported affinity domains (n/a)
Max work item dimensions 3
Max work item sizes 4096x4096x4096
Max work group size 4096
Preferred work group size multiple 8
Preferred / native vector sizes
char 16 / 16
short 16 / 16
int 8 / 8
long 4 / 4
half 0 / 0 (n/a)
float 8 / 8
double 4 / 4 (cl_khr_fp64)
Half-precision Floating-point support (n/a)
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 No
Support is emulated in software No
Correctly-rounded divide and sqrt operations Yes
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
Address bits 64, Little-Endian
Global memory size 5415717888 (5.044GiB)
Error Correction support No
Max memory allocation 2147483648 (2GiB)
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 2097152 (2MiB)
Global Memory cache line size 64 bytes
Image support Yes
Max number of samplers per kernel 16
Max size for 1D images from buffer 134217728 pixels
Max 1D or 2D image array size 2048 images
Max 2D image size 8192x8192 pixels
Max 3D image size 2048x2048x2048 pixels
Max number of read image args 128
Max number of write image args 128
Local memory type Global
Local memory size 1048576 (1024KiB)
Max number of constant args 8
Max constant buffer size 1048576 (1024KiB)
Max size of kernel argument 1024
Queue properties
Out-of-order execution Yes
Profiling Yes
Prefer user sync for interop Yes
Profiling timer resolution 1ns
Execution capabilities
Run OpenCL kernels Yes
Run native kernels Yes
printf() buffer size 16777216 (16MiB)
Built-in kernels (n/a)
Device Extensions cl_khr_byte_addressable_store 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_3d_image_writes cl_khr_fp64 cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_fp64
NULL platform behavior
clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Portable Computing Language
clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Success [POCL]
clCreateContext(NULL, ...) [default] Success [POCL]
clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) Success (1)
Platform Name Portable Computing Language
Device Name pthread-AMD A6-6310 APU with AMD Radeon R4 Graphics
clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) Success (1)
Platform Name Portable Computing Language
Device Name pthread-AMD A6-6310 APU with AMD Radeon R4 Graphics
clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform
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 Portable Computing Language
Device Name pthread-AMD A6-6310 APU with AMD Radeon R4 Graphics
ICD loader properties
ICD loader Name OpenCL ICD Loader
ICD loader Vendor OCL Icd free software
ICD loader Version 2.2.12
ICD loader Profile OpenCL 2.2
Please do let me know if I should provide any further information.
Looking forward to working with opencl soon. Thanks in advance.

Radeon and AMDGPU refer to two generations of AMD drivers. Radeon works on older GPUs and AMDGPU on newer ones. Neither implements OpenCL for CPUs (x86-64). Therefore you do not have an OpenCL implementation for your CPU.
That being said, AMD started dropping the OpenCL implementation for their CPUs for a while, though ROCm still seems to support it, somehow, as the documentation mentions CPUs only in one image, everything else being about GPUs. That is also true of the supported hadware list on their Github.
However, there is still pocl, which uses LLVM to target various devices, including x86-64.

Related

NVIDIA Shield - USB to HDMI

SHORT QUESTION:
Will a usb(male) to hdmi(female) adaptor work with NVIDIA Sheild?
Full Question:
I am trying to connect my surround sound hifi with my nvidia shield separately to my TV. Would a usb to hdmi work on the nvidia shield to pass the audio through. Any issues with drivers?
End Goal:
To connect 4k to TV and separate 5.1 audio to hifi box
Currently Tried:
HDMI splitter - it only chooses the lowest audio output which is the TV (2.0) not the required 5.1
Notes:
Hifi box supports hdmi passthrough but only at 1080p
Hifi box (2012 pioneer, INPUTS: HDMI, OPTICAL COAXIAL)

Which dpdk version is suitable for --- Intel Corporation "82541PI" (NIC) Gigabit Ethernet Controller (rev 05) and i am running dpdk on ubuntu 18.04

I am trying to run dpdk(19 or latest version) on ubuntu host which is having two NIC(Intel).
But i can see only one port, i mean to say dpdk detecting only one NIC.
The NIC (Intel Corporation "82541PI" Gigabit Ethernet Controller (rev 05)) which is not detected by dpdk.
So, please can any one help me that exactly which dpdk version support to this physical NIC(82541PI).
If any one can help me, it would be a great favour.
Likely NIC 82541PI is not supported in mentioned DPDK version, supported Intel based NIC hardware can be found here

List UART -> COM converter in Windows Device Portal

I have Raspberry Pi 3 plate with connected USB to UART (COM) converter.
The power led on the USB stick is ON.
I can not find the converter in Windows Device Portal.
In both: connected and disconnected states I see just two UART related records in Device Manager:
(ID:ACPI\BCM2835\0, Class:System, Manufacturer:Microsoft, StatusCode:25165834)
>BCM283x Mini UART Serial Device
(ID:ACPI\BCM2836\0, Class:Ports, Manufacturer:Microsoft, StatusCode:25182218)
>ARM PL011 UART Device Driver
(ID:ACPI\BCM2837\4, Class:System, Manufacturer:Microsoft, StatusCode:25165834)
Also I use git diff between saved device lists and there is no difference between the case I connect USB stick and disconnect it.
Where can I see the device in the list?
UPDATE
Here I print all found devices:
First you need make sure your USB to UART (COM) converter is supported on Windows IoT Core. Please check the hardware compatibility list. The CP2102 USB 2.0 to TTL Module Serial Converter is supported.
I use CP2102 USB to UART Bridge Converter and it also works. Use the SerialUART sample can list two device: one is on-board PL011 UART Device and the other is mine.
From device portal:

insufficient frame rate detected from Kinect

I have a Kinect 2 that runs at a framerate around 5-7 FPS (sometimes it peaks at 15 fps)
The system is an HP laptop, G3 i7-6820HQ, 8 gb memory, with an intel graphics 530 and an Nvidia Quaddro M1000M on Windows 10 Enterprise. As far as I can tell the system should be powerful enough to run the kinect at a better framerate. I've run the kinect on a another machine equipped with just an intel GPU, and it runs at a similar framerate, so I'm suspecting that it doesn't utilize the NVIDIA GPU.
I've followed the steps for multi-gpu systems outlined here:
https://social.msdn.microsoft.com/Forums/en-US/20dbadae-dcee-406a-b66f-a182d76cea3b/troubleshooting-and-common-issues-guide?forum=kinectv2sdk
but without any effect
Any ideas?
EDIT:
It seems to me that the kinect is indeed using the nvidia card:
Any other ideas?
I also had a problem with my frame rate. I was plugged into a low-speed USB port on my computer. Simply switching to a high-speed USB port solved the problem.

does usb 3.0 port support usb 2.0 devices for laptop

i am going to buy a Seagate 2 TB Back Up Plus Portable 2.5 inch Drive USB 3.0 2 TB External Hard Disk. But I have a DELL Inspiron 15r laptop, which is USB 2.0. Do USB 3.0 ports support USB 2.0 devices?
Yes they are backwards compatible see Here >>
Slightly unrelated to programming however...