作者tropical72 (藍影)
看板Programming
標題[問題] 怎麼看高階語言指令使用的 cycle time?
時間Fri Dec 3 14:46:08 2010
先說抱歉, 我不是很明白標題怎麼下.
本身是用 C language, 近期一些特殊需求, 開始翻 paper,
將一些數學函式 - 三角,反三角.幕次..etc 想寫得較快,
目前是用高精度計時器去跑1000次計時,但有時出來效果很不穩
( 有時用 math.h 比較快,有時用我寫的比較快)
後來查一些網頁,大多是從編出來的組語去分析 cycle time.
無奈偏偏沒接觸組語, 希望有經驗的人能提供一些方向,
以解決我的二個問題
(1) 怎麼看 C 語言編出來的組語?
(2) 翻出來的 add, sub, mult, div 所用的 cycle time
我只知道是固定的,
是否有相關網址 or datasheet 可查這些 cycle time?
謝謝各位的不吝指教,感激不盡!
--
YouLoveMe() ? LetItBe() : LetMeFree();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.76.142
※ tropical72:轉錄至看板 C_and_CPP 12/03 14:47
※ tropical72:轉錄至看板 ASM 12/03 14:47
1F:→ ericinttu:沒組語底子的話, 還是別看組語程式 59.117.125.160 12/03 15:25
2F:→ ericinttu:從C/C++的視野去改良程式效能即可. 59.117.125.160 12/03 15:26
3F:→ ericinttu:"用高精度計時器去跑1000次計時" 不知是 59.117.125.160 12/03 15:28
4F:→ ericinttu:用哪一種? 個人經驗而言,有些方法不太準 59.117.125.160 12/03 15:29
5F:→ tropical72:我是用 QueryPerformance 方式. 180.177.76.142 12/03 15:41
6F:推 ericinttu:OK, 這個準. 59.117.125.160 12/03 15:52
7F:→ tropical72:謝謝指教,另有時結果似乎會漂,是代表就 180.177.76.142 12/03 16:19
8F:→ tropical72:算有差的話,也差不大嗎? 180.177.76.142 12/03 16:19
9F:→ ericinttu:這個方法我以往的經驗是可以準確到 59.117.125.160 12/03 16:23
10F:→ ericinttu:千分之一秒吧. 但是是在CPU不是很忙的 59.117.125.160 12/03 16:24
11F:→ ericinttu:情況下. (當時是在弄webcam的計時) 59.117.125.160 12/03 16:24
12F:→ ericinttu:我的建議是:在測code之前, 先試試電腦的 59.117.125.160 12/03 16:25
13F:→ ericinttu:狀況. OS平台, 系統環境等等. 59.117.125.160 12/03 16:25
14F:→ ericinttu:因為測效能這東西, 很容易被其他因素干 59.117.125.160 12/03 16:26
15F:→ ericinttu:擾. 59.117.125.160 12/03 16:26
16F:→ tropical72:非常感謝 ^^ 180.177.76.142 12/03 16:29
17F:推 airzone:如果是數學相關運算要加速的話,試試CPU 114.24.124.251 12/11 20:55
18F:→ airzone:廠商出的相關 library 通常都比自已寫的快 114.24.124.251 12/11 20:56