[
https://issues.jboss.org/browse/ISPN-6494?page=com.atlassian.jira.plugin....
]
Bela Ban edited comment on ISPN-6494 at 8/12/19 6:33 AM:
---------------------------------------------------------
[~johnou] No updates. I want to complete the last JIRA(s) in 4.1.3, then release it and
get back to 5.0 work. After that release, I'm willing to tackle this.
{{no-bundler}} has _never_ shown up as top performer in _any_ of my perftests!
{{transfer-queue}} has always been near the top, and the lockless- and ringbuffer-based
bundlers have been the fastest bundlers around.
If you send many messages (ie. in seperate threads) to the same destinations (including
{{null}}), then bundling/batching will get you much better performance, as fewer resources
such as threads and locks will be used. Even for OOB messages, which have a different
thread dispatching policy, handling a batch of 10 is much more efficient than handling 10
separate messages.
Without knowing your specific access patterns, I venture to say that batching will greatly
increase your perf.
Of course, this depends on
* How many threads are sending messages
* To which destinations
* OOB or regular messages
* Configured message processing policy
* Delivery at the application (blocking versus non-blocking delivery) and processing time
Do you have a specific perftest mimicking your application? That would be best to tune
perf.
On the JGroups side, we have UPerf and MPerf as part of JGroups (plus IspnPerfTest as
separate project on GH).
was (Author: belaban):
[~johnou] No updates. I want to complete the last JIRA(s) in 4.1.3, then release it and
get back to 5.0 work. After that release, I'm willing to tackle this.
{{no-bundler}} has _never_ shown up as top performer in _any_ of my perftests!
{{transfer-queue}} has always been near the top, and the lockless- and ringbuffer-based
bundler have been the fastest bundlers around.
If you send many messages (ie. in seperate threads) to the same destinations (including
{{null}}), then bundling/batching will get you much better performance, as fewer resources
such as threads and locks will be used. Even for OOB messages, which have a different
thread dispatching policy, handling a batch of 10 is much more efficient than handling 10
separate messages.
Without knowing your specific access patterns, I venture to say that batching will greatly
increase your perf.
Of course, this depends on
* How many threads are sending messages
* To which destinations
* OOB or regular messages
* Configured message processing policy
* Delivery at the application (blocking versus non-blocking delivery) and processing time
Do you have a specific perftest mimicking your application? That would be best to tune
perf.
On the JGroups side, we have UPerf and MPerf as part of JGroups (plus IspnPerfTest as
separate project on GH).
Investigate bundler performance
-------------------------------
Key: ISPN-6494
URL:
https://issues.jboss.org/browse/ISPN-6494
Project: Infinispan
Issue Type: Task
Components: Core
Affects Versions: 9.0.0.Alpha1
Reporter: Dan Berindei
Assignee: Dan Berindei
Priority: Major
Fix For: 10.0.0.Final
For ISPN-6027 we changed the default JGroups bundler to {{sender-sends-with-timer}},
because it was faster in some of the performance tests. However, IspnPerfTest shows
{{transfer-queue-bundler}} to be consistently better, so we need to investigate the
bundler choice again.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)