+ Reply to Thread
Results 2,281 to 2,290 of 11665
Thread: DIY eGPU experiences
-
7th December 2010, 09:52 PM #2281Banned
- Join Date
- Dec 2008
- Location
- YellowBrickRd.AU
- Posts
- 7,931
- Rep Power
- 0
Re: DIY ViDock Experiences
The NVidia Optimus driver needs to find an active primary Intel HD graphics. Some bios will use your GTX460 as the primary if it sees it upon boot.
So ensure you boot with the eGPU switched off. Boot to Win7 with the Intel HD (native LCD) active, standby, poweron eGPU, resume system.
1st-gen i-core and core2duo Dell Latitudes are not allowing 36-bit PCI Compaction
2nd-gen i-core Latitudes are OK as found in REQ: bios mods to make Vostro/Latitude eGPU friendly .
These systems cannot do a > 3GB of RAM DIY eGPU implementation as have TOLUD=3.5GB. This is seen by perusing the PCI BUS resource in Device Manager and seeing it starts at D0000000 (3.5GB). With the iGPU needing 256MB + system devices in the last 256MB, there is then no free 256MB in 32-bit PCI space to host a desktop video card.
While DIY eGPU Setup 1.x can relocate the iGPU or eGPU to 36-bit space, booting up Win7 will find them moved to 32-bit space OR produce an error 12 if no room for it.
Investigation has identifed that Windows uses the ACPI bios entry PNP0A03 or PNP0A08 to determines the root bridge address range with these systems having an entry that is limited only to 32-bit space. The simplest way to identify if your system is 36-bit PCI allocation compliant is to look for a "large memory" PCI BUS entry in Device Manager as shown below. If don't have it you are limited to 32-bit PCI allocation only.

Dell Inspiron 1440: TOLUD=3.5GB with a rare "large memory" PCI BUS, 4.5GB to 12.375GB allowing 36-bit PCI allocation
This will also be seen in Linux, 64-bit only, 'lspnp' -vv output:How to get 36-bit PCI compaction working?Spoiler :
Obviously the solution would be to alter the ACPI entry to extend the root bridge to 36-bit space. This was done successfully on a E4300 as part of Avlan's DSDT override.
Linux has a "pci=nocrs" kernel option to ignore the ACPI bridge allocation. Is there an equivalent option in Windows?
The other way of course is to free up a 32-bit PCI window by contact Dell and asking for a bios with a TOLUD set to 3.25 or 3.0GB. There is no reason to have such a high TOLUD with 64-bit OS. This has been requested in the thread REQ: bios mods to make Vostro/Latitude eGPU friendly .
Until a fix is made available consider running with just 3GB by physically removing a 2GB RAM module and replacing it with a 1GB RAM module.
It appears too that these systems allow bootup with the external gpu as the primary video adapter. That is another workaround for *all* non-Optimus setups.Last edited by User Retired 2; 10th November 2011 at 06:50 PM.
-
7th December 2010, 10:47 PM #2282Notebook Enthusiast
- Join Date
- Nov 2010
- Posts
- 12
- Rep Power
- 7
Re: DIY ViDock Experiences
When I put my laptop in sleep mode, power on the DIY ViDock and then open the lid (which wakes it up - power light is solid instead of blinking), all I get is a black screen.
Laptop wakes up normally if the ViDock is not turned on.
My laptop only has 3GB, so I don't think PCI allocation/compaction is an issue (x1 works great, I just want Optimus to work).
I may have forgotten to mention that I have PE4H 2.4. Doesn't this have a timer to bypass the whole boot>sleep>vidock>wake process? Is there something I need to do to enable this timer?
When I boot with DIY ViDock connected, device manager does not list Intel HD Graphics. I assume this is the problem - As you said, Optimus needs to find an active primary Intel HD graphics. Do I turn on the laptop and then DIY ViDock right after? Or DIY ViDock first, then the laptop? Does it matter with PE4H 2.4?
Any other suggestions?Last edited by AzzMan; 8th December 2010 at 09:34 AM.
-
8th December 2010, 12:39 PM #2283Notebook Enthusiast
- Join Date
- Apr 2009
- Posts
- 24
- Rep Power
- 10
-
8th December 2010, 12:47 PM #2284Notebook Enthusiast
- Join Date
- Apr 2009
- Posts
- 24
- Rep Power
- 10
Re: DIY ViDock Experiences
Guys, I've noticed another problem in my system - when I connect the video card to the laptop, the "SYSTEM" process ("NT Kernel & System") starts taking about 20-30% of all CPU resources. Sometimes it doesn't happen, but usually it does. As I understand the "Sytem" process shows a consolidated result for all drivers in the system, so something is probably wrong with the NVidia driver.. Does anybody have a similar issue? Any ideas how to fix?
-
8th December 2010, 01:10 PM #2285
Re: DIY ViDock Experiences
Let me see if I can get a 260.99 update out for you guys. I was trying to wait for the 265 release with optimus which should be coming out any day now. The 265 release should have some improvements for optimus including punkbuster fix As far as I know. Until then...
Notebook Models: *(VPCZ122) Vaio Z* | (VGNZ590) Vaio Z | (VPCSC1) Vaio S. | My driver mods and packages @ LaptopVideo2Go
Unofficial drivers/mods do not go through the same testing that officially released drivers do. Use them at your own risk!
Please take time to thank the fantastic teams at Nvidia, and elsewhere, who put in so much work to program and put together the driver packages.
-
8th December 2010, 01:15 PM #2286Notebook Enthusiast
- Join Date
- Apr 2009
- Posts
- 24
- Rep Power
- 10
-
8th December 2010, 01:33 PM #2287
Re: DIY ViDock Experiences
Nah Nando is the man.. I just mod drivers.

I am still going to mod some up for you guys, but since I have not had much time lately for my favorite hobby, I figured I would write up a DIY (keeping in the spirit of this project). If you already have modding experience and know where the Section### and nv_miscBase__### areas are for your GPU you can skip to Part 2 below.
Optimus Retrofit (DIY Edition)
>>>>Part 1<<<<
Identifying your graphics hardware and its Hardware ID.
Open Control Panel -> Device Manager.Breaking down the Hardware ID
Double Click “Display Adapters”.
Double Click “NVIDIA Geforce…..” .
Click the “Details Tab”.
For Device Name: Under Property choose “Device Description”. It should be the only thing there.
For Device ID: Under Property choose “Hardware IDs”. It should be the one on the second line.
Note: You can easily copy the information on the details tab by right clicking and choosing copy.
Example
My Device Name: NVIDIA GeForce 9300M GS
My Hardware ID: PCI\VEN_10DE&DEV_06E5&SUBSYS_9025104D
This should be all the information you need to locate your device in the INF.
PCI\ = Connection Type (PCI Bus)
VEN_ = Vendor ID (10DE = NVIDIA)
DEV_ = Device ID (06E5 = GeForce 9300M GS)
SUBSYS_ = SubSystem ID (9025104D = Specific Sony Vaio Z hardware configuration)
Locating the sections related to your graphics hardware in the Nvidia INF.
It is usually easiest for me when modifying a driver install information file (INF) to start with the strings at the bottom.
Example
We can see in the example this INF supports my graphics device as we have found both its Device ID and its Device Name. Now that we know this particular INF supports my graphics device we can continue.Code:[Strings] NVIDIA_DEV.06E5.01 = "NVIDIA GeForce 9300M GS"
The next and one of the most critical areas for hardware identification is located near the top under [NVIDIA_SetA_Devices.NTamd64.6.1] for 64bit or [NVIDIA_SetA_Devices.NTx86.6.1] for 32bit.
Example
64bit
32bitCode:[NVIDIA_SetA_Devices.NTamd64.6.1] %NVIDIA_DEV.06E5.01% = Section002, PCI\VEN_10DE&DEV_06E5&SUBSYS_9025104D
Breaking down this exampleCode:[NVIDIA_SetA_Devices.NTx86.6.1] %NVIDIA_DEV.06E5.01% = Section002, PCI\VEN_10DE&DEV_06E5&SUBSYS_9025104D
- %NVIDIA_DEV.06E5.01% = links to the [Strings] section at the bottom of the INF.
- Section002 = Tells the installer to use [Section002] for this device.
- PCI\VEN_10DE&DEV_06E5&SUBSYS_9025104D = The Hardware ID of my Vaio Z. This is the part that the INF uses to detect if this driver is appropriate for my system.
One thing to note is that if the SubSystem ID is missing or excluded the installer will use the Device ID to identify the hardware. This means if we shorten it to PCI\VEN_10DE&DEV_06E5 it will install on all NVIDIA GeForce 9300M GS’ with the Device ID of 06E5. This is very useful if you need to create an INF that works on more than just specific systems.
It is important to note that NTamd64.6.1 applies to Windows 7 64bit and NTamd64.6.0 applies to Windows Vista 64bit (for 32bit it is NTx86.6.1 = Windows 7 and NTx86.6.0 = Windows Vista) . The string information under these lines only applies to the corresponding operating system.
Moving to [Section002] we see things like AddReg, CopyFiles, DelReg and RegisterDLLs.
- AddReg = Settings that will be added to the registry when the drivers are installed.
- DelReg = Settings that will be deleted from the registry when the drivers are installed.
- CopyFiles = Files that will be copied when the drivers are installed.
- DelFiles = Files that will be deleted when the drivers are installed.
- RegisterDLLs = These will be the DLLs that will be registered when the drivers are installed.
- Feature Score = Is basically a driver rank for our purposes the most essential information is F6 = Windows Vista and E6 = Windows 7.
The strings after the equal sign are some of the final locations that we need to pay attention to. Nvidia likes to mark specific sections with numbers after the string if there is more than one section required in the INF.
Example
In this example we can see the settings under [nv_miscBase_addreg__02] will be added to the registry. The files under [nv_sysDrivers_copyfiles] will be copied to their marked locations. The DLLs under [nv_common_registerdll__02] will be registered.Code:[Section002] … AddReg = nv_miscBase_addreg__02 … CopyFiles = nv_sysDrivers_copyfiles … RegisterDLLs = nv_common_registerdll__02
One of the most important sections to pay attention to here is nv_miscBase_addreg__##. This section is where the majority of the settings that will be used specifically for your graphics hardware are located. There are usually multiple nv_miscBase_addreg__## entries because each is unique to the individual graphics hardware of which a typical INF supports many.
And with that we have the general flow of the install information file when the driver is installed. In my case using the previous examples, the flow to find the settings specific to my graphics hardware is easiest to read as:
[Strings] -> [NVIDIA_SetA_Devices.NTamd64.6.1] -> [Section002] -> [nv_miscBase_addreg__02]
Now that we have some of the basic understanding of the flow and function of the INF we can move on to some specifics.
>>>>Part 2<<<<
In order for Optimus to work properly with 260+ series drivers the following must be in the INF under the correct section for your GPU vs standard/non-Optimus: (Note: This may be slightly different depending on driver version. I expect it to change slightly with the 265 series.)
These must exist:
(Note: You can find the correct [Section###] for your GPU using the information above under Part 1.)Code:[Section###] NVBusUpperFilter = nvpciflt NVSupportOptimus = 1 [Section###.Services] AddService = nvpciflt, , nv_nvpciflt_serviceInstall
this must also exist in the INF
and the following must exist under the correct miscBaseCode:[nv_nvpciflt_serviceInstall] ErrorControl = 0 ServiceBinary = %12%\nvpciflt.sys ServiceType = 1 StartType = 0
for 64bit include:Code:[nv_miscBase_addreg__##] HKLM,"Software\NVIDIA Corporation\Global\CoprocManager",OptimusEnhancements,%REG_DWORD%,1 HKLM,"Software\NVIDIA Corporation\Global\CoprocManager",ShowContextMenu,%REG_DWORD%,1 HKLM,"System\CurrentControlSet\Services\nvlddmkm",EnableCoproc,%REG_DWORD%,1 HKLM,"System\CurrentControlSet\Services\nvlddmkm",PreferCoprocOverHybrid,%REG_DWORD%,1
for some this line might be required for others it may not:Code:HKLM,"Software\Wow6432Node\NVIDIA Corporation\Global\CoprocManager",OptimusEnhancements,%REG_DWORD%,1
for proper audio through HDMI on some systems with Optimus also include:Code:HKR,,EnableCoprocPowerControl,%REG_DWORD%,4
(Note: You can find the correct [nv_miscBase_addreg__##] for your GPU using the information above under Part 1.)Code:HKR,,HDAudioCoprocDynamic,%REG_DWORD%,0x00000001
It is usually easiest to identify drivers that are capable of being modified for use with Optimus by looking for the Display.Optimus sub-folder. Verde drivers by nature should always be Optimus capable.Last edited by Nautis; 8th December 2010 at 06:10 PM.
Notebook Models: *(VPCZ122) Vaio Z* | (VGNZ590) Vaio Z | (VPCSC1) Vaio S. | My driver mods and packages @ LaptopVideo2Go
Unofficial drivers/mods do not go through the same testing that officially released drivers do. Use them at your own risk!
Please take time to thank the fantastic teams at Nvidia, and elsewhere, who put in so much work to program and put together the driver packages.
-
8th December 2010, 02:35 PM #2288Notebook Enthusiast
- Join Date
- Apr 2009
- Posts
- 24
- Rep Power
- 10
-
8th December 2010, 03:09 PM #2289Notebook Enthusiast
- Join Date
- Nov 2010
- Posts
- 12
- Rep Power
- 7
Re: DIY ViDock Experiences
Would the above guide accomplish anything for me if I can't get Intel HD Graphics and the GTX 460 to appear in the device manager at the same time?
I guess part of my confusion lies with this:
Given my normal setup: Dell Latitude E6410 with Core i-5 M520, 3GB RAM and 32MB Intel HD Graphics. Display only shown on external display - laptop's display is off.
Given my DIY ViDock hardware: EVGA GTX460 768MB attached to PE4H 2.4, both powered by an Antec Basiq 500W PSU, with the mini HDMI cable connecting the PE4H to the expresscard.
Given there are no NVIDIA drivers on my laptop, and the DIY ViDock is not connected to the laptop.
What steps do I take to get everything running with Optimus?
Scenario 1: If I connect the DIY ViDock to the laptop and connect the external display to the GTX460 and then turn on the laptop, Windows 7 will load, detect the GTX460 and install the drivers automatically. However, Intel HD Graphics is NOT listed in the device manager. I can then: 1) download and install the latest drivers OR 2) download and extract the 258.96 drivers, put the modified INF file in the extracted folder and run Setup.exe. In both cases, I have a standard, working x1 link without Optimus.
Scenario 2: Boot in to Windows 7. Connect the DIY ViDock to the laptop and external display and turn it on. Nothing happens. No changes in Device Manager and I continue to use Intel HD Graphics. Internal display is ON, external display is black. This happens if the GTX460 drivers are on the machine AND if they've been removed.
In both Scenario 1 and 2: I cannot install the Optimus drivers downloaded from NVIDIA because it says: "The NVIDIA setup program could not locate any drivers that are compatible with your current hardware."
Scenario 3: Boot in to Windows 7. Put it in Sleep mode. Connect the DIY ViDock to the laptop and external display and turn it on. Wake the computer. I get a black screen (I've waited up to 5 minutes). Same thing happens if I connect the ViDock to the laptop, but leave the external display disconnected. This happens if the GTX460 drivers are on the machine AND if they've been removed.
The only way I can get the GTX460 to do anything is to connect and turn on the DIY ViDock before turning on the laptop. Otherwise Intel HD Graphics is listed in Device Manager but GTX460 is not.
Do I need to use the Setup 1.x ? Did I skip a step somewhere?
I would really appreciate some help with this!
Edit: Do I need an NVIDIA graphics chip in my laptop for Optimus to work? Or can it work with just Intel HD Graphics + external GTX 460?Last edited by AzzMan; 8th December 2010 at 03:46 PM.
-
8th December 2010, 03:47 PM #2290Banned
- Join Date
- Dec 2008
- Location
- YellowBrickRd.AU
- Posts
- 7,931
- Rep Power
- 0
Re: DIY ViDock Experiences
You need to apply Scenario 3 to get your Intel HD active if want the Optimus functionality. Are you sure you doing a 'sleep' and not a hibernate? A hibernate will NOT work. A sleep generally does work.
If the sleep doesn't work for you, then yes, you'll need to use DIY ViDock Setup 1.x to 'configure' your GTX460, perform PCI compaction and chainload into Win7 with an active and working setup. No sleep will be needed then.Last edited by User Retired 2; 8th December 2010 at 04:25 PM.



18Likes
LinkBack URL





Reply With Quote

I`m upgrading, are you? (GTX 780M...
Today, 07:51 AM in Gaming (Software and Graphics Cards)