How to get the Intel UHD Graphics 605 i915 videocard working with Vulkan? - video-processing

i have an Intel UHD Graphics 605 (i915) and i want to use it with Vulkan/ncnn.
The information from this site is, that Vulkan should work with version 1.1.103:
https://technical.city/de/video/UHD-Graphics-605
My vulkaninfo tells me:
Vulkan Instance Version: 1.2.131
Could anybody help me with experience?
Does Ubuntu have the correct driver for the graphic card? I don’t know how to get this info.
Does Vulkan use the GPU for ncnn (https://github.com/Tencent/ncnn) ?
My system:
https://linux-hardware.org/?probe=5a1d628672

Related

Mac hardware to write Codename One native interfaces

I need a Mac to write a native Codename One interface for iOS. I would like to use it in the future for the same purpose. I need to be able to open with Xcode the native code generated by the build server, add the implementation in Objective-C of the native methods and test the code on my iPhone X, to connect to the Mac via usb.
I found the following refurbished computer, I would like to ask you a secure confirmation that it goes well for the above purposes, before buying it:
Model MacBook Pro 13″ (MacBookPro9,2) - A1278 - MD101LL/A - 2012
Intel Core i5 3210M "Ivy Bridge" 2.5GHz "Ivy Bridge" processor with turbo boost up to 3.1GHz
Installed Ram 8 GB PC3-12800 (1600 MHz) DDR3 SO-DIMM
Intel HD Graphics 4000 integrated video card - 1.5GB of shared video memory
Installed Hard Disk Drive 500GB SATA 2.5″ HDD
13.3 inch (diagonal) LED backlit display - 1280×800 pixels
Operating System macOS 10.15 Catalina
Keyboard Layout QWERTY US - International
2x USB 3.0, 2x Thunderbolt, 1x SD-card slot, 1x Jack 3.5″ Devices
Right now seems OK, my one serious concern is the SATA disk and not SSD. Up until recently I used the 2013 version with 16gb, SSD and i7 which is still a great machine (screen broke in a fall on hard tile floor).
I can't tell if it will work well in the future but for now the important line is:
Operating System macOS 10.15 Catalina
That's the latest. So it will be able to run the latest xcode which should be compatible for Codename One development for a while.
Since this is an 8 year old machine and Apple is transitioning to ARM devices don't expect more than 2 years from this machine though.
Another option you can consider is a Mac mini. They are often an amazing value for the money, even when new.

GPU ARM Mali and OpenCL driver

I have my TinkerBoard powered by an ARM-based Mali™-T764 GPU. I am running Debian linaro v2.0.8 strech.
I am looking for an OpenCL support, how can I enable the GPU MALI with OpenCL 1.2 FP?
If you can advice me to update it I would appreciate it.
You need to install the binary ARM Mali drivers. How you do that, depends on the distro you're using. On Odroids for example, it comes installed with their Ubuntu.
Once you have it installed, it either comes with OpenCL enabled, or you can simply enable it: create a file /etc/OpenCL/vendors/mali.icd and put inside that file the path to the driver, e.g. on my Odroid it's /usr/lib/arm-linux-gnueabihf/mali-egl/libmali.so
So first i'd ask on whatever communication channels Debian Linaro has, how to install the binary drivers.

Vulkan SDK detects only 1 GPU at a time

I have an Optimus notebook (meaning it has two graphics cards; one integrated and one discrete (dedicated)). Both of them support Vulkan and I can use each of them individually on my code. But there is a problem, I can't list or use them both on the same program. I must select on which GPU it runs before running my code (on Windows: right click on "myProgram.exe" -> Run with graphics processor, on Linux: ./"myProgram" for integrated GPU and primusrun ./"myProgram" for discrete) and it detects only the one I run my code on even when both GPUs are active at the same time.
My GPUs are Intel UHD Graphics 630 and NVIDIA GeForce GTX 1050 Ti. I am using LunarG Vulkan SDK 1.1.92, Intel driver version 25.20.100.6326, NVIDIA driver version 416.32 on Windows and 415.25 on Linux. As C compiler and operating system, MSVC 1912 on Windows 10 and gcc 8.2.1 on Arch Linux. Vulkan runtime and ICD loaders are installed and I get the same result on both OSs.
Here is my code:
uint32_t deviceCount;
vkEnumeratePhysicalDevices(instance, &deviceCount, NULL);
printf("Found: %d\n", deviceCount);
VkPhysicalDevice *devices = malloc(deviceCount * sizeof(VkPhysicalDevice));
vkEnumeratePhysicalDevices(instance, &deviceCount, devices);
for(uint32_t deviceIndex = 0; deviceIndex < deviceCount; deviceIndex++)
{
VkPhysicalDeviceProperties deviceProperties;
vkGetPhysicalDeviceProperties(devices[deviceIndex], &deviceProperties);
printf("%s\n", deviceProperties.deviceName);
}
Here is the outputs I get:
If I run on integrated GPU:
Found: 1
Intel(R) UHD Graphics 630
If I run on dedicated GPU:
Found: 1
GeForce GTX 1050 Ti
What I am expecting is:
Found: 2
Intel(R) UHD Graphics 630
GeForce GTX 1050 Ti
And I should be able to pick either of them to use on my program without hassling with some driver level code or setting it on my OS before running. Vulkan is relatively low level API after all. Is there any way to force list all of the active GPUs on my system?
I'm not sure what you mean by
If I run on integrated GPU
versus
If I run on dedicated GPU"...
If you're going into the nVidia control panel and specifying a target GPU for your application, then you're seeing pretty much what I would expect... only that GPU exposed to your app.
I believe what you should be doing is setting it to auto-detect, and then ensuring that you're exporting the "Optimus Aware" flag in your binary. You should have something like this in your test code
extern "C" {
_declspec(dllexport) uint32_t NvOptimusEnablement = 0x00000001;
}
That should either cause Vulkan to see both GPUs, or force your application to automatically see only the discrete GPU, but without you having to do anything in the control panel, not sure which.

OpenCL, my GPU it's not capable?

I have an old computer, then I don't know if I can execute OpenCL codes on my PC; I've checked my GPU and I get this output:
When I execute OpenCL code, I get this error:
Finally, if I run clinfo, i get this:
I really don't know..It's a problem of libraries?Or my GPU cannot execute OpenCL codes?
Your GPU predates OpenCL. Beignet supports Ivybridge and later (https://www.freedesktop.org/wiki/Software/Beignet/#supportedtargets).
Your CPU also predates OpenCL. Intel's first release of their CPU-only OpenCL driver requires SSE4.1, but your CPU only has SSE3. If you really really need to get OpenCL to work on this machine, you may be able to install an old version (2.8) of the AMD OpenCL CPU driver if you can find it. Quote from http://boinc.berkeley.edu/wiki/OpenclCpu:
Intel's OpenCL support requires the SSE4.1 CPU feature (BOINC's event log shows you the list of your CPU's features).
If your host does not have SSE4.1 support, then you can install the AMD APP SDK 2.8 and it will install the AMD OpenCL CPU driver. Note that the AMD APP SDK v2.9 will NOT install it. You have to use 2.8 or earlier as they now bundle the OpenCL driver with the video driver instead of with the APP SDK. As AMD only keeps the last several versions on their archive page, you may want to grab both the 32 and 64 bit version of the v2.8 APP SDK now and keep them in a safe place.
Or maybe POCL or FreeOCL might cover you for the CPU.

RTAI installation into arm-9 with 3.4 kernel version

I want to configure RTAI for ARM9, I have hummingbird board which have 3.4 linux kernel version.
As I read different thread then i am understand that there is only linux 2.6 installation document available for ARM.
Please help me for this.

Resources