【问题标题】:How to force Discrete GPU in electron.js?如何在 electron.js 中强制离散 GPU?
【发布时间】:2019-06-25 03:10:15
【问题描述】:

更新:我还看到文档和讨论,它必须始终使用独立 GPU,但事实并非如此,它始终使用内部 GPU。

electron.js 应用程序中需要使用离散GPU,以防有集成和离散,如何在Electron 中强制使用?

在 c++ 中可以这样做:

extern "C" 
{
  __declspec(dllexport) unsigned long NvOptimusEnablement = 0x00000001;
  __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;
}

如何在 electron.js 中做到这一点?

【问题讨论】:

标签: electron webgl gpu


【解决方案1】:

对于当前的 Electron.js/WebGL,没有机制可以强制执行此操作。但是,您不需要这样做,因为在离散 GPU 上运行是默认设置。

【讨论】:

  • 它运行 id 在内部 GPU 上执行的任何操作,所以不知道它必须做什么,但至少对于 WebGL 来说这是一个问题,知道如何解决这个问题吗?
【解决方案2】:

我发现,您可以通过设置特殊的 windows 环境变量来静默重启应用程序,这会强制进程使用专用 GPU。

const { spawn } = require('child_process');

// Restart with force using the dedicated GPU
if (process.env.GPUSET !== 'true') {
  spawn(process.execPath, process.argv, {
    env: {
      ...process.env,
      SHIM_MCCOMPAT: '0x800000001', // this forces windows to use the dedicated GPU for the process
      GPUSET: 'true'
    },
    detached: true,
  });
  process.exit(0);
}

【讨论】:

    猜你喜欢
    • 2014-06-09
    • 1970-01-01
    • 2018-05-04
    • 2023-02-03
    • 1970-01-01
    • 1970-01-01
    • 2021-06-04
    • 1970-01-01
    • 2017-03-01
    相关资源
    最近更新 更多