A: Use vivante GPU on IMX6 with 4.14 kernel - gpu

I am working on Phytec based custom board, While porting Phytec BSP from krogoth to thud, I am unable to use gpu based rendering.
Krogoth:
Display -> imx-drm
libegl provider -> imx-gpu-viv
Thud:
Display -> imx-drm
libegl provider -> mesa
I am using one GUI application which requires egl library. It is throwing below error
INFO [0.747]:GLES 2.0: initialize native API
INFO [0.748]:GLES 2.0: Initialize EGL display
WARN [0.749]:eglGetDisplay: failed.
ERROR [0.749]:Can't initialize the display
Please explain GPU driver relation with mesa and imx-gpu-viv and application to use it.

I recently passed from Pyro to Warrior on an iMX6 CPU, and I had some trouble with the GPU. The driver was not compiled at all, and the Gstreamer GPU plugins were not working. It finally worked with the following configuration:
I added to my local.conf (or machine.conf) the line:
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += " kernel-module-imx-gpu-viv"
I also added the GPU config on my kernel defconfig:
CONFIG_MXC_GPU_VIV=m
Hope it helps.

Related

dpdk igb_uio driver not loading

I am trying to load the igb_uio driver into my kernel, and I am getting the error:
insmod: ERROR: could not insert module igb_uio.ko: Invalid module format
I have been sleuthing around and am finding generally the answer to this is usually a kernel version mismatch. I have checked my kernel version with uname -r and it matches the kernel version from modinfo igb_ui.ko
Any ideas what else might be going on?
Thanks,
Adam

How to close Karate.robot session running on windows machine, getting some thread error

I had a question regarding karate.robot do we have any method or function to shut down or close or quit Karate.robot session like driver. quit or close?
it seems some threads are occupied getting following error many times:
#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000065a03e06, pid=11236,
tid=8836
#
# JRE version: Java(TM) SE Runtime Environment (8.0_25-b18) (build 1.8.0_25-b18)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.25-b02 mixed mode windows-amd64
compressed oops)
# Problematic frame:
# V [jvm.dll+0x4c3e06]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions
of Windows
#
[thread 6836 also had an error]
[.error occurred during error reporting , id 0xc0000005]
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
#
Dll Process Attached
Loading jawt.dll
Dll Process Detach
Process finished with exit code 1
No, we don't see a need. You typically start the Robot instance and it stays up until the end of your entire suite. Maybe you should try install the JDK 64-bit or 32-bit.
You are welcome to contribute code to improve anything if required. So far no one has reported any problems like this. Maybe you are trying to do things in parallel threads which is not supported. Provide a way to replicate if you can: https://github.com/intuit/karate/wiki/How-to-Submit-an-Issue
EDIT - one area you can help us investigate is if we need to do more to release JNA resources after a Scenario in this method.
Also see this answer: Java JNA: JRE crashes after application completes

No OpKernel was registered to support Op 'LRNGrad' on Android

I developed some Tensorflow-based C++ application that run successfully on Linux. Now I'm trying to developed Android version but I can't fix the following error: Invalid argument: No OpKernel was registered to support Op 'LRNGrad' with these attrs. Registered kernels:
[[Node: gradients/localresponsenorm1_grad/LRNGrad =
LRNGrad[T=DT_FLOAT, alpha=0.0001, beta=0.5, bias=2, depth_radius=5]
(gradients/maxpool1_grad/MaxPoolGrad,conv2d2, localresponsenorm1)]]
I've added to Android Build all kernels available for Android by means of //tensorflow/core/kernels:android_all_ops in core/kernels/BUILD and even included lrn_op.cc to build separately but there is no effect.
My Linux build works fine. What should I do? Thanks.
Does it actually say <no registered kernels> in your output? I'm assuming this just got interpreted as HTML and rendered invisible.
Which library are you depending on on for your Android app? tensorflow/core:android_tensorflow_lib should already contain this kernel. (android_all_ops is not actually used for any targets internal to TensorFlow, which is somewhat misleading).

Segmentation fault with Lucene and MMapDirectory

we are using NIOFSDirectory instead of MMapDirectory in an intensive test load for indexing. But we are still getting a SIGSEV with MMapDirectory. Is there anything else I should be looking for? This is a Linux 64 bit machine. Head of the stack trace follows:
Please let me know what more info would be helpful.
Thanks...
A fatal error has been detected by the Java Runtime Environment:
SIGSEGV (0xb) at pc=0x00002aaaab285ea7, pid=2408, tid=1128642880
JRE version: 6.0_25-b06
Java VM: Java HotSpot(TM) 64-Bit Server VM (20.0-b11 mixed mode linux-amd64 compressed >oops)
Problematic frame:
J org.apache.lucene.store.MMapDirectory$MMapIndexInput.readByte()B
You are most likely closing your IndexReader while other threads are still using it?
Lucene tries to catch this mis-use but it's detection is best-effort only.
You could also try calling MMapDirectory.setUseUnmap(false) to turn off unmapping; this should prevent the SIGSEGV.

What does the 'native buffer' mean in JVM?

I've got the below error from WebSphere Application Server's SystemOut.log file:
[5/11/12 8:13:46:291 GMT+08:00] 000063c0 WebApp E [Servlet Error]-[ICMResourceManager]: java.lang.OutOfMemoryError: unable to allocate 79683 bytes for native buffer
at java.io.FileOutputStream.writeBytes(Native Method)
at java.io.FileOutputStream.write(FileOutputStream.java:290)
at com.ibm.mm.icmrm.storage.RMOutputStream.write(RMOutputStream.java:65)
at com.ibm.mm.icmrm.storage.RMDataTransfer.copyData(RMDataTransfer.java:150)
at com.ibm.mm.icmrm.storage.filesystem.FileSystem.store(FileSystem.java:104)
It seems the native OOM issue. I have a question here, is it the 'native buffer' here same with 'direct byte buffer'? Can I try to enlarge 'native buffer' size by reset property XX:MaxDirectMemorySize? BTW, what's the default value for it?
Or can I set this property -Dcom.ibm.nio.DirectByteBuffer.AggressiveMemoryManagement=true to make native memory space dynamic?
WAS platform information:
WebSphere Platform 6.1 [ND 6.1.0.27 cf270937.16] running with process name cmrmCell01\cmrmNode01\icmrm1 and process id 1802306
Detailed IFix information: Please use the versionInfo command to view this information
Host Operating System is AIX, version 5.3
Java version = 1.5.0, Java Compiler = j9jit23, Java VM name = IBM J9 VM
I know this isn't much of an answer, but see if this article, Understanding how the JVM uses native memory on AIX, has anything useful.