'언젠가 읽기' 컨텐츠는 논문이나 영문 컨텐츠 등 언젠가 읽으려고 즐겨찾기 하고선
읽지 않고 계속 미룰만한 컨텐츠를 읽고 요약하거나 소개합니다.
10억 중첩 루프 반복
언젠가 읽기
2025. 2. 11. PM 5:00:30
연구 방법론
본 벤치마크 테스트는 M3 맥북 프로(16GB RAM)를 사용하여 hyperfine 도구로 측정되었습니다. 각 테스트에서는 입력 값으로 40을 사용하였습니다. 다양한 프로그래밍 언어와 그에 해당하는 컴파일러 및 인터프리터 버전을 사용하여 동일한 작업, 즉 10억 개의 중첩 루프 반복 작업을 수행하였습니다.
사용된 언어 및 버전
-
Swift : swift-driver 버전 1.115, Apple Swift 버전 6.0.2
-
Clang : Apple clang 버전 16.0.0
-
Fortran : GNU Fortran (Homebrew GCC 14.2.0_1) 14.2.0
-
R : Rscript (R) 버전 4.4.2
-
Kotlin : kotlinc-jvm 2.0.21
-
MiniRuby (ruby yjit) : ruby 3.4.0dev
-
LuaJIT : LuaJIT 2.1.1731601260
-
Common Lisp (SBCL) : 2.4.11
-
Odin : dev-2024-11:e6475fec4
-
Free Pascal : 3.2.2
-
Java : javac 23.0.1
-
Rust : cargo 1.82.0
-
Scala CLI : 1.5.4
-
Dotnet : 9.0.100
-
Clang++ : 16.0.0
-
Crystal : 1.14.0
-
Elixir : 1.17.3
-
Node : v22.11.0
-
Python : 3.13
-
Ruby : 3.3.5
-
PHP : 8.3.13
-
Dart : 3.5.4
-
Bun : 1.1.34
-
Deno : 2.0.6
-
PyPy : 7.3.17
-
Zig : 0.13.0
-
Inko : 0.17.1
-
Go : 1.21.2
-
Nim : 2.2.0
-
Scala : 3.5.2
벤치마킹 결과
Kotlin
-
평균 시간 : 560.4 ms
-
범위 : 556.1 ms ~ 566.5 ms
C
-
평균 시간 : 518.8 ms
-
범위 : 516.0 ms ~ 521.9 ms
Rust
-
평균 시간 : 515.1 ms
-
범위 : 514.1 ms ~ 516.8 ms
-
경고 : 첫 번째 실행이 다른 실행보다 현저히 느림. 캐시 문제 가능성.
Node
-
평균 시간 : 1.147 s
-
범위 : 1.103 s ~ 1.217 s
Bun
-
평균 시간 : 911.0 ms
-
범위 : 815.7 ms ~ 1097.8 ms
-
경고 : 첫 번째 실행이 다른 실행보다 현저히 느림. 캐시 문제 가능성.
Bun (컴파일된 버전)
-
평균 시간 : 821.0 ms
-
범위 : 817.6 ms ~ 824.1 ms
Deno
-
평균 시간 : 1.153 s
-
범위 : 1.104 s ~ 1.230 s
PyPy
-
평균 시간 : 2.303 s
-
범위 : 2.118 s ~ 2.645 s
-
경고 : 통계적 이상치 발견. 시스템 간섭 가능성.
CPP
-
평균 시간 : 520.7 ms
-
범위 : 511.3 ms ~ 528.1 ms
참고 자료
-
벤치마킹 프로그래밍 언어 성능 가이드
-
고성능 컴퓨팅을 위한 언어 선택
-
실제 애플리케이션에서의 언어 성능 비교