Can't overclock memory - using intel integrated as display - dummy xorg entry needed

I will try to be concise. I have intel integrated graphics driving my display and I’m using a GTX 1060 for CUDA computing. Everything is working only I’m down 10% because I can’t overclock my memory.

I installed using the following command:

sudo ./NVIDIA-Linux-x86_64-381.22.run --no-opengl-files --no-x-check

I did this because I need my intel to drive the desktop. Nvidia-smi works for limiting power.

I have no xorg.conf, everytime I’ve tried this following guides online it just prevents me from logging into X server desktop.

Suggestions?

I would also like to know if this is possible under linux and how.

I think I’ve gotten closer to a solution.

You need to make a “dummy” entry in an xorg.conf file to make the xorg think it is connected to a monitor.(Why on earth do you have to do that???)

Apparently some of the driver functionality depends on X, which is tragic.

Still working on a solution.

Anyone?

See, if you have a file in /etc/X11/xorg.conf.d containing

Section "OutputClass"
	Identifier "nvidia"
	MatchDriver "nvidia-drm"
	Driver "nvidia"
EndSection

change that to

Section "OutputClass"
	Identifier "nvidia"
	MatchDriver "nvidia-drm"
	Driver "nvidia"
        Option "AllowEmptyInitialConfiguration"
EndSection

If not exists, create.
Running nvidia-bug-report.sh and attaching the output file would help.

Change prevents display manger from starting as usual. I suspect its a conflict with the intel driver.
I’ve attached the file requested.
nvidia-bug-report.log (680 KB)

Then try to open a second dummy screen, xorg.conf:

Section "ServerLayout"
    Identifier     "layout"
    Screen      0  "intel" 0 0
    Screen      1  "nvidia"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
EndSection

Section "Device"
    Identifier     "nvidia"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BusID          "PCI:1:0:0"
    Option         "AllowEmptyInitialConfiguration"
EndSection

Section "Screen"
    Identifier	"nvidia"
    Device	"nvidia"
EndSection

Section "Device"
    Identifier	"Intel"
    Driver	"modesetting"
    BusID	"PCI:0:2:0"
EndSection

Section "Screen"
    Identifier     "intel"
    Device         "intel"
    Monitor        "Monitor0"
EndSection

Not sure what exactly you want to achieve, but AFAIK your “overclocking” problem has nothing to do with Nvidia drivers.

You cant “overclock” 1060 with nvidia-smi, because setting max application clock speed doesnt work for 1060, since it’s not a Quadro, or Tesla or something.

Though it’s possible to “overclock” 1060 with nvidia-setting, changing mem or core clock offsets (there’re guides on that in the internets).

You need an X server instance running on your 1060, because nvidia-settings doesnt work without X:

  1. if your distro doesnt have xorg.conf file – you have to create it yourself. See Xorg manpage for details.
  2. in your xorg.conf you need two “Device” entries: one for Intel IGP and another for Nvidia GPU
  3. in Nvidia’s “Device” entry you have to set correct “Coolbits” option. “AllowEmptyInitialConfiguration” and hardcoded PCI bus number wouldnt hurt either. For details see Nvidia driver’s README, the section about"X server options".
  4. set two “Monitor” entries: one for your real monitor, another for a “fake” one. This “fake” one doesnt need any settings, it simply exists.
  5. set two “Screen” sections: one with Intel “Device” and your real “Monitor”, and another with Nvidia “Device” and the “fake” “Monitor”
  6. in “ServerLayout” entry set Intel “Screen” as primary one, and Nvidia “Screen” as secondary (“Right Of” or something).
    After that you should see a real desktop on Intel, and an instance of X running on Nvidia (you can check it with nvidia-smi). Something like “nvidia-settings -a [gpu:0]/GPUGraphicsMemoryOffset[3]=1000” should let you boost mem clock.

UPD. The previous post above is basically what I’m talking about.

@alnash,I have already overclocked this card many, many times in linux. I don’t need help with that.

And yes it is an issue with the driver.

You can not overclock without a X display attached, this is widely known and acknowledged by the developers. This is a very bizarre stipulation, not present in the Windows driver.

@generix Thanks I have tried something similar before but I will try again with your config. I will update soon.

@generix - No dice. Display manager refuses to load. I didn’t change the pci id’s though. Let me dump my xorg and see if that helps.

@generix - this is my current config, maybe this helps?

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	ModulePath   "/usr/lib64/xorg/modules"
	FontPath     "catalogue:/etc/X11/fontpath.d"
	FontPath     "built-ins"
EndSection

Section "Module"
	Load  "glx"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/input/mice"
	Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "Accel"              	# [<bool>]
        #Option     "AccelMethod"        	# <str>
        #Option     "Backlight"          	# <str>
        #Option     "CustomEDID"         	# <str>
        #Option     "DRI"                	# <str>
        #Option     "Present"            	# [<bool>]
        #Option     "ColorKey"           	# <i>
        #Option     "VideoKey"           	# <i>
        #Option     "Tiling"             	# [<bool>]
        #Option     "LinearFramebuffer"  	# [<bool>]
        #Option     "HWRotation"         	# [<bool>]
        #Option     "VSync"              	# [<bool>]
        #Option     "PageFlip"           	# [<bool>]
        #Option     "SwapbuffersWait"    	# [<bool>]
        #Option     "TripleBuffer"       	# [<bool>]
        #Option     "XvPreferOverlay"    	# [<bool>]
        #Option     "HotPlug"            	# [<bool>]
        #Option     "ReprobeOutputs"     	# [<bool>]
        #Option     "XvMC"               	# [<bool>]
        #Option     "ZaphodHeads"        	# <str>
        #Option     "VirtualHeads"       	# <i>
        #Option     "TearFree"           	# [<bool>]
        #Option     "PerCrtcPixmaps"     	# [<bool>]
        #Option     "FallbackDebug"      	# [<bool>]
        #Option     "DebugFlushBatches"  	# [<bool>]
        #Option     "DebugFlushCaches"   	# [<bool>]
        #Option     "DebugWait"          	# [<bool>]
        #Option     "BufferCache"        	# [<bool>]
	Identifier  "Card0"
	Driver      "intel"
	BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

Forgot to add this from lspci | grep -Ei “nvidia”

----> 01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 3GB] (rev a1)

EDIT: Looks like you already got the pci id’s correct. So…not sure at this point.

For me, this setup works using Gnome.
Please use the xorg.conf I created, reboot, switch to vt and run nvidia-bug-report.sh again.
What kind of DM/DE/version are you using?
if all else fails, you can try to start a new xserver with alternate config:
Use your normal xorg.conf, boot to desktop, create a file /etc/X11/xorg.nividia.conf containing

Section "Module"
        Disable "glx"
EndSection

Section "Device"
    Identifier     "nvidia"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BusID          "PCI:1:0:0"
    Option         "AllowEmptyInitialConfiguration"
EndSection

create a file ~/.xinitrc containing

exec xterm

switch to vt, login as user and run
startx – :9 -config xorg.nividia.conf
Then run DISPLAY=:9 nvidia-settings to test.