You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Vyborny Antonin <an...@deutsche-boerse.com> on 2017/03/16 16:52:34 UTC

Inconsistent behaviour during performance testing

Hi,

I have run some performance testing measuring the throughput for sending, receiving and also both in parallel. Please see the image I attached (sending).
I have measured with three different message sizes (1024, 10240 and 102400 bytes). I am using from 1 to 20 threads for sending and the weird behaviour occurs when sending 102400 bytes messages. You can clearly see from the image that when I use 1-10 threads it is too slow and then suddenly it became much faster.
The strange is that this was not just one test case, I run it multiple times.
The same testing I performed on different brokers, but only Java broker has this behaviour.

Is there anything I might be missing? Any misconfiguration? I already tried to play with JVM memory and it looks like it has some impact to it...  When I increased the memory it became faster since 3rd thread...

Please note I was using asynchronous sending + non persistent delivery mode.

Best Regards

Antonin Vyborny


-----------------------------------------
Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte Informationen.
Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren Sie bitte
sofort den Absender und loeschen Sie diese E-Mail. Das unbefugte Kopieren
dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen
ist nicht gestattet.

The information contained in this message is confidential or protected by
law. If you are not the intended recipient, please contact the sender and
delete this message. Any unauthorised copying of this message or
unauthorised distribution of the information contained herein is prohibited.

Legally required information for business correspondence/
Gesetzliche Pflichtangaben fuer Geschaeftskorrespondenz:
http://deutsche-boerse.com/letterhead

Re: Inconsistent behaviour during performance testing

Posted by Robbie Gemmell <ro...@gmail.com>.
On 17 March 2017 at 14:34, Rob Godfrey <ro...@gmail.com> wrote:
> On 17 March 2017 at 10:26, Keith W <ke...@gmail.com> wrote:
>
>> Hello Antonin
>>
>> Unfortunately, the Apache mailing lists strip attachments.  Please
>> find an alternative way to share your graphs.
>>
>>
> One option would be to create a JIRA for this performance issue, and to add
> the graphs as attachments to that.
>
> -- Rob
>

Or use an image hosting service.

>
>> Can you tell us more about the tests you are running?
>>
>> Version of the Java Broker?
>> Which client are you using?  Which version?  If the older Qpid JMS
>> Client AMQP 0-x - which protocol are you using 0-10 or 0-91?
>> What are your Direct/Heap JVM memory settings?
>>
>> Availability of memory will have an effect on performance.  There is
>> background here:
>> http://qpid.apache.org/releases/qpid-java-6.1.1/java-broker/
>> book/Java-Broker-Runtime-Memory.html
>> This includes details of the strategy employed to flow transient
>> messages to disk when memory is tight.
>>
>> Kind regards,
>>
>> Keith.
>>
>>
>> On 16 March 2017 at 16:52, Vyborny Antonin
>> <an...@deutsche-boerse.com> wrote:
>> > Hi,
>> >
>> >
>> >
>> > I have run some performance testing measuring the throughput for sending,
>> > receiving and also both in parallel. Please see the image I attached
>> > (sending).
>> >
>> > I have measured with three different message sizes (1024, 10240 and
>> 102400
>> > bytes). I am using from 1 to 20 threads for sending and the weird
>> behaviour
>> > occurs when sending 102400 bytes messages. You can clearly see from the
>> > image that when I use 1-10 threads it is too slow and then suddenly it
>> > became much faster.
>> >
>> > The strange is that this was not just one test case, I run it multiple
>> > times.
>> >
>> > The same testing I performed on different brokers, but only Java broker
>> has
>> > this behaviour.
>> >
>> >
>> >
>> > Is there anything I might be missing? Any misconfiguration? I already
>> tried
>> > to play with JVM memory and it looks like it has some impact to it…
>> When I
>> > increased the memory it became faster since 3rd thread…
>> >
>> >
>> >
>> > Please note I was using asynchronous sending + non persistent delivery
>> mode.
>> >
>> >
>> >
>> > Best Regards
>> >
>> >
>> >
>> > Antonin Vyborny
>> >
>> >
>> >
>> >
>> >
>> > -----------------------------------------
>> > Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte
>> Informationen.
>> > Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren Sie bitte
>> > sofort den Absender und loeschen Sie diese E-Mail. Das unbefugte Kopieren
>> > dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen
>> > ist nicht gestattet.
>> >
>> > The information contained in this message is confidential or protected by
>> > law. If you are not the intended recipient, please contact the sender and
>> > delete this message. Any unauthorised copying of this message or
>> > unauthorised distribution of the information contained herein is
>> prohibited.
>> >
>> > Legally required information for business correspondence/
>> > Gesetzliche Pflichtangaben fuer Geschaeftskorrespondenz:
>> > http://deutsche-boerse.com/letterhead
>> >
>> >
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> > For additional commands, e-mail: dev-help@qpid.apache.org
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
>> For additional commands, e-mail: dev-help@qpid.apache.org
>>
>>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: Inconsistent behaviour during performance testing

Posted by Rob Godfrey <ro...@gmail.com>.
On 17 March 2017 at 10:26, Keith W <ke...@gmail.com> wrote:

> Hello Antonin
>
> Unfortunately, the Apache mailing lists strip attachments.  Please
> find an alternative way to share your graphs.
>
>
One option would be to create a JIRA for this performance issue, and to add
the graphs as attachments to that.

-- Rob


> Can you tell us more about the tests you are running?
>
> Version of the Java Broker?
> Which client are you using?  Which version?  If the older Qpid JMS
> Client AMQP 0-x - which protocol are you using 0-10 or 0-91?
> What are your Direct/Heap JVM memory settings?
>
> Availability of memory will have an effect on performance.  There is
> background here:
> http://qpid.apache.org/releases/qpid-java-6.1.1/java-broker/
> book/Java-Broker-Runtime-Memory.html
> This includes details of the strategy employed to flow transient
> messages to disk when memory is tight.
>
> Kind regards,
>
> Keith.
>
>
> On 16 March 2017 at 16:52, Vyborny Antonin
> <an...@deutsche-boerse.com> wrote:
> > Hi,
> >
> >
> >
> > I have run some performance testing measuring the throughput for sending,
> > receiving and also both in parallel. Please see the image I attached
> > (sending).
> >
> > I have measured with three different message sizes (1024, 10240 and
> 102400
> > bytes). I am using from 1 to 20 threads for sending and the weird
> behaviour
> > occurs when sending 102400 bytes messages. You can clearly see from the
> > image that when I use 1-10 threads it is too slow and then suddenly it
> > became much faster.
> >
> > The strange is that this was not just one test case, I run it multiple
> > times.
> >
> > The same testing I performed on different brokers, but only Java broker
> has
> > this behaviour.
> >
> >
> >
> > Is there anything I might be missing? Any misconfiguration? I already
> tried
> > to play with JVM memory and it looks like it has some impact to it…
> When I
> > increased the memory it became faster since 3rd thread…
> >
> >
> >
> > Please note I was using asynchronous sending + non persistent delivery
> mode.
> >
> >
> >
> > Best Regards
> >
> >
> >
> > Antonin Vyborny
> >
> >
> >
> >
> >
> > -----------------------------------------
> > Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte
> Informationen.
> > Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren Sie bitte
> > sofort den Absender und loeschen Sie diese E-Mail. Das unbefugte Kopieren
> > dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen
> > ist nicht gestattet.
> >
> > The information contained in this message is confidential or protected by
> > law. If you are not the intended recipient, please contact the sender and
> > delete this message. Any unauthorised copying of this message or
> > unauthorised distribution of the information contained herein is
> prohibited.
> >
> > Legally required information for business correspondence/
> > Gesetzliche Pflichtangaben fuer Geschaeftskorrespondenz:
> > http://deutsche-boerse.com/letterhead
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> > For additional commands, e-mail: dev-help@qpid.apache.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>
>

Re: Inconsistent behaviour during performance testing

Posted by Keith W <ke...@gmail.com>.
Hello Antonin

Unfortunately, the Apache mailing lists strip attachments.  Please
find an alternative way to share your graphs.

Can you tell us more about the tests you are running?

Version of the Java Broker?
Which client are you using?  Which version?  If the older Qpid JMS
Client AMQP 0-x - which protocol are you using 0-10 or 0-91?
What are your Direct/Heap JVM memory settings?

Availability of memory will have an effect on performance.  There is
background here:
http://qpid.apache.org/releases/qpid-java-6.1.1/java-broker/book/Java-Broker-Runtime-Memory.html
This includes details of the strategy employed to flow transient
messages to disk when memory is tight.

Kind regards,

Keith.


On 16 March 2017 at 16:52, Vyborny Antonin
<an...@deutsche-boerse.com> wrote:
> Hi,
>
>
>
> I have run some performance testing measuring the throughput for sending,
> receiving and also both in parallel. Please see the image I attached
> (sending).
>
> I have measured with three different message sizes (1024, 10240 and 102400
> bytes). I am using from 1 to 20 threads for sending and the weird behaviour
> occurs when sending 102400 bytes messages. You can clearly see from the
> image that when I use 1-10 threads it is too slow and then suddenly it
> became much faster.
>
> The strange is that this was not just one test case, I run it multiple
> times.
>
> The same testing I performed on different brokers, but only Java broker has
> this behaviour.
>
>
>
> Is there anything I might be missing? Any misconfiguration? I already tried
> to play with JVM memory and it looks like it has some impact to it…  When I
> increased the memory it became faster since 3rd thread…
>
>
>
> Please note I was using asynchronous sending + non persistent delivery mode.
>
>
>
> Best Regards
>
>
>
> Antonin Vyborny
>
>
>
>
>
> -----------------------------------------
> Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte Informationen.
> Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren Sie bitte
> sofort den Absender und loeschen Sie diese E-Mail. Das unbefugte Kopieren
> dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen
> ist nicht gestattet.
>
> The information contained in this message is confidential or protected by
> law. If you are not the intended recipient, please contact the sender and
> delete this message. Any unauthorised copying of this message or
> unauthorised distribution of the information contained herein is prohibited.
>
> Legally required information for business correspondence/
> Gesetzliche Pflichtangaben fuer Geschaeftskorrespondenz:
> http://deutsche-boerse.com/letterhead
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org


Re: Inconsistent behaviour during performance testing

Posted by Rob Godfrey <ro...@gmail.com>.
Hi Antonin,

any chance of attaching your image to a JIRA, and (even better) sharing
your test code if possible (presuming it doesn't have any proprietary
information in it).  Is this behaviour visible when you only sending
messages, or does it require consumers as well?  You mentioned things
worked better if you gave the broker more memory - did you try running the
broker with verbose:gc on - does it look like the broker was spending a lot
of time in garbage collection?

Thanks again for any help you can give in helping us track this down,

Rob

On 16 March 2017 at 17:52, Vyborny Antonin <
antonin.vyborny@deutsche-boerse.com> wrote:

> Hi,
>
>
>
> I have run some performance testing measuring the throughput for sending,
> receiving and also both in parallel. Please see the image I attached
> (sending).
>
> I have measured with three different message sizes (1024, 10240 and 102400
> bytes). I am using from 1 to 20 threads for sending and the weird behaviour
> occurs when sending 102400 bytes messages. You can clearly see from the
> image that when I use 1-10 threads it is too slow and then suddenly it
> became much faster.
>
> The strange is that this was not just one test case, I run it multiple
> times.
>
> The same testing I performed on different brokers, but only Java broker
> has this behaviour.
>
>
>
> Is there anything I might be missing? Any misconfiguration? I already
> tried to play with JVM memory and it looks like it has some impact to it…
>  When I increased the memory it became faster since 3rd thread…
>
>
>
> Please note I was using asynchronous sending + non persistent delivery
> mode.
>
>
>
> Best Regards
>
>
>
> Antonin Vyborny
>
>
>
>
>
> -----------------------------------------
> Diese E-Mail enthaelt vertrauliche oder rechtlich geschuetzte
> Informationen.
> Wenn Sie nicht der beabsichtigte Empfaenger sind, informieren Sie bitte
> sofort den Absender und loeschen Sie diese E-Mail. Das unbefugte Kopieren
> dieser E-Mail oder die unbefugte Weitergabe der enthaltenen Informationen
> ist nicht gestattet.
>
> The information contained in this message is confidential or protected by
> law. If you are not the intended recipient, please contact the sender and
> delete this message. Any unauthorised copying of this message or
> unauthorised distribution of the information contained herein is
> prohibited.
>
> Legally required information for business correspondence/
> Gesetzliche Pflichtangaben fuer Geschaeftskorrespondenz:
> http://deutsche-boerse.com/letterhead
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
> For additional commands, e-mail: dev-help@qpid.apache.org
>