KABAFORCEGeliştirici KabaOS'u edinin

Sayısal hesaplama

Fibonacci özyineleme

fib(35) özyinelemeli olarak hesaplanır: 9.227.465 işlev çağrısı. İşlev çağrısının maliyetini ve tam sayı toplamasını (KabaLang'da taşma denetimli) ölçer.

Bu sayfayı KabaLang ile yazılmış sunucu sundu.

Canlı ölçüm

Bu testi kendi bilgisayarınızda ölçün

Fibonacci özyineleme tarayıcınızda, WebAssembly ile koşar: KabaLang, C++, JavaScript ve Python. Ölçüm sayfası bu testi seçili açar; sonuçlar cihazınızda kalır.

Bu testi canlı ölç

Fibonacci özyineleme

C++'tan 1,27 kat hızlı

fib(35) · 9,2 milyon işlev çağrısı. Çubuk uzunsa daha hızlı.

DilReferans
KabaLang
16,3 ms
C++
20,7 msKabaLang 1,27 kat hızlı
Python
761 msKabaLang 47 kat hızlı
DilEn iyiOrtalamaDerlemeİkili boyutu
KabaLang16,3 ms17,2 ms580 ms981 KB
C++20,7 ms21,1 ms427 ms16 KB
Python761 ms770 ms––

Referans ölçüm: 21 Ekim 2026 14:53 · 11th Gen Intel(R) Core(TM) i7-11370H @ 3.30GHz · KabaLang 0.6.0 (94109b3+) · süreler milisaniye; ısınma koşusundan sonra 10 koşunun en iyisi.

Bu testte KabaLang / C++ oranı, zaman içinde

Fibonacci özyineleme: KabaLang / C++ süre oranı0,50×0,75×1,00×1,25×20 Ekim 2026 21:18 · KabaLang 0.6.0 (b0e9258) · 17 / 22 msb0e925821 Ekim 2026 05:21 · KabaLang 0.6.0 (e4756c0) · 18 / 23 ms21 Ekim 2026 06:07 · KabaLang 0.6.0 (94109b3+) · 16 / 21 ms21 Ekim 2026 06:13 · KabaLang 0.6.0 (94109b3+) · 16 / 21 ms21 Ekim 2026 07:18 · KabaLang 0.6.0 (94109b3+) · 16 / 21 ms21 Ekim 2026 14:53 · KabaLang 0.6.0 (94109b3+) · 16 / 21 ms94109b3+0,79×

Ne ölçüyor?

İşlev çağrısının maliyetini ve tam sayı toplamasını (KabaLang'da taşma denetimli) ölçer.

Kategori: Sayısal hesaplama. Tam sayı ve ondalık aritmetik, sıkı döngüler, işlev çağrıları. Üç program da aynı algoritmayı aynı adımlarla uygular ve aynı çıktıyı üretmek zorundadır; çıktı tutmazsa ölçüm geçersiz sayılır.

Beklenen çıktı

stdout
9227465

Derleme

Komutlar ve bayraklar

KabaLang

Uçbirim
kabalang derle program.kbl -o program
./program

C++

Uçbirim
clang++ -O2 -o program program.cpp
./program

Python

Uçbirim
python3 program.py

Kaynak

Ölçülen programlar

Aşağıdaki dosyalar ölçülen programların kendisidir.

program.kbl
fonksiyon fib(n: sayi) -> sayi:
    eger n < 2:
        don n
    don fib(n - 1) + fib(n - 2)

yazdir(fib(35))
program.cpp
#include <iostream>

long long fib(long long n) {
    if (n < 2) return n;
    return fib(n - 1) + fib(n - 2);
}

int main() {
    std::cout << fib(35) << std::endl;
    return 0;
}
program.py
def fib(n: int) -> int:
    if n < 2:
        return n
    return fib(n - 1) + fib(n - 2)

print(fib(35))
program.js · yalnız tarayıcı ölçümünde
function fib(n) {
  if (n < 2) return n;
  return fib(n - 1) + fib(n - 2);
}

export default function program(yaz = console.log) {
  yaz(fib(35));
}

// `node program.js` ile de koşar (tarayıcıda ölçüm işçisi program()ı çağırır).
if (globalThis.process?.argv?.[1]?.endsWith("program.js")) program();