Skip to content

Conversation

@Tortar
Copy link
Member

@Tortar Tortar commented Jan 5, 2026

Fixes #472

@github-actions
Copy link
Contributor

github-actions bot commented Jan 5, 2026

⚠️ 1 benchmark regressions detected!

Click to expand benchmark results

Time is per entity/N, allocations are totals. Allocations are only shown for current.

N       Time main             Time curr           Factor         Allocs         Bytes    
query_create
1000 2.98ns 2.98ns 1.00 0 0
query_create_filter
1000 2.96ns 2.96ns 1.00 0 0
query_posvel_1k_arch
100 7.48ns 7.58ns 1.01 0 0
1000 10.55ns 10.64ns 1.01 0 0
10000 2.61ns 2.68ns 1.02 0 0
100000 1.07ns 1.09ns 1.02 0 0
1000000 0.76ns 0.80ns 1.05 0 0
query_posvel_1k_arch_cached
100 7.29ns 7.39ns 1.01 0 0
1000 10.20ns 10.17ns 1.00 0 0
10000 2.62ns 2.59ns 0.99 0 0
100000 1.07ns 1.11ns 1.04 0 0
1000000 0.79ns 0.83ns 1.06 0 0
query_posvel_32_arch
100 2.27ns 2.27ns 1.00 0 0
1000 0.70ns 0.71ns 1.02 0 0
10000 0.46ns 0.46ns 1.02 0 0
100000 0.66ns 0.67ns 1.02 0 0
1000000 0.64ns 0.67ns 1.05 0 0
query_posvel_cold
100 0.77ns 0.70ns 0.92 0 0
1000 0.39ns 0.38ns 0.98 0 0
10000 0.38ns 0.40ns 1.04 0 0
100000 0.63ns 0.65ns 1.03 0 0
1000000 0.76ns 0.83ns ⚠️ 1.10 0 0
query_posvel_fields
100 0.39ns 0.39ns 1.00 0 0
1000 0.23ns 0.23ns 1.00 0 0
10000 0.33ns 0.33ns 1.00 0 0
100000 0.54ns 0.50ns 0.93 0 0
1000000 0.61ns 0.60ns 0.98 0 0
query_posvel_fields_broadcast
100 0.85ns 0.85ns 1.00 0 0
1000 0.70ns 0.70ns 1.00 0 0
10000 0.80ns 0.80ns 1.00 0 0
100000 1.09ns 1.01ns 0.93 0 0
1000000 1.49ns 1.52ns 1.03 0 0
query_posvel_hot
100 0.40ns 0.40ns 1.00 0 0
1000 0.24ns 0.24ns 1.00 0 0
10000 0.33ns 0.32ns 0.99 0 0
100000 0.55ns 0.51ns 0.92 0 0
1000000 0.62ns 0.60ns 0.98 0 0
query_posvel_soa
100 1.00ns 0.99ns 1.00 0 0
1000 0.82ns 0.82ns 1.00 0 0
10000 0.79ns 0.79ns 1.00 0 0
100000 0.79ns 0.78ns 0.99 0 0
1000000 0.84ns 0.84ns 1.00 0 0
query_posvel_soa_unpack
100 0.42ns 0.42ns 1.01 0 0
1000 0.24ns 0.24ns 1.00 0 0
10000 0.33ns 0.32ns 0.99 0 0
100000 0.55ns 0.51ns 0.93 0 0
1000000 0.61ns 0.66ns 1.08 0 0
world_add_remove_1
100 51.62ns 51.79ns 1.00 0 0
10000 52.84ns 52.90ns 1.00 0 0
world_add_remove_1_batch
100 6.85ns 6.82ns 1.00 0 0
10000 6.17ns 6.15ns 1.00 0 0
world_add_remove_1_large
100 56.42ns 55.93ns 0.99 0 0
10000 57.48ns 56.74ns 0.99 0 0
world_add_remove_1_soa
100 57.83ns 57.91ns 1.00 0 0
10000 59.11ns 59.00ns 1.00 0 0
world_add_remove_8
100 103.13ns 101.84ns 0.99 0 0
10000 105.47ns 104.06ns 0.99 0 0
world_add_remove_8_large
100 116.80ns 115.30ns 0.99 0 0
10000 117.93ns 116.74ns 0.99 0 0
world_add_remove_8_soa
100 129.01ns 129.13ns 1.00 0 0
10000 132.38ns 132.07ns 1.00 0 0
world_copy_entity_5
100 28.55ns 28.82ns 1.01 0 0
10000 28.57ns 28.57ns 1.00 0 0
world_get_1
100 1.04ns 1.05ns 1.01 0 0
10000 0.94ns 0.95ns 1.01 0 0
world_get_1_soa
100 1.62ns 1.62ns 1.00 0 0
10000 1.53ns 1.54ns 1.00 0 0
world_get_5
100 3.23ns 3.23ns 1.00 0 0
10000 3.15ns 3.15ns 1.00 0 0
world_get_rel
100 1.00ns 0.97ns 0.97 0 0
10000 0.90ns 0.87ns 0.96 0 0
world_new_entities_1
100 3.04ns 3.13ns 1.03 0 0
10000 2.40ns 2.43ns 1.01 0 0
world_new_entities_1_def
100 3.28ns 3.27ns 1.00 0 0
10000 2.52ns 2.62ns 1.04 0 0
world_new_entities_5
100 5.64ns 5.61ns 0.99 0 0
10000 4.59ns 4.69ns 1.02 0 0
world_new_entities_5_def
100 5.58ns 5.68ns 1.02 0 0
10000 4.48ns 4.86ns 1.09 0 0
world_new_entity_1
100 14.96ns 15.03ns 1.00 0 0
10000 14.84ns 14.85ns 1.00 0 0
world_new_entity_1_rel
100 37.14ns 36.84ns 0.99 0 0
10000 36.47ns 36.35ns 1.00 0 0
world_new_entity_1_soa
100 17.20ns 17.36ns 1.01 0 0
10000 17.18ns 17.25ns 1.00 0 0
world_new_entity_5
100 26.68ns 26.42ns 0.99 0 0
10000 27.04ns 26.76ns 0.99 0 0
world_new_entity_5_rel
100 55.80ns 54.90ns 0.98 0 0
10000 55.73ns 54.65ns 0.98 0 0
world_new_entity_5_soa
100 36.43ns 37.00ns 1.02 0 0
10000 36.87ns 37.57ns 1.02 0 0
world_posvel
100 2.83ns 2.83ns 1.00 0 0
1000 2.87ns 2.85ns 0.99 0 0
10000 2.94ns 2.89ns 0.98 0 0
100000 2.94ns 2.89ns 0.98 0 0
world_remove_entities_5
100 2.10ns 2.20ns 1.05 0 0
10000 0.98ns 0.97ns 1.00 0 0
world_remove_entity_5
100 22.51ns 22.55ns 1.00 0 0
10000 22.31ns 22.28ns 1.00 0 0
world_resource
1 7.19ns 7.22ns 1.01 0 0
world_set_1
100 2.90ns 2.85ns 0.98 0 0
10000 3.00ns 2.93ns 0.98 0 0
world_set_1_soa
100 2.73ns 2.65ns 0.97 0 0
10000 2.79ns 2.77ns 1.00 0 0
world_set_5
100 8.05ns 8.06ns 1.00 0 0
10000 8.80ns 8.79ns 1.00 0 0
world_set_rel
100 47.25ns 48.36ns 1.02 0 0
10000 41.58ns 42.17ns 1.01 0 0
world_set_rel_batch
100 3.77ns 3.77ns 1.00 0 0
10000 2.35ns 2.34ns 1.00 0 0
world_update_1
100 2.52ns 2.53ns 1.00 0 0
10000 2.60ns 2.61ns 1.00 0 0
world_update_5
100 9.62ns 9.78ns 1.02 0 0
10000 10.14ns 10.16ns 1.00 0 0

@codecov
Copy link

codecov bot commented Jan 6, 2026

Codecov Report

❌ Patch coverage is 83.45865% with 22 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/gpu_structarray.jl 72.83% 22 Missing ⚠️

📢 Thoughts on this report? Let us know!

@Tortar Tortar added feature Feature requests and ideas performance Performance-related labels Jan 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Feature requests and ideas performance Performance-related

Projects

None yet

Development

Successfully merging this pull request may close these issues.

SoA layout on GPU

2 participants