- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
有没有什么方法可以使用 Java API 检索我的显卡适配器的信息?
我知道 DirectX 可以轻松做到这一点,但是,我只是想知道 Java 是否可以做到这一点......?
如下图所示.. DirectX 找到集成到我的硬件中的 GPU 适配器,以及它支持的分辨率列表。
我的问题是,是否有 Java 可以执行此类操作的 API?我真的很想知道 Java 是否能够获取有关视频卡的信息。
谢谢。
最佳答案
正如@Sergey K. 在他的回答中所说,有几种方法可以做到这一点。其中之一是使用 dxdiag
工具(显然它只能在 Windows 上工作),特别是 dxdiag/t
变体,它将输出重定向到给定文件。然后您可以处理该文件以获取所需的信息:
public static void main(String[] args) {
try {
String filePath = "./foo.txt";
// Use "dxdiag /t" variant to redirect output to a given file
ProcessBuilder pb = new ProcessBuilder("cmd.exe","/c","dxdiag","/t",filePath);
System.out.println("-- Executing dxdiag command --");
Process p = pb.start();
p.waitFor();
BufferedReader br = new BufferedReader(new FileReader(filePath));
String line;
System.out.println(String.format("-- Printing %1$1s info --",filePath));
while((line = br.readLine()) != null){
if(line.trim().startsWith("Card name:") || line.trim().startsWith("Current Mode:")){
System.out.println(line.trim());
}
}
} catch (IOException | InterruptedException ex) {
ex.printStackTrace();
}
}
生成的文件如下所示:
输出看起来像这样:
-- Executing dxdiag command --
-- Printing ./foo.txt info --
Card name: Intel(R) HD Graphics Family
Current Mode: 1366 x 768 (32 bit) (60Hz)
关于java - 如何在Java上检索显卡信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18379091/
我想为我的应用程序设计背景图像。图像应填满 iPhone 屏幕。什么图像尺寸适用于 3G 和 4G? A) 320 x 480。B) 640 x 960。 我更喜欢使用 B,因为它的质量更高,3G 会
我需要为我的类(class)作业编写一些关于低级视频卡控制的应用程序。例如 - 温度、工作 SM、管理对它们的访问等。操作系统 linux、tesla c1060。 你能给我一些建议在哪里搜索这类信息
我目前在安装带有 gpu 支持的 tensorflow 时遇到一些问题。 这是我遵循的指南。 安装 NVIDIA CUDA(预装) 安装 NVIDIA cuDNN(预装) 安装 bazel wget
我对如何使用一些视频卡驱动程序 API 读取 GPU 温度(图形处理单元,显卡主芯片)的方法感兴趣? 每个人都知道有两个不同的芯片制造商(至少是流行的)- ATI 和 nVIDIA - 因此有两种不同
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve thi
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许在 Stack Overflow 上提出有关通用计算硬件和软件的问题。您可以编辑问题,使其成为
我的笔记本电脑有两个显卡,一个是高性能 NVIDIA 显卡,另一个是板载 Intel 显卡。然而,当我调用 IDirect3D9::GetAdapterCount 时,它只找到板载 Intel 适配器
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 5 年前。
我想使用两个 xserver,每个都在一个单独的显卡上运行,实际上我正在使用两个显示器,我的计算机上安装了两个不同的显卡,如下所示: root@ziomario-Z87-HD3:/home/zioma
当我在我的容器中时,我运行 lspci | grep -i nvidia 并没有显示。 当我从 NVIDIA 提供的示例中运行 ./deviceQuery 时,我得到 no CUDA-capabl
我有一台带有 Intel GMA 3150 显卡的 Asus Eee PC,操作系统是 Windows 7 Starter,并且安装了 DirectX 11。 当我运行我的项目时,它使用 XNA 4.
我知道 Quadro 2000 是 CUDA 2.1。我的电脑规范如下: Quadro 2000,配备 16GB RAM。 至强(R) CPU W3520 @2.67GHz 2.66GHz Windo
我需要帮助将 C++ 头文件转换为 Delphi。 下面是原始头文件和我的Delphi翻译。 C++ header : #if _MSC_VER > 1000 #pragma once #endif
我在配备 Radeon Pro 560X 4096 MB 和 Intel UHD Graphics 630 1536 MB 的 MacBook Pro 上用 python 运行一些 Keras/ten
如何在 c sharp 中获取我的显卡的共享系统内存、总可用内存和系统显存? 最佳答案 我会考虑使用 WMI ,特别是 Win32_VideoController目的。 WMI Code Creato
PowerVR SGX 卡中与纹理内存相关的“共享内存”到底是什么。没有与此相关的适当文档。 通常对于 iphone 上的应用程序(假设 3gs/ipad PowerVR SGX 卡),它被限制为使用
以防我购买带有集成英特尔® UHD 显卡 620 的 Thinkpad 并在其下安装 Ubuntu Linux 和 TensorFlow。然后,稍后我添加带有 Nvidia GPU 的 eGPU。我应
我是 TF 新手,想从源代码编译,因为我的桌面没有支持 AVX 指令的 CPU 或 GPU。我的系统有一个 Intel i7 930 处理器(来自 nehalem 家族的 Bloomfield)和一个
因此,在 64 位 Ubuntu 上,我正在使用 LWJGL 进行开发,但是在 Windows(和 Mac,尽管我测试的更少)上运行良好的代码在我的新机器上出现了问题。 基本上,如果我尝试初始化全屏模
我是一名优秀的程序员,十分优秀!