atomic-ruby 0.7.0 → 0.7.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/README.md +17 -17
- data/lib/atomic-ruby/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: df0115a62c1857c8f5c11cac42003d5ed1c91ec1c5b204d5b5cf093f25d5cab9
|
|
4
|
+
data.tar.gz: 67963d4c342b33e235a5cb320013388dc227d46311c80c1b19e029b4ff02bc1d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: e26adf803f4e798808a736eabdb86dc8d4074a71231aa2806e15f84ea5c8c6a7770cc268fb412733702fb0c540d1392e01265bf3571c3d143165f51776f72c19
|
|
7
|
+
data.tar.gz: d788e9e25c29f26050095050357ddb64b31a132bd1c9d9e13604945eec2382744a0b94e9f946d97eec6721c73fa16d83e574fc5e3e0644a3101c8b97b9b9b833
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [0.7.2] - 2025-10-26
|
|
4
|
+
|
|
5
|
+
- Revert "Fix O(n) performance issue in `AtomicThreadPool#<<` by using linked list"
|
|
6
|
+
|
|
7
|
+
## [0.7.1] - 2025-10-26
|
|
8
|
+
|
|
9
|
+
- Fix O(n) performance issue in `AtomicThreadPool#<<` by using linked list
|
|
10
|
+
|
|
3
11
|
## [0.7.0] - 2025-10-20
|
|
4
12
|
|
|
5
13
|
- Improve thread safety, performance, and error handling across atomic classes
|
data/README.md
CHANGED
|
@@ -212,7 +212,7 @@ puts "Atomic Ruby Atomic Bank Account: #{results[2].real.round(6)} seconds"
|
|
|
212
212
|
|
|
213
213
|
ruby version: ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +YJIT +PRISM [arm64-darwin25]
|
|
214
214
|
concurrent-ruby version: 1.3.5
|
|
215
|
-
atomic-ruby version: 0.
|
|
215
|
+
atomic-ruby version: 0.7.0
|
|
216
216
|
|
|
217
217
|
Balances:
|
|
218
218
|
Synchronized Bank Account Balance: 975
|
|
@@ -220,9 +220,9 @@ Concurrent Ruby Atomic Bank Account Balance: 975
|
|
|
220
220
|
Atomic Ruby Atomic Bank Account Balance: 975
|
|
221
221
|
|
|
222
222
|
Benchmark Results:
|
|
223
|
-
Synchronized Bank Account: 5.
|
|
224
|
-
Concurrent Ruby Atomic Bank Account: 5.
|
|
225
|
-
Atomic Ruby Atomic Bank Account: 5.
|
|
223
|
+
Synchronized Bank Account: 5.102692 seconds
|
|
224
|
+
Concurrent Ruby Atomic Bank Account: 5.100103 seconds
|
|
225
|
+
Atomic Ruby Atomic Bank Account: 5.096461 seconds
|
|
226
226
|
```
|
|
227
227
|
|
|
228
228
|
</details>
|
|
@@ -303,27 +303,27 @@ end
|
|
|
303
303
|
|
|
304
304
|
ruby version: ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +YJIT +PRISM [arm64-darwin25]
|
|
305
305
|
concurrent-ruby version: 1.3.5
|
|
306
|
-
atomic-ruby version: 0.
|
|
306
|
+
atomic-ruby version: 0.7.0
|
|
307
307
|
|
|
308
308
|
Warming up --------------------------------------
|
|
309
309
|
Synchronized Boolean Toggle
|
|
310
|
-
|
|
310
|
+
93.000 i/100ms
|
|
311
311
|
Concurrent Ruby Atomic Boolean Toggle
|
|
312
|
-
|
|
312
|
+
79.000 i/100ms
|
|
313
313
|
Atomic Ruby Atomic Boolean Toggle
|
|
314
|
-
|
|
314
|
+
87.000 i/100ms
|
|
315
315
|
Calculating -------------------------------------
|
|
316
316
|
Synchronized Boolean Toggle
|
|
317
|
-
|
|
317
|
+
889.613 (± 3.0%) i/s (1.12 ms/i) - 4.464k in 5.022732s
|
|
318
318
|
Concurrent Ruby Atomic Boolean Toggle
|
|
319
|
-
|
|
319
|
+
803.418 (± 2.5%) i/s (1.24 ms/i) - 4.029k in 5.017952s
|
|
320
320
|
Atomic Ruby Atomic Boolean Toggle
|
|
321
|
-
|
|
321
|
+
1.037k (± 3.1%) i/s (964.07 μs/i) - 5.220k in 5.037558s
|
|
322
322
|
|
|
323
323
|
Comparison:
|
|
324
|
-
Atomic Ruby Atomic Boolean Toggle:
|
|
325
|
-
Synchronized Boolean Toggle:
|
|
326
|
-
Concurrent Ruby Atomic Boolean Toggle:
|
|
324
|
+
Atomic Ruby Atomic Boolean Toggle: 1037.3 i/s
|
|
325
|
+
Synchronized Boolean Toggle: 889.6 i/s - 1.17x slower
|
|
326
|
+
Concurrent Ruby Atomic Boolean Toggle: 803.4 i/s - 1.29x slower
|
|
327
327
|
```
|
|
328
328
|
|
|
329
329
|
</details>
|
|
@@ -381,11 +381,11 @@ puts "Atomic Ruby Atomic Thread Pool: #{results[1].real.round(6)} seconds"
|
|
|
381
381
|
|
|
382
382
|
ruby version: ruby 3.4.7 (2025-10-08 revision 7a5688e2a2) +YJIT +PRISM [arm64-darwin25]
|
|
383
383
|
concurrent-ruby version: 1.3.5
|
|
384
|
-
atomic-ruby version: 0.
|
|
384
|
+
atomic-ruby version: 0.7.0
|
|
385
385
|
|
|
386
386
|
Benchmark Results:
|
|
387
|
-
Concurrent Ruby Thread Pool:
|
|
388
|
-
Atomic Ruby Atomic Thread Pool:
|
|
387
|
+
Concurrent Ruby Thread Pool: 5.30284 seconds
|
|
388
|
+
Atomic Ruby Atomic Thread Pool: 5.019147 seconds
|
|
389
389
|
```
|
|
390
390
|
|
|
391
391
|
</details>
|
data/lib/atomic-ruby/version.rb
CHANGED