Convert all memory values from MB to bytes in README
- Updated all memory charts to show bytes instead of MB - Converted y-axis ranges from MB to bytes (e.g., 3 MB -> 3000000 bytes) - Converted all memory values in charts (e.g., 2 MB -> 2000000 bytes) - Updated all table headers to show 'Memory (bytes)' - Better for comparing memory usage across all languages
This commit is contained in:
@@ -53,15 +53,15 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 100 decimals"
|
title "Compiled Languages - Time (ms) at 100 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [9, 9, 9, 9, 9, 9, 9, 27, 29, 28]
|
[9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 27000000, 29000000, 28000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
xychart-beta
|
xychart-beta
|
||||||
title "Compiled Languages - Memory Usage (MB) at 100 decimals"
|
title "Compiled Languages - Memory Usage (MB) at 100 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Memory (MB)" 0 --> 1
|
y-axis "Memory (bytes)" 0 --> 100
|
||||||
bar [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### JIT-Compiled Languages
|
#### JIT-Compiled Languages
|
||||||
@@ -71,15 +71,15 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 100 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 100 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 300
|
y-axis "Time (ms)" 0 --> 300
|
||||||
bar [57, 57, 83, 290]
|
[57000000, 57000000, 83000000, 290000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
xychart-beta
|
xychart-beta
|
||||||
title "JIT-Compiled Languages - Memory Usage (MB) at 100 decimals"
|
title "JIT-Compiled Languages - Memory Usage (MB) at 100 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
bar [2, 2, 2, 2]
|
[2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Interpreted Languages
|
#### Interpreted Languages
|
||||||
@@ -89,15 +89,15 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 100 decimals"
|
title "Interpreted Languages - Time (ms) at 100 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 90
|
y-axis "Time (ms)" 0 --> 90
|
||||||
bar [57, 55, 77, 79, 84]
|
[57000000, 55000000, 77000000, 79000000, 84000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
```mermaid
|
||||||
xychart-beta
|
xychart-beta
|
||||||
title "Interpreted Languages - Memory Usage (MB) at 100 decimals"
|
title "Interpreted Languages - Memory Usage (MB) at 100 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
bar [2, 2, 2, 2, 2]
|
[2000000, 2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Slowest Languages
|
#### Slowest Languages
|
||||||
@@ -107,7 +107,7 @@ xychart-beta
|
|||||||
title "Slowest Languages - Time (ms) at 100 decimals"
|
title "Slowest Languages - Time (ms) at 100 decimals"
|
||||||
x-axis ["Erlang", "R", "Elixir", "Scala", "TypeScript"]
|
x-axis ["Erlang", "R", "Elixir", "Scala", "TypeScript"]
|
||||||
y-axis "Time (ms)" 0 --> 900
|
y-axis "Time (ms)" 0 --> 900
|
||||||
bar [130, 349, 898, 58, 154]
|
[130000000, 349000000, 898000000, 58000000, 154000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
### Performance Scaling by Decimal Count
|
### Performance Scaling by Decimal Count
|
||||||
@@ -120,7 +120,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 1 decimal"
|
title "Compiled Languages - Time (ms) at 1 decimal"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [10, 10, 9, 9, 9, 9, 9, 28, 29, 28]
|
[10000000, 10000000, 9000000, 9000000, 9000000, 9000000, 9000000, 28000000, 29000000, 28000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -129,7 +129,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 1 decimal"
|
title "JIT-Compiled Languages - Time (ms) at 1 decimal"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 300
|
y-axis "Time (ms)" 0 --> 300
|
||||||
bar [57, 58, 83, 297]
|
[57000000, 58000000, 83000000, 297000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -138,7 +138,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 1 decimal"
|
title "Interpreted Languages - Time (ms) at 1 decimal"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 90
|
y-axis "Time (ms)" 0 --> 90
|
||||||
bar [57, 54, 78, 79, 82]
|
[57000000, 54000000, 78000000, 79000000, 82000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 2 Decimals
|
#### 2 Decimals
|
||||||
@@ -149,7 +149,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 2 decimals"
|
title "Compiled Languages - Time (ms) at 2 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [9, 9, 9, 9, 9, 9, 9, 26, 29, 28]
|
[9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 26000000, 29000000, 28000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -158,7 +158,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 2 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 2 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 300
|
y-axis "Time (ms)" 0 --> 300
|
||||||
bar [57, 57, 83, 294]
|
[57000000, 57000000, 83000000, 294000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -167,7 +167,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 2 decimals"
|
title "Interpreted Languages - Time (ms) at 2 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 90
|
y-axis "Time (ms)" 0 --> 90
|
||||||
bar [57, 53, 79, 80, 83]
|
[57000000, 53000000, 79000000, 80000000, 83000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 5 Decimals
|
#### 5 Decimals
|
||||||
@@ -178,7 +178,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 5 decimals"
|
title "Compiled Languages - Time (ms) at 5 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [8, 10, 9, 9, 9, 9, 9, 15, 28, 28]
|
[8000000, 10000000, 9000000, 9000000, 9000000, 9000000, 9000000, 15000000, 28000000, 28000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -187,7 +187,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 5 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 5 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 300
|
y-axis "Time (ms)" 0 --> 300
|
||||||
bar [57, 57, 83, 292]
|
[57000000, 57000000, 83000000, 292000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -196,7 +196,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 5 decimals"
|
title "Interpreted Languages - Time (ms) at 5 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 90
|
y-axis "Time (ms)" 0 --> 90
|
||||||
bar [57, 55, 80, 80, 83]
|
[57000000, 55000000, 80000000, 80000000, 83000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 10 Decimals
|
#### 10 Decimals
|
||||||
@@ -207,7 +207,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 10 decimals"
|
title "Compiled Languages - Time (ms) at 10 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 40
|
y-axis "Time (ms)" 0 --> 40
|
||||||
bar [9, 9, 9, 9, 9, 9, 9, 21, 29, 29]
|
[9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 9000000, 21000000, 29000000, 29000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -216,7 +216,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 10 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 10 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 310
|
y-axis "Time (ms)" 0 --> 310
|
||||||
bar [58, 58, 83, 302]
|
[58000000, 58000000, 83000000, 302000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -225,7 +225,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 10 decimals"
|
title "Interpreted Languages - Time (ms) at 10 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 90
|
y-axis "Time (ms)" 0 --> 90
|
||||||
bar [57, 54, 78, 79, 83]
|
[57000000, 54000000, 78000000, 79000000, 83000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 1000 Decimals
|
#### 1000 Decimals
|
||||||
@@ -236,7 +236,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 1000 decimals"
|
title "Compiled Languages - Time (ms) at 1000 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [9, 9, 30, 9, 9, 9, 9, 31, 29, 29]
|
[9000000, 9000000, 30000000, 9000000, 9000000, 9000000, 9000000, 31000000, 29000000, 29000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -245,7 +245,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 1000 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 1000 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 310
|
y-axis "Time (ms)" 0 --> 310
|
||||||
bar [57, 57, 83, 299]
|
[57000000, 57000000, 83000000, 299000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -254,7 +254,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 1000 decimals"
|
title "Interpreted Languages - Time (ms) at 1000 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 240
|
y-axis "Time (ms)" 0 --> 240
|
||||||
bar [60, 103, 79, 79, 233]
|
[60000000, 103000000, 79000000, 79000000, 233000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
#### 2000 Decimals
|
#### 2000 Decimals
|
||||||
@@ -265,7 +265,7 @@ xychart-beta
|
|||||||
title "Compiled Languages - Time (ms) at 2000 decimals"
|
title "Compiled Languages - Time (ms) at 2000 decimals"
|
||||||
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
x-axis ["Assembly", "C", "C++", "Rust", "Go", "Nim", "Odin", "Fortran", "Swift", "Crystal"]
|
||||||
y-axis "Time (ms)" 0 --> 35
|
y-axis "Time (ms)" 0 --> 35
|
||||||
bar [9, 27, 33, 9, 9, 9, 9, 31, 29, 29]
|
[9000000, 27000000, 33000000, 9000000, 9000000, 9000000, 9000000, 31000000, 29000000, 29000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**JIT-Compiled Languages:**
|
**JIT-Compiled Languages:**
|
||||||
@@ -274,7 +274,7 @@ xychart-beta
|
|||||||
title "JIT-Compiled Languages - Time (ms) at 2000 decimals"
|
title "JIT-Compiled Languages - Time (ms) at 2000 decimals"
|
||||||
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
x-axis ["Java", "C#", "Kotlin", "Julia"]
|
||||||
y-axis "Time (ms)" 0 --> 310
|
y-axis "Time (ms)" 0 --> 310
|
||||||
bar [57, 57, 83, 299]
|
[57000000, 57000000, 83000000, 299000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Interpreted Languages:**
|
**Interpreted Languages:**
|
||||||
@@ -283,7 +283,7 @@ xychart-beta
|
|||||||
title "Interpreted Languages - Time (ms) at 2000 decimals"
|
title "Interpreted Languages - Time (ms) at 2000 decimals"
|
||||||
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
x-axis ["Python", "Perl", "PHP", "Ruby", "JavaScript"]
|
||||||
y-axis "Time (ms)" 0 --> 240
|
y-axis "Time (ms)" 0 --> 240
|
||||||
bar [60, 103, 79, 79, 233]
|
[60000000, 103000000, 79000000, 79000000, 233000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
### Resource Usage Over Time
|
### Resource Usage Over Time
|
||||||
@@ -298,8 +298,8 @@ The following charts show memory usage throughout the program's entire lifetime.
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "C - Memory Usage Over Time"
|
title "C - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 12
|
x-axis "Time (ms)" 0 --> 12
|
||||||
y-axis "Memory (MB)" 0 --> 1
|
y-axis "Memory (bytes)" 0 --> 100
|
||||||
line [0.0]
|
[0]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** C uses practically no memory and executes in 11ms. Memory remains stable at 0 MB throughout execution.
|
**Analysis:** C uses practically no memory and executes in 11ms. Memory remains stable at 0 MB throughout execution.
|
||||||
@@ -310,8 +310,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Rust - Memory Usage Over Time"
|
title "Rust - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 12
|
x-axis "Time (ms)" 0 --> 12
|
||||||
y-axis "Memory (MB)" 0 --> 1
|
y-axis "Memory (bytes)" 0 --> 100
|
||||||
line [0.0]
|
[0]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Rust matches C in performance and memory usage. Zero-cost abstractions provide optimal performance.
|
**Analysis:** Rust matches C in performance and memory usage. Zero-cost abstractions provide optimal performance.
|
||||||
@@ -322,8 +322,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Assembly - Memory Usage Over Time"
|
title "Assembly - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 20
|
x-axis "Time (ms)" 0 --> 20
|
||||||
y-axis "Memory (MB)" 0 --> 1
|
y-axis "Memory (bytes)" 0 --> 100
|
||||||
line [0.0]
|
[0]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Assembly shows similar performance to C and Rust with minimal memory.
|
**Analysis:** Assembly shows similar performance to C and Rust with minimal memory.
|
||||||
@@ -334,8 +334,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Haskell - Memory Usage Over Time"
|
title "Haskell - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 8
|
x-axis "Time (ms)" 0 --> 8
|
||||||
y-axis "Memory (MB)" 0 --> 12
|
y-axis "Memory (bytes)" 0 --> 12000000
|
||||||
line [10.5]
|
[10500000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Haskell is fast (49ms) but uses significantly more memory (10.5 MB) due to runtime and garbage collector.
|
**Analysis:** Haskell is fast (49ms) but uses significantly more memory (10.5 MB) due to runtime and garbage collector.
|
||||||
@@ -346,8 +346,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Dart - Memory Usage Over Time"
|
title "Dart - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 12
|
x-axis "Time (ms)" 0 --> 12
|
||||||
y-axis "Memory (MB)" 0 --> 11
|
y-axis "Memory (bytes)" 0 --> 11000000
|
||||||
line [9.1]
|
[9100000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Dart shows higher memory usage (9.1 MB) but maintains good performance thanks to JIT compilation.
|
**Analysis:** Dart shows higher memory usage (9.1 MB) but maintains good performance thanks to JIT compilation.
|
||||||
@@ -360,8 +360,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Elixir - Memory Usage Over Time"
|
title "Elixir - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 300
|
x-axis "Time (ms)" 0 --> 300
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
line [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]
|
[2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Elixir is slower (338ms) but shows very stable memory usage at 2 MB throughout execution. The BEAM VM provides predictable memory usage.
|
**Analysis:** Elixir is slower (338ms) but shows very stable memory usage at 2 MB throughout execution. The BEAM VM provides predictable memory usage.
|
||||||
@@ -372,8 +372,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "TypeScript - Memory Usage Over Time"
|
title "TypeScript - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 1500
|
x-axis "Time (ms)" 0 --> 1500
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
line [1.9, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]
|
[1900000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** TypeScript is slowest (1780ms) but shows an interesting memory profile: starts lower (1.9 MB) and quickly stabilizes at 2 MB.
|
**Analysis:** TypeScript is slowest (1780ms) but shows an interesting memory profile: starts lower (1.9 MB) and quickly stabilizes at 2 MB.
|
||||||
@@ -384,8 +384,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Scala - Memory Usage Over Time"
|
title "Scala - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 360
|
x-axis "Time (ms)" 0 --> 360
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
line [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0]
|
[2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Scala on JVM shows stable memory usage but slower execution due to JVM startup time.
|
**Analysis:** Scala on JVM shows stable memory usage but slower execution due to JVM startup time.
|
||||||
@@ -396,8 +396,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "JavaScript - Memory Usage Over Time"
|
title "JavaScript - Memory Usage Over Time"
|
||||||
x-axis "Time (ms)" 0 --> 500
|
x-axis "Time (ms)" 0 --> 500
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
line [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 2.0, 0.0]
|
[2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 2000000, 0]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** JavaScript shows stable memory usage but with an interesting drop at the end (0 MB) when the process terminates.
|
**Analysis:** JavaScript shows stable memory usage but with an interesting drop at the end (0 MB) when the process terminates.
|
||||||
@@ -410,8 +410,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Fast Languages - Memory Usage Comparison"
|
title "Fast Languages - Memory Usage Comparison"
|
||||||
x-axis ["C", "Rust", "Assembly", "Go", "Nim", "Odin", "C++", "Fortran", "Swift", "Haskell", "Dart"]
|
x-axis ["C", "Rust", "Assembly", "Go", "Nim", "Odin", "C++", "Fortran", "Swift", "Haskell", "Dart"]
|
||||||
y-axis "Memory (MB)" 0 --> 12
|
y-axis "Memory (bytes)" 0 --> 12000000
|
||||||
bar [0, 0, 0, 0, 0, 0, 0, 1, 0, 10.5, 9.1]
|
[0, 0, 0, 0, 0, 0, 0, 1000000, 0, 10500000, 9100000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** Most fast languages use minimal memory (0-1 MB), but Haskell and Dart stand out with 9-11 MB due to their runtime environments.
|
**Analysis:** Most fast languages use minimal memory (0-1 MB), but Haskell and Dart stand out with 9-11 MB due to their runtime environments.
|
||||||
@@ -422,8 +422,8 @@ xychart-beta
|
|||||||
xychart-beta
|
xychart-beta
|
||||||
title "Slow Languages - Memory Usage Comparison"
|
title "Slow Languages - Memory Usage Comparison"
|
||||||
x-axis ["Elixir", "Erlang", "R", "Scala", "TypeScript"]
|
x-axis ["Elixir", "Erlang", "R", "Scala", "TypeScript"]
|
||||||
y-axis "Memory (MB)" 0 --> 3
|
y-axis "Memory (bytes)" 0 --> 3000000
|
||||||
bar [2.0, 2.0, 2.0, 2.0, 2.0]
|
[2000000, 2000000, 2000000, 2000000, 2000000]
|
||||||
```
|
```
|
||||||
|
|
||||||
**Analysis:** All slow languages show similar memory usage (2 MB), suggesting that execution time doesn't directly correlate with memory usage.
|
**Analysis:** All slow languages show similar memory usage (2 MB), suggesting that execution time doesn't directly correlate with memory usage.
|
||||||
@@ -477,7 +477,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 1 Decimal
|
#### 1 Decimal
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 10 | 0 | ✓ |
|
| Assembly | 10 | 0 | ✓ |
|
||||||
| C | 10 | 0 | ✓ |
|
| C | 10 | 0 | ✓ |
|
||||||
@@ -514,7 +514,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 2 Decimals
|
#### 2 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 9 | 0 | ✓ |
|
| Assembly | 9 | 0 | ✓ |
|
||||||
| C | 9 | 0 | ✓ |
|
| C | 9 | 0 | ✓ |
|
||||||
@@ -551,7 +551,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 5 Decimals
|
#### 5 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 8 | 0 | ✓ |
|
| Assembly | 8 | 0 | ✓ |
|
||||||
| C | 10 | 0 | ✓ |
|
| C | 10 | 0 | ✓ |
|
||||||
@@ -588,7 +588,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 10 Decimals
|
#### 10 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 9 | 0 | ✓ |
|
| Assembly | 9 | 0 | ✓ |
|
||||||
| C | 9 | 0 | ✓ |
|
| C | 9 | 0 | ✓ |
|
||||||
@@ -625,7 +625,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 100 Decimals
|
#### 100 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 9 | 0 | ✓ |
|
| Assembly | 9 | 0 | ✓ |
|
||||||
| C | 9 | 0 | ✓ |
|
| C | 9 | 0 | ✓ |
|
||||||
@@ -662,7 +662,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 1000 Decimals
|
#### 1000 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 9 | 0 | ✓ |
|
| Assembly | 9 | 0 | ✓ |
|
||||||
| C | 9 | 0 | ✓ |
|
| C | 9 | 0 | ✓ |
|
||||||
@@ -699,7 +699,7 @@ The following tables show how performance scales with increasing decimal precisi
|
|||||||
|
|
||||||
#### 2000 Decimals
|
#### 2000 Decimals
|
||||||
|
|
||||||
| Language | Time (ms) | Memory (MB) | Status |
|
| Language | Time (ms) | Memory (bytes) | Status |
|
||||||
|----------|-----------|-------------|--------|
|
|----------|-----------|-------------|--------|
|
||||||
| Assembly | 9 | 0 | ✓ |
|
| Assembly | 9 | 0 | ✓ |
|
||||||
| C | 27 | 0 | ✓ |
|
| C | 27 | 0 | ✓ |
|
||||||
|
|||||||
Reference in New Issue
Block a user