最初Java vm甚至都没有启动,但我通过编辑nsight.ini文件并删除
来解决这个问题。-XX:MaxPermSize=256m
并更新
-Dosgi.requiredJavaVersion
所以我现在获得启动画面并可以选择工作区目录。
我这样做了,并获得了一个进度条,但它很快就崩溃了,除了查看日志文件之外没有任何指示,其开头说:
!SESSION 2016-12-09 20:30:40.686 -----------------------------------------------
eclipse.buildId=unknown
java.version=9-internal
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_GB
Command-line arguments: -os linux -ws gtk -arch x86_64
!ENTRY com.nvidia.cuda.ide.build 4 0 2016-12-09 20:30:46.292
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.nvidia.cuda.ide.build [9]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.managedbuilder.core
-> Bundle-SymbolicName: org.eclipse.cdt.managedbuilder.core; bundle-version="8.3.0.201409172108"; singleton:="true"
org.eclipse.cdt.managedbuilder.core [108]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.core; bundle-version="[5.0.0,6.0.0)"
-> Bundle-SymbolicName: org.eclipse.cdt.core; bundle-version="5.7.0.nvidia-qualifier"; singleton:="true"
org.eclipse.cdt.core [88]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.7))"
at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
!ENTRY com.nvidia.cuda.ide.cdt 4 0 2016-12-09 20:30:46.294
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.nvidia.cuda.ide.cdt [10]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.managedbuilder.core; bundle-version="8.0.0"
-> Bundle-SymbolicName: org.eclipse.cdt.managedbuilder.core; bundle-version="8.3.0.201409172108"; singleton:="true"
org.eclipse.cdt.managedbuilder.core [108]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.core; bundle-version="[5.0.0,6.0.0)"
-> Bundle-SymbolicName: org.eclipse.cdt.core; bundle-version="5.7.0.nvidia-qualifier"; singleton:="true"
org.eclipse.cdt.core [88]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.7))"
at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
!ENTRY com.nvidia.cuda.ide.debug 4 0 2016-12-09 20:30:46.297
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.nvidia.cuda.ide.debug [11]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.core; bundle-version="5.3.0"
-> Bundle-SymbolicName: org.eclipse.cdt.core; bundle-version="5.7.0.nvidia-qualifier"; singleton:="true"
org.eclipse.cdt.core [88]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.7))"
at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
!ENTRY com.nvidia.cuda.ide.editor 4 0 2016-12-09 20:30:46.309
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.nvidia.cuda.ide.editor [12]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.ui; bundle-version="[5.8.0.nvidia,5.8.1)"
-> Bundle-SymbolicName: org.eclipse.cdt.ui; bundle-version="5.8.0.nvidia-qualifier"; singleton:="true"
org.eclipse.cdt.ui [111]
Unresolved requirement: Require-Bundle: org.eclipse.cdt.core; bundle-version="[5.2.0,6.0.0)"
-> Bundle-SymbolicName: org.eclipse.cdt.core; bundle-version="5.7.0.nvidia-qualifier"; singleton:="true"
org.eclipse.cdt.core [88]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.7))"
at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
!ENTRY com.nvidia.cuda.ide.remote 4 0 2016-12-09 20:30:46.311
!MESSAGE FrameworkEvent ERROR
!STACK 0
org.osgi.framework.BundleException: Could not resolve module: com.nvidia.cuda.ide.remote [13]
Unresolved requirement: Import-Package: org.eclipse.remote.core
-> Export-Package: org.eclipse.remote.core; bundle-symbolic-name="org.eclipse.remote.core"; bundle-version="1.0.0.201409111520"; version="0.0.0"
org.eclipse.remote.core [263]
Unresolved requirement: Require-Capability: osgi.ee; filter:="(&(osgi.ee=JavaSE)(version=1.7))"
at org.eclipse.osgi.container.Module.start(Module.java:434)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1561)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
我使用他们在网站上提供的NVIDA .deb软件包库,与cuda同时安装了nsight。
我使用以下方法添加了它:
dpkg -i <cuda_file>.deb
并使用以下方式安装:
sudo apt update
sudo apt install cuda
普通日食安装工作完美,所以任何人的建议都会非常感激!
答案 0 :(得分:9)
事实证明,openjdk-8-jdk软件包并不是使用nsight所需要的。
您需要安装oracle-java8-installer:
sudo apt install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt update
sudo apt install oracle-java8-installer
一旦完成,nsight奇迹般地栩栩如生!
答案 1 :(得分:4)
增加对本·特纳答案的评论,这对我有用(Ubuntu 18.04,CUDA 10.1)。从Nvidia论坛上的this线程开始,只需安装:
sudo apt install openjdk-8-jdk
就是这样。
从终端运行:
nsight -vm /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
如果要从GUI启动Nsight,请像这样修改/usr/share/applications/nsight.desktop
Exec=/usr/local/cuda-10.1/bin/nsight -vm /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
答案 2 :(得分:1)
解决方案摘要:
当前针对Nsight Ecplipse Edition使用Java 7/8,而不是Java 9/10/11。
详细信息:
我在Ubuntu 18.04上安装了CUDA 10.0,并自动安装了Nsight 10.0和java-11-openjdk(其Java版本实际上是10.0.2),我也收到了此错误。然后我发现,当我使用oracle jdk 7/8(建立从/ usr / bin / java到我的oracle jdk 7/8路径的链接)时,Nsight运行良好,但jdk 11却不行。
并且通过在错误日志中查看Java 9,所以我们现在应该将Java 7/8而不是9/10/11用于Nsight,因为Nsight Eclipse及其插件不是最新的适用于Java 9/10/11。
注意:
您可能需要更改“ /usr/share/applications/nsight.desktop”中的exec cmd(“ Exec = / usr / local / cuda-10.0 / bin / nsight”),以避免系统出现其他问题Java兼容性。
我只是将cmd更改为“ Exec = / ddisk / program / cuda / nsight.sh”,然后在shell脚本中设置java 7/8 home,然后运行“ nsight”。因为如果我直接在Ubuntu 18.04上更改/ usr / bin / java链接,它将导致Thunderbird的安全消息扩展名“ Enigmail”(pep-json-server)占用大量CPU和内存。
#!/bin/bash
# nsight.sh
# Java paths.
# NOTE: We should use java 7 or 8 for Nsight Eclipse Edition 10.0.
#export JAVA_HOME=/ddisk/program/java/latest
export JAVA_HOME=/ddisk/program/java/java7
#export JAVA_HOME=/ddisk/program/java/java8
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
# Run the Nsight Eclipse.
#nsight
/usr/local/cuda/bin/nsight