Запуск Java (OpenGL) приложений с Optirun/Primusrun

Автор RebelCoderRU, 19 февраля 2017, 11:47:26

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

RebelCoderRU

Привет ребята.

Может кто сталкивался с проблемой при запуске Java приложений на на системе с Nvidia Optimus (Bumblebee, optirun/primusrun).
Все приложения и игры отлично запускаются с primusrun и работают корректно.

Java приложения не запускаются с primusrun и выдают ошибку:


primusrun ./mytest
Caught handled GLException: EGLGLXDrawableFactory - Could not initialize shared resources for EGLGraphicsDevice[type .egl, v0.0.0, connection :0, unitID 0, handle 0x0, owner true, ResourceToolkitLock[obj 0x7d2101ba, isOwner true, <3823807a, 490328e>[count 1, qsz 0, owner <main-SharedResourceRunner>]]] on thread main-SharedResourceRunner
    [0]: jogamp.opengl.egl.EGLDrawableFactory$SharedResourceImplementation.createSharedResource(EGLDrawableFactory.java:518)
    [1]: jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:353)
    [2]: java.lang.Thread.run(Thread.java:745)
Caused[0] by GLException: Failed to created/initialize EGL display incl. fallback default: native 0x0, error 0x3001/0x3001 on thread main-SharedResourceRunner
    [0]: jogamp.opengl.egl.EGLDisplayUtil.eglGetDisplayAndInitialize(EGLDisplayUtil.java:297)
    [1]: jogamp.opengl.egl.EGLDisplayUtil.access$300(EGLDisplayUtil.java:58)
    [2]: jogamp.opengl.egl.EGLDisplayUtil$1.eglGetAndInitDisplay(EGLDisplayUtil.java:320)
    [3]: com.jogamp.nativewindow.egl.EGLGraphicsDevice.open(EGLGraphicsDevice.java:125)
    [4]: jogamp.opengl.egl.EGLDrawableFactory$SharedResourceImplementation.createEGLSharedResourceImpl(EGLDrawableFactory.java:532)
    [5]: jogamp.opengl.egl.EGLDrawableFactory$SharedResourceImplementation.createSharedResource(EGLDrawableFactory.java:516)
    [6]: jogamp.opengl.SharedResourceRunner.run(SharedResourceRunner.java:353)
    [7]: java.lang.Thread.run(Thread.java:745)
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x0000000000000000, pid=12953, tid=0x00007f4728793700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_121-b13) (build 1.8.0_121-b13)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.121-b13 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  0x0000000000000000
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/jurisl/sketchbook/mytest/application.linux64/hs_err_pid12953.log
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.java.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Aborted


Поиски в сети не помогли.

http://pastebin.com/MiU5SNw2

Юрий.
TOX:6620CD1FED00D371FD4F6D1307484B774AF4772F963AAF121414727565B9607480DD1C8EB221
Freenode:RebelCoder
Wire: @RebelCoder

mrgoodvin

#1
Не сталкивался, но если есть возможность подправить код то можно глянуть это: http://forum.jogamp.org/EGLGLXDrawableFactory-JVM-crash-x11-display-td4037534.html. Или как еще один вариант, пробовать другую версию jre или альтернативу - JVM for OpenJDK, using Zero/Shark, или JVM for OpenJDK, using JamVM. Кстати, откуда пятницосреда ставилась? Еще можно перепробовать флаги, вот некоторые http://blog.headius.com/2009/01/my-favorite-hotspot-jvm-flags.html?cm_mc_uid=34105958547614817557597&cm_mc_sid_50200000=1487523640.