File tree Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Expand file tree Collapse file tree 2 files changed +7
-5
lines changed Original file line number Diff line number Diff line change @@ -28,7 +28,7 @@ name = "fork_union"
2828path = " rust/lib.rs"
2929
3030[build-dependencies ]
31- cc = " 1.2.29 "
31+ cc = " 1.2.40 "
3232
3333[features ]
3434default = [" std" ]
@@ -54,7 +54,7 @@ test = false
5454bench = false
5555
5656[dev-dependencies ]
57- rayon = " 1.10 "
57+ rayon = " 1.11 "
5858rand = " 0.9"
5959tokio = { version = " 1.46.1" , features = [" rt-multi-thread" , " sync" ] }
60- simsimd = " 6.5.0 "
60+ simsimd = " 6.5.3 "
Original file line number Diff line number Diff line change @@ -445,15 +445,15 @@ C++ benchmarking results for $N=128$ bodies and $I=1e6$ iterations:
445445
446446| Machine | OpenMP (D) | OpenMP (S) | Fork Union (D) | Fork Union (S) |
447447| :------------- | ---------: | ---------: | -------------: | -------------: |
448- | 16x Intel SPR | 20.3s | 16.0s | 18.1s | 10.3s |
448+ | 16x Intel SPR | 18.9s | 12.4s | 16.8s | 8.7s |
449449| 12x Apple M2 | 1m:34.8s ² | 1m:25.9s ² | 31.5s | 20.3s |
450450| 96x Graviton 4 | 32.2s | 20.8s | 39.8s | 26.0s |
451451
452452Rust benchmarking results for $N=128$ bodies and $I=1e6$ iterations:
453453
454454| Machine | Rayon (D) | Rayon (S) | Fork Union (D) | Fork Union (S) |
455455| :------------- | ---------: | ---------: | -------------: | -------------: |
456- | 16x Intel SPR | 🔄 51 .4s | 🔄 38 .1s | 15.9s | 9.8s |
456+ | 16x Intel SPR | 🔄 45 .4s | 🔄 32 .1s | 18.1s, 🔄 22.4s | 12.4s, 🔄 12.9s |
457457| 12x Apple M2 | 🔄 1m:47.8s | 🔄 1m:07.1s | 24.5s, 🔄 26.8s | 11.0s, 🔄 11.8s |
458458| 96x Graviton 4 | 🔄 2m:13.9s | 🔄 1m:35.6s | 18.9s | 10.1s |
459459
@@ -470,6 +470,8 @@ time NBODY_COUNT=128 NBODY_ITERATIONS=1000000 NBODY_BACKEND=fork_union_static bu
470470time NBODY_COUNT=128 NBODY_ITERATIONS=1000000 NBODY_BACKEND=fork_union_dynamic build_release/fork_union_nbody
471471```
472472
473+ > Consult the header of `scripts/nbody.cpp` and `scripts/nbody.rs` for additional benchmarking options.
474+
473475## Safety & Logic
474476
475477There are only 3 core atomic variables in this thread-pool, and 1 for dynamically-stealing tasks.
You can’t perform that action at this time.
0 commit comments