无忧启动论坛

标题: 单/双核PE自适应 [打印本页]

作者: pseudo    时间: 2011-8-12 11:28
标题: 单/双核PE自适应
现在的机器已经普及双核(或多核)了,相应地使用双核PE也许有好处。例如更好的性能(只理论想象,未实际比较过)。

当然,有人说,PE主要用来搞维护,单核PE兼容性好,够用了,用不着弄什么双核PE。那么,以下内容就不必看了。
=======================================================================

双核PE与单核PE一个直观上的差异是,在任务管理器中前者可以看到两个CPU的状态图:


而后者只看到一个:


双核PE早些年已经有人做过。其不足之处是兼容性比单核PE差。主要表现在把双核PE用于单核机器时,不加载网络还好,一加载网络就死机没商量。
而单核PE,用于双核机器没问题,顶多把双核当单核用,没发挥双核性能而已。

所以,以往大家PE都不采用双核。即使提供双核PE,一般也同时提供单核PE,由用户手工选择使用哪个。



本贴讨论单双核自适应问题,无需手选。具体思路是先检测CPU是单核还是多核,然后根据结果选择启动单核PE还是双核PE。

这里提供一个检测工具:CPUID。它作为grub4dos外部命令。


参考菜单:

title 启动单双核自适应PE
#假定CPUID在启动分区根目录
(bd)/CPUID || echo -n
set cores=1
checkrange 1:-1 read 0x60000 && set cores=2
#核心数现已存放在变量cores。其值1表示单核,2表示双核(及多核)。

#显示检测结果
if “%cores%”==“1” echo 检测到单核cpu
if “%cores%”==“2” echo 检测到多核cpu

#以下根据cores值分别启动单双核PE。

#假定单核、双核pe的引导文件分别是peldr1.bin和peldr2.bin
if “%cores%”==“1” chainload (bd)/peldr1.bin
if “%cores%”==“2” chainload (bd)/peldr2.bin


附件里有简化的0PE用于测试单双核自适应效果。

其中
0PE\XP\NTKRNLMP.EX_
是可剪裁外置双核组件。
当有此组件时,在双核机器上会自动启用双核心PE,在单核机器上会自动启用单核心PE。
当无此组件时,无论单双核机器,一律启用单核心PE。

0PE是动态核心PE,单双核合一、组件化了。其它PE一般是静态核心PE,要准备两个不同内核。
目前,PE双核化条件已经成熟。

已知问题:目前这个CPUID工具在vm虚拟机上测不出双核。但不影响使用PE。

[ 本帖最后由 pseudo 于 2011-8-12 21:41 编辑 ]

双核测试8.12.rar

377 Bytes, 下载次数: 670, 下载积分: 无忧币 -2


作者: pseudo    时间: 2011-8-12 11:29
想起一个问题。
把单核、双核所需文件都放入pe内核,配以适当的txtstup.sif设置,window pe本身应该就有自动检测并启用单核/双核支持的机制。
就是说,单核、双核并不是对立的。

不过本贴采用事先检测的方式,灵活、主动、组件化。
对于单核老机,并不需要读取NTKRNLMP.EX_。
启动初期读盘数据量比较少,对读U盘慢的机器的U启是有利的。

[ 本帖最后由 pseudo 于 2011-8-13 00:17 编辑 ]
作者: ksafei    时间: 2011-8-12 13:13
P大又有新作品面世,祝贺!这个应该解决蓝屏问题了吧?
作者: htt_rd    时间: 2011-8-12 14:00
哇!
    沒想到P大neo4026版大 2008年在這裡 [[讨论]关于hal.dll与ntoskrnl.exe自动选择的问题] ,現在開花結果了。
P大真是個不放棄解決問題的人。
請問P大;給多核用的setupldr.bin是不是要經過修改,如果是、需要改哪些地方呢?

[ 本帖最后由 htt_rd 于 2011-8-12 14:06 编辑 ]
作者: Plantsoot    时间: 2011-8-12 14:34
呵呵,还有个好消息,P大也开始编写grub4dos的外部命令啊。
作者: ksafei    时间: 2011-8-12 14:35
试用“双核测试”进行实机测试,本机CORE2双核,未能成功识别出双核心。



[ 本帖最后由 ksafei 于 2011-8-12 14:48 编辑 ]
作者: panet8888    时间: 2011-8-12 15:13
又有新技术了,学习……
作者: zxw    时间: 2011-8-12 15:30
标题: 回复 #6 Plantsoot 的帖子
早就写了,CLS_CMOS就是汇编写的
作者: songnic    时间: 2011-8-12 16:49
非常支持,这样可以更进一步发挥多核性能了。。

(PE不当PE用)
作者: pseudo    时间: 2011-8-12 21:43
标题: 回复 #7 ksafei 的帖子
#1楼已修正,请重新下载测试。
作者: 2831650    时间: 2011-8-12 22:13
这个PE牛啊 呵呵..
作者: ksafei    时间: 2011-8-12 22:42
标题: 回复 #11 pseudo 的帖子
修正版可以识别双核心了!
作者: zqywult    时间: 2011-8-12 23:52
用“双核测试”(修订后)进行虚拟机测试(简易启动测试器 3.1_STB),未能识别出双核心:

这是简易启动测试器 3.1_STB进0PE后的:


下面是本机系统的:


是否不能用虚拟机测试???
作者: zhjimx    时间: 2011-8-13 00:53
P大新作品新思路,这个值得期待。
作者: appben    时间: 2011-8-13 01:16
P大又出新品了,哈哈!佩服!
作者: zhaohj    时间: 2011-8-13 01:25
支持P大加入grub4dos开发组,用户的福音!
作者: ls68057121    时间: 2011-8-13 01:26
强烈支持新技术啊。我一直都是支持技术的人儿啊。。。
作者: happy_tin    时间: 2011-8-13 05:51
标题: 回复 #1 pseudo 的帖子
p大,下载第一时间测试。成功识别I5双核四线程。有个疑问,为什么我的U盘与硬盘的盘符错乱了?还有,如何上截图啊?
作者: zxw    时间: 2011-8-13 08:06
修正版,AMD双核双线程,实测到native shell阶段重启。

[ 本帖最后由 zxw 于 2011-8-13 08:08 编辑 ]
作者: pseudo    时间: 2011-8-13 08:30
标题: 回复 #20 zxw 的帖子
出中文主菜单时按c,执行
ls (hd-1,0)/bin/cpuid
fat del (hd-1,0)/bin/cpuid
ls (hd-1,0)/bin/cpuid
再按esc。
作者: pseudo    时间: 2011-8-13 08:34
回复 #14 zqywult 的帖子
目前不适用于虚拟机。

回复 #19 happy_tin 的帖子
什么启动介质?usbzip格式?
作者: zxw    时间: 2011-8-13 08:56
标题: 回复 #21 pseudo 的帖子
与cpuid无关。
换0619版grub.exe启动成功,并成功识别双核。

[ 本帖最后由 zxw 于 2011-8-13 09:09 编辑 ]
作者: feiyl    时间: 2011-8-13 09:15
強帖啊,都還沒用上雙核的啊…
作者: 讯极天度    时间: 2011-8-13 10:49
标题: P大的PE 支持了
P大一直很努力与PE,辛苦了
作者: tingyue-wu    时间: 2011-8-13 11:57
经测 amd turion(tm) 64 x2 1.81 移动双核 能够识别
作者: xdlys    时间: 2011-8-13 14:14
下载了0PEv1.3.1(2011-08-09)XP中文版32MB(双核测试).7z
测试:戴尔E520识别双核,华碩X71SL识别双核。
作者: pseudo    时间: 2011-8-13 15:41
原帖由 zxw 于 2011-8-13 08:56 发表
与cpuid无关。
换0619版grub.exe启动成功,并成功识别双核。


那就跟grub4dos版本有关了。

试试
cat --locate=cycles=1 --replace=cycles=-1 (hd-1,0)/kernel/auto_exe.bat
让-1在
-1,0,1,2,3,4,5
之间变化,可能有适当的取值。
作者: peter1123    时间: 2011-8-13 16:13
0PEv1.3.1(2011-08-09)XP中文版32MB(双核测试)
P45 E8400 双核正常识别
作者: pseudo    时间: 2011-8-13 19:12
原帖由 htt_rd 于 2011-8-12 14:00 发表
哇!
    沒想到P大與neo4026版大 2008年在這裡 [[讨论]关于hal.dll与ntoskrnl.exe自动选择的问题] ,現在開花結果了。
P大真是個不放棄解決問題的人。
請問P大;給多核用的setupldr.bin是不是要經過修改,如果是、需要改哪些地方呢?


我用同一个。
作者: ntsyh    时间: 2011-8-13 22:37
联想E6300正常识别双核
作者: zxw    时间: 2011-8-13 23:37
标题: 回复 #28 pseudo 的帖子
郁闷,才从外面回来。
再次重新测试,什么都未改变,居然不重启了。汗,灵异事件?
作者: pseudo    时间: 2011-8-13 23:56
标题: 回复 #32 zxw 的帖子
自己好了就好。

要重现问题,只有等你下次从外面回来再试了。
作者: ntsyh    时间: 2011-8-14 17:24
联想台机杨天M4680N正常识别双核

0809.jpg (51.03 KB, 下载次数: 66)

0809.jpg

作者: thanmail    时间: 2011-8-14 19:06
标题: license
不知道PE有没有license?
作者: tingyue-wu    时间: 2011-8-14 19:23
P大 这里也有一个问题 问问你

外置菜单ISO.LST:
debug off
find --set-root /BOOT/GRUB/USB_ACC.0PE
command --set-path=(bd)/BOOT/GRUB/
unifont ()/BOOT/GRUB/FONTS
background 002500
foreground ffffff
set n=按下序号数字并回车,将进入相应菜单
default 12
title……可输入路径的自动菜单
ls (bd)/BOOT/IMGS/ || echo  命令有效
echo
echo
set listp=/BOOT/IMGS/ && set /u /p listp=>input:
find --set-root ls %listp% || echo && pause --wait=3 >无%listp%目录,或该目录无文件,请重来。 && configfile (md)4+8
RUN --set-ext=.img|/ %listp%.automenu
boot || echo                               命令也有效

但是转到第二外置菜单ISO2.5U中,这两个命令就失效了。菜单切换命令configfile ()/ABC/ISO2.5U。不知道为什么,怎么解决?
希望z大指点
菜单ISO2.5U:
debug off
find --set-root /BOOT/GRUB/USB_ACC.0PE
command --set-path=(bd)/BOOT/GRUB/
set n=按下序号数字并回车,将进入相应菜单
default 12
title……可输入路径的自动菜单
ls (bd)/BOOT/IMGS/ || echo  命令无效
echo
echo
set listp=/BOOT/IMGS/ && set /u /p listp=>input:
find --set-root ls %listp% || echo && pause --wait=3 >无%listp%目录,或该目录无文件,请重来。 && configfile (md)4+8
RUN --set-ext=.iso|/ %listp%.automenu
boot || echo                               命令也失效
作者: 2010ziymin    时间: 2011-8-20 16:01
支持P大作品,又要有所突破了!
作者: 1e3e    时间: 2011-8-21 00:18
学习了,据说双核性能不会提高好多
作者: snbxeon    时间: 2011-8-21 15:47
支持P大又发新作。
作者: 糊涂    时间: 2013-7-6 08:14
纯支持!原来双核识别还有这样一段故事。。。
顺便报告一下
ACER4752机器,可以正常识别双核
菜单也显示“双核”字样
作者: pseudo    时间: 2013-7-6 11:36
1e3e 发表于 2011-8-21 00:18
学习了,据说双核性能不会提高好多

后来,双核03pe终于找到了发挥性能优势的用场:据论坛一键恢复区网友反馈,使用03pe运行贝壳还原工具时,双核的比单核的快一倍左右。

双核pe发挥作用的场合:硬件是双核(这里说的双核泛指多核)的,而且软件是设计为可以利用多核功能的。
如果硬件是单核cpu的老机,即使软件设计为可以利用多核功能并使用多核pe,也只有单核性能;
如果软件是没有利用多核功能的老软件,例如旧版ghost,那么多核cpu、多核pe无从发挥,基本上也只有单核性能;
如果硬件是多核cpu,软件设计为可以利用多核功能,但使用单核pe,也只有单核性能。

0pe是最早也是目前唯一自动识别单双核并以可剪裁组件方式支持双(多)核的03/xppe。
在单核机器上,不会加载多核组件,由于多核组件外置,pe核心体积小,启动快。

注意只有xppe/03pe谈单双核问题,7pe/8pe都是多核pe,不存在单双核问题。
现在谈单双核,有点过时。
作者: 糊涂    时间: 2013-7-6 11:58
pseudo 发表于 2013-7-6 11:36
后来,双核03pe终于找到了发挥性能优势的用场:据论坛一键恢复区网友反馈,使用03pe运行贝壳还原工具时, ...

还好我一直保留P大03PE的双核组件!实机测试CPU温度最低50上下,最高也60上下,个人感觉挺满意!不知道P大下一版做哪些方面的更新?能否预告一下,嘻嘻。。。




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3