목록으로
'언젠가 읽기' 컨텐츠는 논문이나 영문 컨텐츠 등 언젠가 읽으려고 즐겨찾기 하고선 읽지 않고 계속 미룰만한 컨텐츠를 읽고 요약하거나 소개합니다.

10억 중첩 루프 반복

연구 방법론

본 벤치마크 테스트는 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

참고 자료

  • 벤치마킹 프로그래밍 언어 성능 가이드
  • 고성능 컴퓨팅을 위한 언어 선택
  • 실제 애플리케이션에서의 언어 성능 비교