-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Backport v1.4.44 performance fixes to v1.5 #6162
Commits on Oct 8, 2022
-
WIP queue benchmarks (akkadotnet#6127)
* WIP queue benchmarks * completed MailboxThroughputBenchmarks * disable `CallingThreadDispatcher`
Configuration menu - View commit details
-
Copy full SHA for 70c57df - Browse repository at this point
Copy the full SHA 70c57dfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 352d9a1 - Browse repository at this point
Copy the full SHA 352d9a1View commit details -
Added Dispatcher Benchmarks (akkadotnet#6140)
* added parameterized Dispatcher benchmarks * fixed naming - also, pull all config from Akka defaults
Configuration menu - View commit details
-
Copy full SHA for dbdc4e1 - Browse repository at this point
Copy the full SHA dbdc4e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7855518 - Browse repository at this point
Copy the full SHA 7855518View commit details -
remove delegate allocation from
ForkJoinDispatcher
and `DedicatedTh……readPool` (akkadotnet#6143) Instead of having the `DedicatedThreadPool` operate on `Action` delegates, we now just take the `IRunnable` directly. Avoids a delegate allocation per-invocation.
Configuration menu - View commit details
-
Copy full SHA for 2032ff9 - Browse repository at this point
Copy the full SHA 2032ff9View commit details -
added actor messaging pressure benchmark (akkadotnet#6147)
purpose of this benchmark is not to measure processing time - it's meant to measure allocation pressure created by Akka.NET infrastructure: * `Envelope`s * `Mailbox` and `MessageDispatcher` overhead * `ActorCell` and `ActorBase` invocation overhead Ideally the memory pressure, given a `const string` as messaging input, should be close to zero - but between mailbox queue segment allocations, delegate + closure allocations, and probably some boxing we know that's not the case. Purpose of this benchmark is to measure that impact across threads.
Configuration menu - View commit details
-
Copy full SHA for ef186a4 - Browse repository at this point
Copy the full SHA ef186a4View commit details -
Make
Envelope
a reference type again (akkadotnet#6137)* convert `Envelope` back into a reference type * approved API changes * changed to `readonly struct` * fixed API approvals
Configuration menu - View commit details
-
Copy full SHA for e308e28 - Browse repository at this point
Copy the full SHA e308e28View commit details -
Reduce
FSM<TState, TData>
allocations (akkadotnet#6145)* close akkadotnet#2560 - added performance benchmarks for FSM * Improved FSM memory consumption * Made `Event` a `readonly struct` * Eliminated unnecessary `List<object>` allocations * Cleaned up XML-DOC comments * don't return new `State<TState, TData>` during `Stay()` * API approvals * fixed `State<TS.,TD>` errors
Configuration menu - View commit details
-
Copy full SHA for 18aae3b - Browse repository at this point
Copy the full SHA 18aae3bView commit details -
make
DedicatedThreadPool.QueueUserWorkItem<T>
generic (akkadotnet#6156Configuration menu - View commit details
-
Copy full SHA for 2131146 - Browse repository at this point
Copy the full SHA 2131146View commit details -
Configuration menu - View commit details
-
Copy full SHA for 43ba211 - Browse repository at this point
Copy the full SHA 43ba211View commit details