I feel hesitated to ask this question, but I cannot figure out a way to increase the performance.

enter image description here

The problem is about running this featured example on a computer with both Intel HD GPU and Nvidia GPU. If the computer only has a Nvidia GPU, everything is smooth and fine. However, if both GPUs are installed on the computer, the performance will be very poor due to the transparent rendering and the fact that Mathematica always use the Intel GPU for rendering. Even if I set Nvidia GPU as the default one to use for all programs and explicitly run Mathematica with Nvidia GPU, this example is still run with the Intel GPU...

I wonder if there is a way to fix this? Furthermore, can we explicitly tell Mathematica which GPU it should try to use by using a Style-like statement similar to this answer?

I am running on a windows 7 laptop with following configurations,

enter image description here enter image description here


I have reported this problem to Wolfram.

  • $\begingroup$ Sounds like something of a driver problem - can you switch graphics cards on the OS-level? How can you tell which card is running the show at any given moment? Does switching the power supply change anything performance-wise? $\endgroup$
    – Yves Klett
    Apr 29, 2014 at 4:55
  • 2
    $\begingroup$ I'm noticing the same thing on my system even though I have a dedicated NVIDIA GTX 660Ti, Mathematica does not use it for rendering. This is stupid and there should be a way to fix this. $\endgroup$
    – RunnyKine
    Apr 29, 2014 at 5:24
  • 2
    $\begingroup$ Have you gone into the Nvidia control panel, under "manage 3d settings", and used the "program settings" to add the mathematica EXEs with the "High performance Nvidia..." as the preferred GPU? Has worked for me with stubborn programs that for whatever reason kept defaulting to CPU GPU... $\endgroup$
    – ciao
    Apr 29, 2014 at 7:41
  • 2
    $\begingroup$ Addition of mathematica.exe to the list of programs that should use NVidia doesn't change anything. It looks that rendering engine of Mathematica doesn't use 3D-optimized functions but use default basic rendering instruction which are much common and simple for better compatibility. I've tried draw 3D plots at high-power graphics cards but there is not evident changes in performance relatively to built-in Intel card of my laptop. So the answer is still hidden.. $\endgroup$
    – Rom38
    Apr 29, 2014 at 14:20
  • 1
    $\begingroup$ @rasher, As Rom38 said, I already did this but it had no effect. The very easy way to see if Nvidia GPU is running is to use the GPU meter, addgadgets.com/gpu_meter $\endgroup$
    – saturasl
    Apr 29, 2014 at 17:48


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.