Autoit & Autohotkey Benchmarks

AU3_AHK_Benchmarks

Autoit 和 AutoHotkey 在性能上的一個小測試,使用了原生的功能和 DllCall 方法測試執行時間,並且使用了兩者官方最新版本。

以下為各項測試環境:

處理器: Intel Core2 6400, 2.13GHZ, 1.60GHZ
記憶體: 2.0GB
作業系統: Windows 7 (32位元)
顯示卡: 華碩 ATI 3850

常駐程式就忽略了,僅小測試兩者的效率

測試代碼:

Autoit 3.3.9.24 Beta(32)

; Cody by Rchockxm

Func Fib($n)
    If $n <= 2 Then Return 1

    return Fib($n - 1) + Fib($n - 2)
EndFunc

GLOBAL $hDll = DllOpen("kernel32.dll")
GLOBAL $GetTickCount = DllCall($hDll, "int", "GetTickCount")
GLOBAL $startTime = $GetTickCount[0]
GLOBAL $endTime = 0
GLOBAL $elapsedTime = 0

$FibReturn = Fib(30)

$GetTickCount = DllCall($hDll, "int", "GetTickCount")
$endTime = $GetTickCount[0]
$elapsedTime = ($endTime - $startTime) / 1000

DllClose($hDll)

Msgbox(4096, "AU3 Test by Rchockxm", "Function FIB Result: " & $FibReturn & " Elapsed Time: " & $elapsedTime & " sec")

測試代碼:

AutoHotkey 1.1.13.1 Unicode(32)

; Cody by Rchockxm

Fib(n) 
{
    If n <= 2 
    {
        Return 1
    }

    return Fib(n - 1) + Fib(n - 2)
}

global GetTickCount := DllCall("GetTickCount", "int")
global startTime := GetTickCount
global endTime := 0
global elapsedTime := 0

FibReturn := Fib(30)

GetTickCount := DllCall("GetTickCount", "int")
endTime := GetTickCount
elapsedTime := (endTime - startTime) / 1000

Msgbox, 4096, AHKL Test by Rchockxm, Function FIB Result: %FibReturn% Elapsed Time: %elapsedTime% sec

檔案下載: 圖一

- CRC32: 37B98732
- MD5: 8BDF870E87983E401F3B815DC2E25806
- SHA-1: 2EA0E97AAF34642C5410553D84105A7AB8DE062C

Silence Unlimited Download#1
Silence Unlimited Download#2

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

你可以使用這些 HTML 標籤與屬性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>