Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Akka.Cluster.Sharding performance benchmarks #5209

Merged

Conversation

Aaronontheweb
Copy link
Member

close #3083

Initial numbers:

BenchmarkDotNet=v0.13.1, OS=Windows 10.0.19041.1165 (2004/May2020Update/20H1)
AMD Ryzen 7 1700, 1 CPU, 16 logical and 8 physical cores
.NET SDK=5.0.302
  [Host]     : .NET Core 3.1.17 (CoreCLR 4.700.21.31506, CoreFX 4.700.21.31502), X64 RyuJIT
  Job-HXSFLM : .NET Core 3.1.17 (CoreCLR 4.700.21.31506, CoreFX 4.700.21.31502), X64 RyuJIT

InvocationCount=1  UnrollFactor=1  
Method StateMode MsgCount Mean Error StdDev Median
SingleRequestResponseToLocalEntity Persistence 10000 110.158 ms 2.1994 ms 3.0832 ms 109.456 ms
StreamingToLocalEntity Persistence 10000 5.156 ms 0.3821 ms 1.0964 ms 4.934 ms
SingleRequestResponseToRemoteEntity Persistence 10000 4,157.097 ms 82.5627 ms 199.3982 ms 4,069.618 ms
StreamingToRemoteEntity Persistence 10000 NA NA NA NA
SingleRequestResponseToLocalEntity DData 10000 111.700 ms 2.2282 ms 6.0620 ms 110.184 ms
StreamingToLocalEntity DData 10000 4.897 ms 0.3378 ms 0.9360 ms 4.858 ms
SingleRequestResponseToRemoteEntity DData 10000 4,157.913 ms 82.7139 ms 165.1886 ms 4,152.249 ms
StreamingToRemoteEntity DData 10000 506.119 ms 10.1116 ms 10.3839 ms 504.516 ms

Benchmarks with issues:
ShardMessageRoutingBenchmarks.StreamingToRemoteEntity: Job-HXSFLM(InvocationCount=1, UnrollFactor=1) [StateMode=Persistence, MsgCount=10000]

Confirms #5203

@Aaronontheweb
Copy link
Member Author

The numbers come out to 2,400 per second - exactly what was measured on #5203

@Aaronontheweb
Copy link
Member Author

Spawn benchmarks:

BenchmarkDotNet=v0.13.1, OS=Windows 10.0.19041.1165 (2004/May2020Update/20H1)
AMD Ryzen 7 1700, 1 CPU, 16 logical and 8 physical cores
.NET SDK=5.0.302
  [Host]     : .NET Core 3.1.17 (CoreCLR 4.700.21.31506, CoreFX 4.700.21.31502), X64 RyuJIT
  Job-BWMBDZ : .NET Core 3.1.17 (CoreCLR 4.700.21.31506, CoreFX 4.700.21.31502), X64 RyuJIT

InvocationCount=1  IterationCount=1  LaunchCount=5  
RunStrategy=ColdStart  UnrollFactor=1  WarmupCount=0  
Method StateMode EntityCount RememberEntities Mean Error StdDev Median
SpawnEntities Persistence 1000 False 1.836 s 2.1365 s 0.5548 s 1.446 s
SpawnEntities Persistence 1000 True 2.100 s 1.5785 s 0.4099 s 1.901 s
SpawnEntities DData 1000 False 1.033 s 0.0969 s 0.0252 s 1.033 s
SpawnEntities DData 1000 True 74.788 s 9.7173 s 2.5235 s 74.670 s

@Aaronontheweb
Copy link
Member Author

Validates that #5190 is an issue.

@Aaronontheweb Aaronontheweb enabled auto-merge (squash) August 18, 2021 00:41
@Aaronontheweb Aaronontheweb merged commit bc004ae into akkadotnet:dev Aug 18, 2021
@Aaronontheweb Aaronontheweb deleted the fix/3083-sharding-benchmarks branch August 18, 2021 00:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add performance specs for Akka.Cluster.Sharding
1 participant