Hori

El Psy Congroo

©Hori
Powered by LOFTER

HP 2570P 外置显卡信息汇总,主讲 DSDT Override 与 EXP GDC 的使用

为手头上的 2570P 做点笔记,原则上也适用于 2560P。边爬外站边研究,专业和软硬件差的很远,自己硬件白痴,不严谨的地方请原谅。

去年 99 刀败入一台 2570P,拍新片前决定给机器加一块外置显卡跑达芬奇,又花 220 软收了张 V6 版 EXP GDC,基佬嫌弃贵了 50,我说回国能收到不太坑的东西已经很满足了。

机器的 PCI compaction 是 24bit 的,跑不了许多(较新)的显卡,而且没有 PCI-E 3.0 的接口,带宽成问题,自然就只考虑低端专业卡。寻址范围即便在 64 位系统下也会大暴死,25xx系列的机器都是这个样子,请看官放心。

如果出了问题,设备管理器中的外接显卡会显示为“找不到资源可以使用(代码12)”,这时需要自己 dump DSDT 再反编译一次,把寻址范围扩大到 36bit。详情也可参见:Pre-Purchase FAQ #2 (>> 2. How can I check if my notebook is compatible with an eGPU?) 

Pretty much any notebook can be eGPU compatible if it's run with 2GB of RAM. 95% are OK with 3GB of RAM. It's only if it runs 4GB or more that there needs to be particular attention paid to free pci-e configuration space to host it, which can be checked by:

(Update 3-14-2012)
A DSDT override extending the root bridge into 36-bit can allow ALL systems with a 64-bit CPU and chipset (anything after 2007) to be eGPU compatible when used with Windows 7 and the latest iGPU/dGPU/eGPU drivers with up to 48GB of RAM installed. So the DSDT override solution eliminates the restrictions listed below.

人吶,就都不知道,自己不可以预料。我绝对不知道,本来想买 120 刀的 K620 怎么会买到同价 4G 版 760 去了。结果事与愿违,弄了一张不能直接使用的游戏卡回家,16G 的 RAM 远远超过了上述的 4G,于是便有了这篇东西。以及 Quadro K2200 死的早。

外置显卡的问题很多,用起来性能也会打折,没有特殊需求的话不推荐入坑玩耍。


文章后半段参考了 nando4 的教程,在此先对他表示感谢。

以下所述仅适用于 2570P,外接硬件用了 EXP GDC + GTX 760,操作环境是 64 位中文版 Windows 7,而且请注意:

我不对使用者及其设备的安全负责。

I won't be responsible for any damages caused to your computer/video card or to yourself.



整个流程大致如下:

①明确机体及周边硬件情况

②采购必要零件设备及消耗品

③拼接、硬件测试

④从 eGPU 启动 / 手动覆盖 DSDT

⑤连接硬件

⑥清灰,换硅脂,跑分



谈谈博主自己的实践吧。

①明确机体及周边硬件情况

外置显卡的硬件基本架构是:笔记本 PCI-E 信号源(非 x16)—— PCI-E 信号线—— PCI-E x16 标准插槽+外置供电——普通显卡——数字 / 模拟视频信号线暑促——内屏(A 卡和 4xx 以前的 N 卡不行)/ 外屏显示。


2570P 有一个 Expresscard 34 接口,提供 PCI-E 2.0 1x 速率,如果没有 WWAN 卡,拆掉后壳还能见到一个空余的 PCI-E 1x 接口

所以可选择外置的硬件有(价格更新于西历 2016 年 7 月):

EXP GDC ——国产,一块板子+ 210W DC 电源+电线,早期发售时是否涉及剽窃暂时还没有定论。x宝官方店有得卖,供货充足,ExpressCard 版 298 软。

ViDock 3 / 4 / 4 Plus ——德国佬的壕玩具,有个能放下显卡的盒子,自带电源(除了 ViDock 3),国内少见,二手大约 800 软。

Bplus PE4C V3.0 ——台湾货,在国内比 ViDock 还要惨,似乎已经绝迹了,支持外接普通ATX电源。PCHome 上面购买,直邮回国很方便(除了退货及维修)。顺说这货在 Amazon USA / JP 和 ebay 上卖得风生水起,约450软。

NP GDC ——国产,出来一段时间了,不算很多人用。阿猫阿狗电子厂的山寨产品,x宝有得卖,不到 220 软。

4月有人说 V8.3E 之后的 EXP GDC 不能用,买全新品时要留意了。


显卡部分,GTX 460 / 560 / 660 / 670能直接上机,但 AMD 全家,GTX 650、GTX 750、GTX 9xx 及 10xx系列全部要改 DSDT,否则显示“代码12”。

A NVidia GTX460/560/660/670 is a straight plug-n-play implementation on a 2570P when using Windows 7, though Win8.x is problematic (src: here). Win8.x users may consider doing a UEFI installation instead which resolved error12 and gave hotplug capabilities as noted here.

An AMD card, GTX650, GTX750, GTX9xx or older NVidia cards require a DSDT override and (maybe) DIY eGPU Setup 1.x interposer software to eradicate error 12 that prevents their functionality. 

一些案例可以参见:GTX560Ti (bjorm)GTX660 (dewos)GTX560Ti (hatoblue)GTX650Ti (phillofoc)

如果不希望抱着 ATX 电源跑,显卡满载功耗不建议超过 200W,否则所有转接板的自带电源都没办法满足需求。


相当一部分人表示 A 卡不能内屏显示,从实例来看似乎没错,是不是 PhysX 造成的博主持保留意见。

2503 底座与 eGPU 研究系列,goldlionren > 重装 T400 虽然被我强化的不错了但是有个致命的缺陷,就是需要配合外接显示器才能用 HD6570。

A卡之所以不能实现笔记本内屏,原因是没有PhysX物理引擎。查询 N 卡资料后发现 GT450 以后的卡基本都支持这个功能。说通俗一点,这货能够帮助进行物理运算。

用了下 exp gdc,分享下,wangth6 > 想组内屏,貌似A卡不行,而且还得是带核显的U,不过店家只说N卡可以,并没有明确说A卡不行

笔记本外接台式显卡的黑科技,yang117 > A卡也可以用,不过支持稍弱,不可以内屏的。

EXP-GDC 筆電外接顯卡內屏顯示,bushman > 不過希望使用筆電螢幕就好,經詢問淘寶商家有兩個條件  a.筆電必須有intel內顯  b.必須外接gts450 以上 nvidia 顯示卡

现在可以确认,内屏需要核显才能实现。也就是说,你要用酷睿i系列处理器(不包括 i7 720QM 等不带核显的处理器),这个问题在 2570P 上应该不存在。


有人说高端显卡会有更多的性能损失并不建议使用,这个是建立在 DX9 之下的观点。在 DX11 内,显卡和处理器交换的数据量变小,最大的瓶颈不应出现在带宽上。

外接 GTX 650 后得到的性能估计还比不上内置的显卡来得强。毕竟带宽只有1X,并且越是高端的显卡,性能损失来的越大。

事实上中关村的测评也证实了这一点,但请注意,GTX 980Ti 在损失 31% 性能时,还能轻松碾压损失 5% 性能的 GTX 960,《孤岛危机 3》的帧率整整高了一倍。所以对性能有需求的还是上好壕)显卡吧,一张有气无力的 M6000 依然能暴打 K2200。

而且 GTX 650 打不过内置独显的事大概很难天天见到,这货的跑分有 960M 或 765M 的水准。


现在(2016 年 7 月)最具性价比的全新显卡是 GTX 950 / 750Ti,R9 270 / 370,不嫌麻烦还可以买 GTX 480 / 580 / 680 一类的便宜电老虎(需要外接 ATX 电源),x宝上面和 750 差不多价,性能好挺多。

扩展阅读:

Best Value Video Card Chart

12.5" HP Elitebook 2570P Owner's Lounge



②采购必要零件设备及消耗品

整理了一下需求:靠谱便宜可玩性高,不使用 ATX 电源,需要内屏显示,没有严苛的稳定性要求。


博主自己的购买清单:

  1. EXP GDC V6(必购,购买全新品建议留意版本)

  2. GTX 760(必购)

  3. EXP GDC 机箱+橡胶脚垫(选购)

  4. 视频传输线缆(选购)

  5. 奥利高贴膜(选购)

  6. Laird 相变硅脂(不服跑个分)

外置显卡及其周边总价还是挺高的,没什么奇怪的需求依然建议看官们直接上台式机。

顺说机器淘汰之后可以换上低压处理器,接个四口千兆卡软路由,或者阿苏斯老虎卡当作 HTPC。



③拼接、硬件测试

为了下一步的执行效率,首先要保证硬件没问题。比如把显卡丢去台式机亮机,EXP GDC只要能通电,应该就没问题了。

推荐阅读:EXP GDC 使用指南 V6.0(应该是 V5.8 版本,V6 是 Beast 系列)

然后将 CTD 开关拨到 On,看卖家的说明应该是 Time delay 6秒(不太能理解这是在干什么),默认设置插入显卡会有内存资源冲突(后面会讲)。



④从 eGPU 启动/手动覆盖 DSDT

目前似乎有两条路。

A.使用 eGPU(壕),B.自己反编译一份 DSDT(花样作死),C.卖机买台式(真正的正确姿势)


A.使用 eGPU

之前提过的那位老外也是 eGPU 软件的作者,怕麻烦/多设备/遇到其他困难的可以直接买,他会把更详细的教程丢到你的邮箱,最新版本是1.3.

在给作者的 Paypal 打了 25 块钱以后,不到两个小时作者就发来了非常详细的操作指南。

前提是你要懂英语,有一定的软硬件常识和耐心,外加美金若干。eGPU 的启动相对麻烦,但可以屏蔽独显(2570P 并不需要),饱受诟病的磁盘分区和中断启动也被解决了

相信作者的教程会比我这摸石头过河的门外汉靠谱多了,博主没有用过这软件,所以这部分请参阅 nando4 发给你的教程,包括连接方式也请务必按照他的指示来做(而非照搬 B 方案的处理方式)。

可作者也提到过:

Using Setup 1.30's 36-bit PCI compaction on the eGPU to relocate it in such space will see the eGPU still give an error 12 in Device Manager.

有些不知所措。

所以博主才用了简单粗暴(好像更不靠谱的)B 方案。


B.自己反编译一份 DSDT 再修改

建议所有人在进行这一步之前,对重要文件进行备份(至少建立一个系统还原点,以确保电脑在蓝屏时能用简单的修复手段救回)

0.备份重要文件,做好重装的心理准备。

1.下载 nando4 做的软件包(有墙)和 ACPICA 家的 IASL 编译器。上面这是最正统的方法,野路子可以用博主的精简版。

打包了自己和 nando4 分别导出的 F.42 / F.61 版本 BIOS 的 .aml 文件,还有会用到的所有软件。nando4 的压缩包和编译器也一并提供。

MEGA

MediaFire

Google Drive(有墙)

在正统的方法里,你需要把 IASL 压缩包里的东西全部覆盖进 nando4 的软件包内。如果你的 BIOS 版本是上述之一而且使用了博主的压缩包,请直接跳到第9步。建议其他人把 dsdt.aml 丢到另一个文件夹内(避免刷错,除非你也用 F.42 版本的 BIOS),然后再继续以下步骤:

2.用管理员模式运行命令提示符。

3.运行“cd”命令,让命令提示符进入放置软件包的位置,一般的路径会长得和“x:\xxx\2570P-DSDT-Override-Horisawa”类似。

4.导出 DSDT table。洋人的教程有些陈旧,新版 iasl 不能使用“-g”命令,所以需要使用 acpidump 来导出,会在软件包的目录生曾“dsdt.dat”文件。

acpidump -b

5.反编译“dsdt.dat”成可以编辑的“dsdt.dsl”

iasl dsdt.dat

6.编辑“dsdt.dsl”(可以使用记事本),删除:

If (_OSI ("Windows 2001"))

{

Store (0x07D1, OSYS)

}

If (_OSI ("Windows 2001 SP1"))

{

Store (0x07D1, OSYS)

}

减少新 DSDT 的体积(建议使用搜索功能定位)。

If (CondRefOf (FPED))

{

FPED ()

}

这段不删会有 error 直接导致反编译失败(完成时还是有16个 Warning 不过已经能用了)。

7.找到“DWordMemory”字段的位置,像这样:

DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

   0x00000000,         // Granularity

   0x000A0000,         // Range Minimum

   0x000BFFFF,         // Range Maximum

   0x00000000,         // Translation Offset

   0x00020000,         // Length

   ,, , AddressRangeMemory, TypeStatic)

这下面还有很多行的 DWordMemory,在最后一行结束后添加粗体内容。格式请务必与文档前几行的内容一样(而不是与网页内容保持一致),否则可能引发 error。

QWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,

   0x0000000000000000, // Granularity

   0x0000000C20000000, // Range Minimum,  set it to 48.5GB

   0x0000000E0FFFFFFF, // Range Maximum,  set it to 56.25GB

   0x0000000000000000, // Translation Offset

   0x00000001F0000000, // Length calculated by Range Max - Range Min.

   ,, , AddressRangeMemory, TypeStatic)

洋人说“大量内存”的范围必须控制在 36bit 内(小于 64GB)才能兼容 32 位 Win7,也要高于 48GB 确保可以装载最多 48G 的 RAM,所以范围被限制在 48.5GB 到 56.25GB 中间。完全不懂,愣是看得一头雾水。

8.编译,运行:

iasl -oa dsdt.dsl

生成 dsdt.aml 文件,warning 请无视。第一次编译往往很难成功。

如果编译过程中出现 error,请先检查第 6 步是否完成(特别针对 dsdtmod.dsl 3979 及 dsdtmod.dsl 28292)。如果有几百个 error……只能说祝好吧,建议参见Common DSDT patches for Ivy / Sandy / Haswell laptopsHow to fixed DSDT errors? (kizwan),也可以去 tonymacx86.com DSDT forums提出疑问。国内似乎没有相关资料。

It is unlikely this will succeed first time, as the compiler is very strict. In general warnings are acceptable, but errors may require some fiddling. 

9.覆盖 DSDT,运行:

asl /loadtable dsdt.aml

确保你在管理员模式下运行 CMD。

请再三确认 .aml 文件对应你自己的 BIOS 版本,或是你刚刚亲手生成。

10.Win8 / 8.1 / 10用户需要打开 test signing mode,这样才能应用 DSDT 覆盖。

bcdedit -set TESTSIGNING ON

Win7 用户可以直接跳过这个步骤。

An alternative to disabling testsigning in Win8 is to do a Win8: Perform a DSDT substitution within Setup 1.30 to overcome TOLUD issues. Win7 users who don't want to do the registry override can also do that DSDT substitution.

11.重启,不要点“关机”再手动开机(特别是Win8 / 8.1 / 10用户)。

电脑重启中途黑屏后按 F10 进入 BIOS 设定,System configuration->Device configuration->expresscard slot,把连接类型从 Generation 1 改成 Generation 2 。系统会提示兼容性问题,不用理它。

保存设置并退出后继续开机,如果蓝屏,请使用系统还原点还原,并尝试在第1步更换软件包重做。



⑤连接硬件

放桌上的话挺占空间,裸奔大概长这样。



如果重启后在设备管理器中出现了“大量内存”,你就可以开始连接显卡了,像这样:

设备管理器——查看——依连接排序资源



连接时,建议先将未通电的电源及线缆插上 EXP GDC,接着插入显卡,通电,最后再把 ExpressCard 插进电脑,更具体的操作请参见说明书。

连接后,Windows 会自动安装驱动。不要理它,反正都会安装失败。


在第一次连接显卡前,建议先弄一份显卡驱动。博主的外置显卡和网卡的内存地址分配冲突,需要在断网的情况下装驱动。驱动装完之后无法关机,强行断电,把连接器的 PTD 开关推到 14S 再开启电脑,等屏幕亮了立即插入 ExpressCard 连接器。开机便一切正常,现在连热插拔都做得到。

完成设置,这样就能让 EXP GDC 工作在内屏上了。




跑分

       喜闻乐见。  



有什么奇怪的事情,PM 或直接问我就好了。

推荐阅读:

Simplified HP 2570P eGPU installation process instructions

Win8/10: Perform a DSDT substitution within Setup 1.30 to overcome TOLUD issues

扩展阅读:

Error 12: 2570p, 16gb RAM, GTX560ti 1GB, EXP GDC Beast, Windows 10

EGPU - Eksterna graficka za laptop(克罗地亚文,看不明白,总之黑了农企不能内屏)

Samogradnja – mid-end AMD eGPU(再次黑农企不能内屏)

2570P 完美外接显卡的 12 寸商务本

后续,2570p 外接显卡

评论