Discussion:
[osg-users] Selecting a GPU to be used in a dual-GPU laptop
Alberto Luaces
2018-10-18 16:03:49 UTC
Permalink
Hi,

some client owns a laptop with a dual GPU system —the typical integrated
Intel card plus an additional Radeon 530 one into a windows10 system.

It seems that the driver selects automatically the Radeon when using
some CAD applications, but only the integrated Intel when running our
OSG program (checked from the Program Manager window).

I heard that in some analogous nVidia systems one can set manually a
given program to run with the powerful GPU in the Control Panel, but at
least, if it were possible in the AMD drivers, it is not immediately
apparent (we didn't find how).

Does anybody have experience in this kind of Radeon systems?

Thank you!
--
Alberto
Chris Hanson
2018-10-18 19:08:43 UTC
Permalink
I believe I was previously told that there are some secret C symbols
wherein if you create a variable of a particular name, it acts as a hint to
the driver to trigger particular behavior.

I can't at the moment find the names of the symbols or what they do, but
I'll look around. Maybe you can find it before I do based on that knowledge.
Hi,
some client owns a laptop with a dual GPU system —the typical integrated
Intel card plus an additional Radeon 530 one into a windows10 system.
It seems that the driver selects automatically the Radeon when using
some CAD applications, but only the integrated Intel when running our
OSG program (checked from the Program Manager window).
I heard that in some analogous nVidia systems one can set manually a
given program to run with the powerful GPU in the Control Panel, but at
least, if it were possible in the AMD drivers, it is not immediately
apparent (we didn't find how).
Does anybody have experience in this kind of Radeon systems?
Thank you!
--
Alberto
_______________________________________________
osg-users mailing list
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
--
Chris 'Xenon' Hanson, omo sanza lettere. ***@AlphaPixel.com
http://www.alphapixel.com/
Training • Consulting • Contracting
3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4 •
GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL
Legal/IP • Forensics • Imaging • UAVs • GIS • GPS •
osgEarth • Terrain • Telemetry • Cryptography • LIDAR • Embedded • Mobile •
iPhone/iPad/iOS • Android
@alphapixel <https://twitter.com/alphapixel> facebook.com/alphapixel (775)
623-PIXL [7495]
Trajce Nikolov NICK
2018-10-18 21:12:09 UTC
Permalink
I owned laptop with same configuration and obviously the Radeon driver
software kit (or how it is called) comes with an app where you select the
card per app. You select your app in this Radeon app and it will run on the
selected device
Post by Chris Hanson
I believe I was previously told that there are some secret C symbols
wherein if you create a variable of a particular name, it acts as a hint to
the driver to trigger particular behavior.
I can't at the moment find the names of the symbols or what they do, but
I'll look around. Maybe you can find it before I do based on that knowledge.
Hi,
some client owns a laptop with a dual GPU system —the typical integrated
Intel card plus an additional Radeon 530 one into a windows10 system.
It seems that the driver selects automatically the Radeon when using
some CAD applications, but only the integrated Intel when running our
OSG program (checked from the Program Manager window).
I heard that in some analogous nVidia systems one can set manually a
given program to run with the powerful GPU in the Control Panel, but at
least, if it were possible in the AMD drivers, it is not immediately
apparent (we didn't find how).
Does anybody have experience in this kind of Radeon systems?
Thank you!
--
Alberto
_______________________________________________
osg-users mailing list
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
--
http://www.alphapixel.com/
Training • Consulting • Contracting
3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4
• GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL
Legal/IP • Forensics • Imaging • UAVs • GIS • GPS •
osgEarth • Terrain • Telemetry • Cryptography • LIDAR • Embedded • Mobile •
iPhone/iPad/iOS • Android
@alphapixel <https://twitter.com/alphapixel> facebook.com/alphapixel (775)
623-PIXL [7495]
_______________________________________________
osg-users mailing list
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
--
trajce nikolov nick
Alberto Luaces
2018-10-19 09:19:23 UTC
Permalink
Post by Trajce Nikolov NICK
I owned laptop with same configuration and obviously the Radeon driver
software kit (or how it is called) comes with an app where you select
the card per app. You select your app in this Radeon app and it will
run on the selected device
That is what I tried, but it was not obvious to me. Apparently our
client got it to work, nevertheless, so I will ask them how they did it
for reference.
--
Alberto
Alberto Luaces
2018-10-19 09:17:36 UTC
Permalink
I believe I was previously told that there are some secret C symbols wherein if you create a variable of a particular name, it acts as a hint to the driver to trigger particular behavior.
I can't at the moment find the names of the symbols or what they do, but I'll look around. Maybe you can find it before I do based on that knowledge.
That solution would be indeed nice to know, but I also had not luck
finding it.

Nevertheless, apparently our client got it to work tinkering with the
driver settings, so I will resume this search at a later date.

Thank you for the insight!
--
Alberto
COUDRET Florent
2018-10-19 09:27:37 UTC
Permalink
Hi Alberto,

for NVidia and AMD graphics cards, we declare 2 public variables at
global scope to force using GPU at run-time (even if there is no
existing application profile).


extern "C" {

    /// Declare this variable in public to enable the NVidia side of
Optimus -
http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf
    __declspec(dllexport) int NvOptimusEnablement = 1;

    /// Declare this variable in public to enable the AMD side of AMD
Switchable Graphics (13.35 driver or newer needed) -
http://devgurus.amd.com/thread/169965
    __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;

}

Regards,

Florent
Post by Alberto Luaces
Hi,
some client owns a laptop with a dual GPU system —the typical integrated
Intel card plus an additional Radeon 530 one into a windows10 system.
It seems that the driver selects automatically the Radeon when using
some CAD applications, but only the integrated Intel when running our
OSG program (checked from the Program Manager window).
I heard that in some analogous nVidia systems one can set manually a
given program to run with the powerful GPU in the Control Panel, but at
least, if it were possible in the AMD drivers, it is not immediately
apparent (we didn't find how).
Does anybody have experience in this kind of Radeon systems?
Thank you!
--
*Florent Coudret*
CSTB / DTI / MIC
Alberto Luaces
2018-10-19 10:23:51 UTC
Permalink
Great! Thanks a lot, Florent!
Post by COUDRET Florent
Hi Alberto,
for NVidia and AMD graphics cards, we declare 2 public variables at
global scope to force using GPU at run-time (even if there is no
existing application profile).
extern "C" {
    /// Declare this variable in public to enable the NVidia side of
Optimus -
http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf
    __declspec(dllexport) int NvOptimusEnablement = 1;
    /// Declare this variable in public to enable the AMD side of AMD
Switchable Graphics (13.35 driver or newer needed) -
http://devgurus.amd.com/thread/169965
    __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;
}
Regards,
Florent
--
Alberto
Chris Hanson
2018-10-23 19:01:42 UTC
Permalink
That's the bit of code I was looking for. Thanks Florent!
Post by Alberto Luaces
Great! Thanks a lot, Florent!
Post by COUDRET Florent
Hi Alberto,
for NVidia and AMD graphics cards, we declare 2 public variables at
global scope to force using GPU at run-time (even if there is no
existing application profile).
extern "C" {
/// Declare this variable in public to enable the NVidia side of
Optimus -
http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf
Post by COUDRET Florent
__declspec(dllexport) int NvOptimusEnablement = 1;
/// Declare this variable in public to enable the AMD side of AMD
Switchable Graphics (13.35 driver or newer needed) -
http://devgurus.amd.com/thread/169965
__declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1;
}
Regards,
Florent
--
Alberto
_______________________________________________
osg-users mailing list
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
--
Chris 'Xenon' Hanson, omo sanza lettere. ***@AlphaPixel.com
http://www.alphapixel.com/
Training • Consulting • Contracting
3D • Scene Graphs (Open Scene Graph/OSG) • OpenGL 2 • OpenGL 3 • OpenGL 4 •
GLSL • OpenGL ES 1 • OpenGL ES 2 • OpenCL
Legal/IP • Forensics • Imaging • UAVs • GIS • GPS •
osgEarth • Terrain • Telemetry • Cryptography • LIDAR • Embedded • Mobile •
iPhone/iPad/iOS • Android
@alphapixel <https://twitter.com/alphapixel> facebook.com/alphapixel (775)
623-PIXL [7495]
Continue reading on narkive:
Loading...