⚡ Jak rychlý je vlastně náš kód?
Po delší době jsem si udělal zase klasické cvičení:
Python 🐍 vs Cython 🚀 vs C ⚡ vs Assembler 🔩 vs Kotlin⚡ a pár dalších
Vzal jsem Fibonacci a výpočet π a změřil se na:
⏱️ operace za sekundu
📦 velikost výsledných programů
🔥 reálný výkon v praxi
Výsledek?
➡️ Python je král jednoduchosti (snadno a rychle napíšu i složitější kód)
➡️ Cython je nejlepší kompromis (za 5 min naprogramujete hru pong s efekty i jako spustitelný exe soubor)
➡️ C je brutálně rychlé (a často mi spočítalo výsledky rychleji než, když jsem psal kód v asembleru neboť interpret C dělá mazané triky jako loop unrolling 8x, instruction reordering, register allocation, branch prediction a SIMD vectorization)
➡️ Assembler není vždy vítěz (musel bych znát lépe mikroarchitekturu CPU, ručně rozvinout smyčky, spočítat latence instrukcí, optimalizovat pro konkrétní cache velikosti…)
➡️ Kotlin – Dal jsem si tu práci a napsal jsem tyhle benchmarky IV kotlinu pro mobilní aplikaci a překvapilo mě, že v některých ohledech byl procesor mého telefonu stejně rychlý nebo i rychlejší než luxusního notebooku (dostal jsem se i přes 800 milionů operací za vteřinu)!
I tak jsem se dostal zhruba na 1 iteraci za nanosekundu.
Infografika níže 👇
#programovani #benchmark #python #cython #clang #asmbler #kotlin #performance #ai #coding #developers #tech
Původně publikováno na Facebooku — odkaz na post
Importováno z Facebooku. Původní zdroj.
