玩转固态硬盘!超版倾情奉献! | | 敢问路在何方 主板技术发展与展望! | | OCER超频排行榜
Pentium E6300与Q8400效能测试 | | 风大倾情推荐:Intel平台超频教学 | | OCER eXtreme Club开放申领
Evga Classified x58 抢先看 | | PII X4 955+TA790GX A3+效能解析 | | 10吋小笔电- ACER D250实机分享
返回列表 回复 发帖

回复 76楼 的帖子

原来是那个王八
原帖由 NUMB 于 2008-6-19 03:06 发表
原来是那个王八
如假包换
绵羊老矣,尚能炮否... ...

一只羊,两只羊,三只羊..........你困了吗?
在指责或者辩解之前,我想先举出几个事实:
1. 运行superpi时,CPU占用率高于99%,大部分时间在100%。即除superpi进程外,其他所有进程占用CPU时间不足1%。
2. CPU硬件的对于执行方式无法通过软件来改变,即流水线运算部件、L1缓存、L2缓存的利用无法通过软件调节。这就意味着只能通过部分存储体系的优化来提升性能,也就是内存性能和磁盘性能的提升。
3. 内存的Mapping方式无法通过操作系统修改,而内存参数是在BIOS中或者Memset中已经设定的。
4. 在QX9650或者9770极限以后,CPU频率差距0.2GHz相当于3%的频率差距,也就是通过优化内存来达到同样的性能,从理论上而言不可能,那么只能利用硬盘方面的提升。(因硬盘是通过DMA控制器来完成数据的传输,IO时间是不计入CPU时间的)
5. 硬盘的传输速率无法用软件修改、硬盘数据存放的位置也是事先决定好的,那么只能通过减少硬盘访问次数来提升性能。
6. 那就只剩下了一个问题:硬盘的访问是否会在superpi运行的过程中占用掉那么多时间?如果占用掉的时间属实,那么又是什么进程占用的?

   其他进程占用掉如此多的硬盘时间是不可能的。随便把系统IDLE掉,硬盘的传输时间绝不可能是整个CPU时间的2倍。那么只能是superpi进程。

   所以要要验证成绩是否是可能达到的,只需要验证是否是superpi进程占用掉那么多硬盘访问时间就够了。

   不知道大家什么看法?
原帖由 Onepagebook 于 2008-6-6 05:05 发表
:)
super pi的tweak不止只有那些
..您的run太多變因
最基本的調整是在於修改reg file,以下為最基本的reg edit
**[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer]
"AlwaysUnloadDLL"= ...
如果只是调整下注册表,关掉一些服务,那么肯定不可能在同频情况下达到1%或者更高的性能提升了。很简单的事实是运行superpi的时候,平均cpu占用率肯定在99%以上。

回复 80楼 vivalinux 的帖子

viva兄,小弟插几句话
http://bbs.ocer.net/thread-223382-1-1.html
这个帖子不知viva可否看过

OPB已将其多年心血总结提炼了出来。

的确,在处理器内部的运行指令当中,无论整数运算及浮点预算甚至多媒体方面,看似任何软体都无法调整与干涉,但是例如L1\L2 Cache还有个命中率的问题在内,是一定范围的随机几率,连Intel也无法保证命中率100%,只是蛮高而已。这就必然会造成有快的有慢的,十分正常!

再说说100%占用那个问题吧!要知道举例来讲,同样平台同样调校下跑Super π 和Prime95,都是100%处理器占用,这个只是任务管理器呈现出来的,实际呢?两者对电脑的需求负荷不同,Maximum FPU Stress,Data fits in L2 Cache,RAM not tested Much(Prime95),o(∩_∩)o...而在整个System balance之后的读写方面(Memory address mapping)是最快的,这个Sleeping or Slider time的Default是以30~40 Second最佳,resource分配的也不同。Super π的方式其实很粗糙,并无法给System stability多大的保证。其实Prime95的运作是比较全面的吃Source,而Super π 是全面的吃MCH,所以很简单的拿QuadCore跑Super π就知道了。看Affinity也是4Cores Load一个Application,那可是只有50%的Loading,即使你把Super π的Priority Set real time也一样。

每一次运行,其实就算配置和设定都一样,也是会有不小差异的,怎么达到最快呢?除了你反复Tweak以外,还有些许运气成分在内!用KeyBoard或是其它方法去Fire一下就知道能差很多的。举例:试试跑到Loop7直接关闭,再开后不要Run 16K,直接再跑1M,就会至少有不同程度的快,就是它HD和Memory Loading的Reset。
再举个例子,OCX上的很多Master都是Super π 的专家了,如果OPB真的是Bullshit,他们会傻到没前途的和一个骗子打拼吗?当然这又是从一个非技术层面去讨论了。
总之,目前来讲,任何我做不到你也做不到的观点是不会被认可的,而任何无论据的臆测也是会被推翻的。捉贼捉赃、捉奸在床!有个作弊程序就说人家是作弊这样不好吧,高考很多人网上买了正确答案,难道所有大学生都不被认可?笑谈!
我個人很感謝萌萌不斷來指教
老弟對這些process有相當的了解
所謂註冊表無用?是那邊無用呢?
always unload dll和Large system cache(LSC)如果不enable,
你告訴我能跑贏有enable,我就相信你說我是不當...作弊;)
這實驗很簡單
曾經流傳windows 2003是跑super pi最快的
其實不是
因為windows 2003比xp快在他是把LSC enable和避免一些不必要的service

那根據這原理把xp拿去模擬2k3...效果會不會一樣?會
像這個論點只是千萬點校調法的一個大缸,不是可以讓大家一言蓋棺論定的

超頻是在所有的big picture極端的環境去求得最平衡的點
而不是你"覺得""或是"..這只是hypathesis,不是theory

誰說super pi 運行時cpu loading 100%
會說這句話,表示你根本不懂super pi與CPU, motherboard, memory甚至於MCH

最簡單一句話也是最簡單的證明
請有quadcore cpu的人來證..
請run一個spi 1m就好...
再同時打開task manager,
如果你的cpu resource被吃掉超過50%...那就奇嚕
只能運行spi oh...
就算我背景一堆程式在跑都不可能超過40%

那...到底真相在那邊?
真相當然自己去找

spi基本上和prime就是不同的運作
當然CPU及memory就會感受到不同的stress...
簡單道理就在身邊,何必把自己縮在小圈圈?;)

[ 本帖最后由 Onepagebook 于 2008-7-10 13:09 编辑 ]
1

评分次数

  • 萌萌

回复 83楼 Onepagebook 的帖子

谈不上什么指教,萌萌就事论事而已,我相信时间可以证明一切
任何人都不想成为井底之蛙,打开天窗看世界,会发现不一样的精彩
原帖由 萌萌 于 2008-7-10 12:42 发表
viva兄,小弟插几句话
http://bbs.ocer.net/thread-223382-1-1.html
这个帖子不知viva可否看过

OPB已将其多年心血总结提炼了出来。

的确,在处理器内部的运行指令当中,无论整数运算及浮点预算甚至多 ...
我没有说OPB作弊,也没有说OPB没作弊。我只是指出,只有有些东西有办法得到调整时,提升(3%)才成为可能。

你上面这些不说我都知道,别忘了我好歹是计算机系的博士研究生...

稍做点科普吧。对于操作系统而言,是用一个任务队列去进行调度。当有就绪任务可以执行的时候,调入内核执行。如果没有任何任务需要执行,进入idle态。调度器本身并不是一个进程,而只是用汇编语言写成的最精简的指令序列。执行一次调度,只不过需要一两百条指令而已。你可以自行算一下,对于高频超标量的CPU,执行一两百条指令需要多长时间。而一旦进程被调入执行,那么将会分得一个时间片,这个时间片一般是几十到一百多毫秒,在此时间片运行完成后才会再次进入调度器,察看是否有其他任务需要运行。在superpi设置为最高优先级时,其他进程可以分得的资源非常非常少,几乎可以忽略不计。99%已经是一个非常非常保守的数字。

关于你说的prime95和sp2004的区别,跟这个问题一点关系都没有。不同的程序意味着不同的程序结构甚至不同的算法,那么自然在CPU执行的时候,需要的运算部件也不一样。CPU占用率只是该进程运行时间占CPU时间的百分比,而运行的稳定性则需要不仅仅看这个进程的CPU占用率,还要看具体在流水线中执行的序列情况。占用的部件是很关键的。非常简单的事实:同一流水级的多个流水线部件之间延迟不可能一样,时钟树生成到每一级寄存器上时钟扭斜也不一样。如果不明白,那么可以看一个更简单的事实:idle也是一个进程,那么在系统空闲时idle的CPU占用率是很高的。idle时超频可以达到的程度,和CPU运行superpi或者sp2004的时候可能一样么?呵呵。

不同的程序有不同的计算需求。但是对于同一个程序,在输入相同时只能得到相同的输出,其计算需求是不变的,这是计算机存在的基本价值。

注意,我上面说的是计算需求,而没有说其他需求。什么地方的需求可能会变?存储子系统部分,包括缓存、内存、硬盘缓冲、硬盘等等。

这就是我在前一文里提出的分析。

对于一个进程对CPU占用率接近100%的任务来说,其他任务可以造成的影响非常非常小。存储部分会造成影响,但是只可能以某些方式造成影响。

[ 本帖最后由 vivalinux 于 2008-7-10 15:53 编辑 ]
原帖由 萌萌 于 2008-7-10 12:42 发表
viva兄,小弟插几句话
http://bbs.ocer.net/thread-223382-1-1.html
这个帖子不知viva可否看过

OPB已将其多年心血总结提炼了出来。

的确,在处理器内部的运行指令当中,无论整数运算及浮点预算甚至多 ...
“每一次运行,其实就算配置和设定都一样,也是会有不小差异的,怎么达到最快呢?除了你反复Tweak以外,还有些许运气成分在内!用KeyBoard或是其它方法去Fire一下就知道能差很多的。举例:试试跑到Loop7直接关闭,再开后不要Run 16K,直接再跑1M,就会至少有不同程度的快,就是它HD和Memory Loading的Reset。”

这个问题很容易解释。在superpi运行的时候,是不断有数据被换入换出缓存的。第一次运行superpi,数据完全没在L1/L2缓存里,需要从内存调入,时间肯定会最长,即所谓发生了相当多的冷失效。那么可以通过先运行一次superpi 1M,让部分数据被调入L1/L2缓存,那么第二次的时候就可以缩短整体的运行时间,即冷失效完全消除,冲突失效尽量减少。让计算最多的数据最少被替换出缓存,就可以达到更好的效果。运行更小规模的superpi,或者运行到中间某步的时候中止再重跑,都会看得到提升。这些方法,从我刚开始跑superpi的时候就在用了。

注册表的优化,我从99年就开始去用。当然也会带来相应的提升,注册表优化在于关闭无关紧要的服务,以及打开一些对于存储系统有优化的选项,它是一个可以得到好处的东西,但不是万能金疮药。
原帖由 Onepagebook 于 2008-7-10 13:06 发表
我個人很感謝萌萌不斷來指教
老弟對這些process有相當的了解
所謂註冊表無用?是那邊無用呢?
always unload dll和Large system cache(LSC)如果不enable,
你告訴我能跑贏有enable,我就相信你說我是不當...作弊;)
...
呵呵,关于4核系统上运行一个superpi程序cpu占用率不可能高于50%,难道不是很正常的事情么?操作系统评判CPU占用率本来就是所有CPU在一起算,一个核心跑superpi,一个核心运行任务管理器和其他空闲任务,CPU占用率本来就不可能高于50%啊。这套计算方式是沿用70年代支持SMP系统的UNIX OS来的,从来没有过争议。superpi软件并不是一个多线程软件,所以最多只能在一个核心上跑。任务管理器并不是实时监控刷新,而是有刷新频率的,所以任务管理器只会占用到很少的计算资源。其他任务基本都处于空闲态,所以占满1/4个内核都是难事。

我也很想知道运行一个单线程程序,和几个空闲进程,CPU占用率如何才能超过50%....

另外,XP系统和2003系统在内核方面上没什么变化,变化的只是服务。而跑superpi,自然的无所谓的服务都是应该关掉的,优先级也是应该调到最高的。一样的内核成绩一样自然很正常。另外,就算是内核重写源码,对于这种单线程任务也不会有啥区别,因为几乎不涉及到任务调度管理的问题。虽然说MS操作系统的内核比较烂,但还没有烂到换个内核对于单superpi会有影响的程度,呵呵。

[ 本帖最后由 vivalinux 于 2008-7-10 15:59 编辑 ]

回复 87楼 vivalinux 的帖子

VIVA是不是北大的张同学?计算机博士研究生?
更多的技术讨论是件好事,越多越深层次越好
viva胸,声明一下,萌萌的意思是楼主指出OPB作弊这件事没有确凿证据,所以不能妄下定论。而法律也规定了“疑罪从无”(无罪推定论)嘛,不能说因为你证明不了没作弊,而且有个作弊程序出现,所以你就是作弊的。
现在就这个讨论希望告一段落,OPB的为人大家都看在眼里呢!
以下只进行技术方面的论述,营造和谐学术氛围,谢谢合作!
狂少长得就不像会作弊的人
原帖由 vivalinux 于 2008-7-10 15:24 发表


我没有说OPB作弊,也没有说OPB没作弊。我只是指出,只有有些东西有办法得到调整时,提升(3%)才成为可能。

你上面这些不说我都知道,别忘了我好歹是计算机系的博士研究生...

稍做点科普吧。对于操作系统而 ...
CPU的指令处理方式和应用环境决定了它的并行处理能力较低,所以非常倚重各种设备的latency,其重要度远远高于带宽。latency本就不是一个固定的数值,或者说只有其中的硬件固有latency才是固定的,其余的部分就会受到软件环境的影响。一个拥有各种进程的操作系统,能够影响这些的很多,各种日志、监控、索引等等,这些东西不一定非要有多高的CPU使用率,但是它们在指令流中如果占据一些空间,那就会影响“主程序”的成绩。此外很多设备的latency本就不是一个很大的数值,所以随便一些风吹草动就能明显改变它。

Super PI是一个不需要多少数据吞吐量的软件,可以说latency决定它的成绩。因此,它的成绩就是一个很容易被一些时实运行的小程序干扰的,周期越多越明显。这个以CPU使用率去评估这些小程序的影响是不准确的。当然这个差别实际应用中是很难被感觉出来的,但在计算super pi时会有差。相信super PI的128k计算(周期少)也不会体现出差别。

[ 本帖最后由 840834 于 2008-7-10 16:55 编辑 ]
超级PI是计算圆周率,而Prime和SP、OR等烧鸡程序都是梅森质数的运算,虽然都是计算,但是差别很大。
依我看,运行超PI时晃一下鼠标都会有成绩的差别,3%以内的误差微不足道,那位北京大学的高材生,您说是不是啊
Viva..我非常確定你不懂super pi..
這是引用你說的
"superpi软件并不是一个多线程软件,所以最多只能在一个核心上跑。任务管理器并不是实时监控刷新,而是有刷新频率的,所以任务管理器只会占用到很少的计算资源。其他任务基本都处于空闲态,所以占满1/4个内核都是难事。"
****************************************************************
super pi可以把它copy 4個放在4個不同檔案夾內
要quadcore 4核全跑super pi,有何難矣
我要是CPU強,要跑16個super pi都沒問題
請去找一個軟體叫Hyperpi是日本人寫的..可以同時跑16個
我知道你的重點
但是請再想想....
您知道怎設affinity嗎?
也就是多工分派指定...
從task manager去叫出每個super pi.exe然後分派
core0--->superpi0
core1--->super pi 1
core2--->super pi 2
core 3--->supeer pi 3

如果這樣跑沒辦法把quadcore滿載..那又奇怪了...你已經連續好多東西都觀念不對:(




[ 本帖最后由 Onepagebook 于 2008-7-10 18:01 编辑 ]
OPB狂少有必要作弊嗎?有些人就是唯恐天下不亂
原帖由 Onepagebook 于 2008-7-10 17:55 发表
Viva..我非常確定你不懂super pi..
這是引用你說的
"superpi软件并不是一个多线程软件,所以最多只能在一个核心上跑。任务管理器并不是实时监控刷新,而是有刷新频率的,所以任务管理器只会占用到很少的计算资源。 ...
到现在为止我确定你对计算机真的不懂。

再做点科普吧。存放的superpi叫做程序,程序是静态的概念。运行中的程序叫做进程,是动态的概念。superpi并不是一个多线程程序,所以运行一个superpi进程只能派生一个线程,从而只能占用一个CPU核心。如果需要占用多个CPU核心,需要运行多个superpi进程。

拜托再说别人不懂之前,能先去了解清楚基本的原理和概念么?

另外不要提其他软件,其他软件做成多线程,和superpi有什么关系么?其他的软件对于系统负载的影响关superpi X事?这就好比我用DDR2 1200 4-4-4跑出来的成绩,你用DDR 400 3-3-3就达到了,然后你跟我讲用DDR3 2000 7-7-7可以达到这个成绩,所以DDR 400 3-3-3一样可以达到。这是什么逻辑?

和没技术的人聊天真累...

[ 本帖最后由 vivalinux 于 2008-7-11 13:30 编辑 ]
原帖由 840834 于 2008-7-10 16:46 发表


CPU的指令处理方式和应用环境决定了它的并行处理能力较低,所以非常倚重各种设备的latency,其重要度远远高于带宽。latency本就不是一个固定的数值,或者说只有其中的硬件固有latency才是固定的,其余的部分就会 ...
希望你看懂了我前面所说的关于操作系统进程切换和调度部分的内容。

在同一平台和硬件设置相同的情况下跑superpi,为达到成绩最快,建立在几个前提之下:

1. 系统中开启的其他进程和服务尽可能少。
2. superpi优先级设置尽可能高。
3. superpi运行过程中尽可能少的进行其他操作。例如不要尝试去打开一个浏览器等等。

你说的latency我前文的分析当然有考虑。现在说的再明白一点。在以上前提达到的时候,跑superpi会有几个事实存在:

1. 跑superpi时,关闭完所有其他可关闭的服务和程序后,系统中的进程只有个位数。而这些系统进程并不会主动引发设备lantency,因为它们是系统daemon。
2. 只有少数设备会引发中断,或者DMA传输,但是无法调整。例如RTC时钟每秒引发18.2次中断,这个不是软件可以干涉的内容。再例如显示DMA传输,最高也是PCI 16X可以达到的上限,无法用软件的方法再去提高效率。内存控制器的参数不可能在跑superpi时调整,否则只会引发效率的降低甚至不稳定。
3. 基于我前面的分析,在进程数量如此少而superpi运行nice值设置为实时的情况下,其他进程很少会被切换到,对于CPU的占用的影响不可能超过1%。

再重申一遍,只有硬盘的访问可以造成3%以上的影响。因为硬盘时间是IO时间。但是我很想知道,如何通过调整系统,去使得硬盘IO最优化?
当然还有更方便的提升superpi的方法:找一个反编译汇编软件,把superpi反编出来,然后针对部分代码优化,再重新编译,就可以达到更好的效果。然后再去说我成绩好,所以我是最NB的。但是这已经不是superpi了,而是superpi optimized by XXX。如果大家认为这种逻辑可以成立的话,那么大家是否也希望看到奥运万米比赛时某人开着跑车参赛然后夺冠呢?
再申明两点,以防某些脑残不明白:

1. 我没有认为OPB的成绩是作弊的,也没有讲OPB的理论对于跑superpi没用。相反,系统优化是肯定有帮助的,但是一般的优化会有很大的限度,不是万能金疮药。

2. OPB本人的计算机技术领教了,嗯。没有继续讨论下去的兴趣了。

[ 本帖最后由 vivalinux 于 2008-7-11 13:42 编辑 ]
原帖由 vivalinux 于 2008-7-11 13:40 发表
再申明两点,以防某些脑残不明白:

1. 我没有认为OPB的成绩是作弊的,也没有讲OPB的理论对于跑superpi没用。相反,系统优化是肯定有帮助的,但是一般的优化会有很大的限度,不是万能金疮药。

2. OPB本人的计算 ...
我不想吵架,也不想对谁进行人身攻击,但是实在看不下去了!您这位自称计算机博士研究生的朋友,也许本来就是哈!我想告诉您,学历不代表能力。你北大的博士又如何?计算机不是你发明的,也不是你说了什么就都对。ocer编辑们和opb的学历不比你低多少吧,谁上来就拿学历或一堆理论的东西欺负人了?有本事自己跑个成绩干掉狂少,用嘴打口水仗算什么本事?怎么没见你挤进什么超频排行榜呢?反倒是你口中那个“就这水平”的狂少人家刷新过很多WR,山外有山,但是你是井底之蛙而已。我其实早前听说过你们几大高校学子玩OC的事,当时觉得挺好,能对国内OC事业有推动作用,现在看来,你什么都不是,只是个小人,小小人!

ID大不了不要了,我今天也要痛骂你这厮
原帖由 vivalinux 于 2008-7-11 12:58 发表


到现在为止我确定你对计算机真的不懂。

再做点科普吧。存放的superpi叫做程序,程序是静态的概念。运行中的程序叫做进程,是动态的概念。superpi并不是一个多线程程序,所以运行一个superpi进程只能派生一个线 ...
你还确定了狂少对计算机不懂?你如何确定?狂少的计算机水平可不是二进制数0和1那么简单的就能判断吧
做科普?你也配?不过你倒是真的好意思说出来哈
VIVALINUX,你的理论与实际相脱节不少嘛
不要在自装清高让大家看笑话了,今天我出言骂你还算看得起你,明天我臊着你不理你就剩你一个在这里华山论剑吧,对对对,那个叫科普,好伟大,掌声献给本世纪最俯卧撑的VIVALINUX
返回列表