0x00 楔子

最近客户在使用我们的的三维可视化平台的时候,总是会出现浏览器崩溃,webgl context lost的情况。 这种请一般出现在电脑配置很低的电脑上,比如没有独显,只有很小现存的集成显卡的电脑。

但是客户的电脑大部分都是配置还不错,有独立的显卡。

经过摸索和分析,最终发现了问题所在:就是电脑根本没有用上独立显卡,也就是说虽然硬件上有独立显卡,但是实际上三维程序还是用的集成显卡,导致跑不动三维程序。

如何判断三维程序是否用上了独立显卡呢,其实我们可以打开电脑的任务管理器,打开"性能"标签,一般可以看到两个GPU(Intel开头的是集成显卡,NVIDIA开头的是独立显卡)

从图中,可以看出 GPU0(集显) 使用率搞到88%,而GPU1(独显) 使用率却未0,表示三维应用程序未使用独显。

0x01 原因探究

经过测试,发现电脑不使用独立显卡的原因大概分为几类:

驱动未正确安装

独立显卡的驱动未安装,或者显卡的驱动未正确安装,导致电脑的独立显卡不能使用。 可以通过电脑的设备管理器查看是否又独立显卡的适配器,如果没有,多半是未有安装显卡驱动。

显示器未接独立显卡

如果是台式机接主板自带的VGA/DVI/HDMI都是核显负责输出和运算,不接独显的接口不能发挥任何作用。反之,接了独显,那么CPU核显也会自动屏蔽不发挥作用。典型的例子就是你接了独显,比如N卡,只会有一个NVIDIA控制面板,而不会再出现一个英特尔核芯显卡控制界面。

如果是笔记本的话,一般带DP接口的一定是独显接口,其他接口如HDMI,VGA都是核显输出,但是笔记本硬性规则都是核显负责画面输出,独显负责需要运行的3D应用程序,这是英特尔强制规定的,所以笔记本除了有N卡独显的NVIDIA控制面板以外,还会有英特尔核芯显卡控制面板。值得注意的是,在6代以后的笔记本,有些bios提供了屏蔽核显的选项,有些是可以允许自由切换,或者一些超高端的笔记本,显卡为1070,1080甚至1080 SLI的,直接出厂就屏蔽了核显,没有这个核显的需要。测试都表明,核显在1070以上的笔记本机型,某些优化不到位的游戏会拖累独显性能,导致帧数下降,整体也比单独运行独显帧数要稍低。

程序指定使用集显

笔记本电脑,电脑可以同时使用集显和独显。

打开电脑NVIDIA 控制面板,可以指定程序使用独显还是集显,如下图所示:

如果指定了浏览器,比如chrome使用集成显卡,那么webgl也不会用到独立显卡。

0x02 如何解决

其实看了前面的“原因探究”,可以很方便的给出相应的解决方案。

如果未安装显卡驱动,就安装显卡驱动即可。安装的时候,需要注意选择正确的版本。

如果是台式机,检查显示器接头是否接在独立显卡的接口上,如果接在集成显卡的接口上,改变接口即可。

如果是程序指定了集显,改成使用独显即可。

过程不在详述。

0x03 结语

如果发现电脑配置不错,但是简单的三维应用很卡,多半是上述原因。

如果对可视化感兴趣,可以和我交流,微信541002349。

关注公号“ITMan彪叔” 可以及时收到更多有价值的文章。

webgl未使用独立显卡报告的更多相关文章

  1. Windows 同一时候开启核心显卡与独立显卡(不接显示器启动核芯显卡)

    採用Mp4视频压缩格式编码时,非常耗CPU.所以决定上显卡.进行显卡加速.选择了Intel核心显卡进行视频编码加速,效果非常理想.但如今的问题是:在PC上如何同一时候开启核心显卡与独立显卡.经过几番周 ...

  2. CentOS7下安装NVIDIA独立显卡驱动出现X service error问题解决方法

    问题症状: 最近在CentOS7下安装NVIDIA独立显卡驱动的过程中出现X service error问题,如下图所示: 解决方法: 0.到NVIDIA 官网上下载驱动文件(.run 格式) : N ...

  3. DELLR720 独立显卡DVI转VGA问题

    第一种情况:DELLR720默认不接独立显卡,直接用板载VGA输出,不需要调system blos 第二种情况:DELLR720接独立显卡,需要DVI输出,需要更改系统blos system blos ...

  4. 解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境

    原文地址:解决 Ubuntu 18.10 使用较新的独立显卡输出无法初始化图形界面并配置深度学习开发环境 0x00 配置 硬件 OS: Ubuntu 18.10 Base Board: ASUS WS ...

  5. ubuntu频繁死机--独立显卡问题

    问题:笔记本安装ubuntu时以及装好后有时会出现花屏.死机的问题,系统报错 *ERROR* UVD not responding, trying to reset the VCPU!!! *ERRO ...

  6. manjaro 配置 独立显卡驱动

    参考 https://blog.csdn.net/weixin_42205310/article/details/81905293 尝试多次 只有这篇配置成功. ①先解决依赖sudo pacman - ...

  7. 让游戏以高性能GPU(独立显卡)运行

    在EXE中导出全局变量: N卡: extern "C" { __declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001 ...

  8. 游戏开发人员眼中的Unity 3D网页游戏測评报告

    眼下.能够实现3D页游的主流技术有Silverlight.XNA.Flash.HTML5和Unity3D. 当中.Unity3D作为一款专注于3D游戏的浏览器插件.最近在国内外页游产品线骚动异常:本人 ...

  9. 学废了系列 - WebGL与Node.js中的Buffer

    WebGL 和 Node.js 中都有 Buffer 的使用,简单对比记录一下两个完全不相干的领域中 Buffer 异同,加强记忆. Buffer 是用来存储二进制数据的「缓冲区」,其本身的定义和用途 ...

随机推荐

  1. Callable接口及Futrue接口详解

    Callable接口 有两种创建线程的方法-一种是通过创建Thread类,另一种是通过使用Runnable创建线程.但是,Runnable缺少的一项功能是,当线程终止时(即run()完成时),我们无法 ...

  2. Linux运行级别及解释

    Linux中有七个运行级别,分别为0~7 0级:关机 1级:单用户(找回丢失密码) 2级:多用户无网络 3级:多用户有网络,最常用的级别 4级:保留,目前Linux暂无使用 5级:图像界面 6级:重启 ...

  3. AppiumForWin安装

    尝试安装Windows版本的Appium 参考:http://www.cnblogs.com/fnng/p/4540731.html 第一步:安装node https://nodejs.org/en/ ...

  4. Solution -「多校联训」朝鲜时蔬

    \(\mathcal{Description}\)   Link.   破案了,朝鲜时蔬 = 超现实树!(指写得像那什么一样的题面.   对于整数集 \(X\),定义其 好子集 为满足 \(Y\sub ...

  5. 再也不用担心重装VSCode了

    1. 关于Settings Sync插件 Setings Sync插件可以同步你的VSCode配置到Github Gist,当你更换电脑重新搭建VSCode环境的时候,直接使用该插件拉取你之前同步的配 ...

  6. MySQL架构原理之存储引擎InnoDB数据文件

    MySQL架构原理之体系架构 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)中简单介绍了MySQL的系统文件层,其中包含了数据文件.那么InnoDB的数据文件是如何分类并存储的呢? 一. ...

  7. 聊聊几个阿里 P8、P9 程序员的故事

    大家好,我是对白. 阿里 P8 程序员年薪百万已经是公开的秘密了,有人关心他们年薪百万,而我更加关注阿里这些 P8.P9 程序员的成长故事,在聊这些大牛的故事之前,跟大家稍微简单聊下阿里技术人等级制度 ...

  8. [LeetCode]1365. 有多少小于当前数字的数字

    给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目. 换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 ...

  9. docker迁移工作目录

    yum安装的docker 工作目录在系统盘,迁移到数据盘 首先需要停止docker服务 systemctl stop docker.service 通过命令df -h 先去看下磁盘大概的情况,找一个大 ...

  10. Lesson1——Tensor

    Tensor Method 描述 is_tensor(obj) 如果 obj 是 PyTorch 张量,则返回 True : is_storage(obj) 如果 obj 是 PyTorch 存储对象 ...