Bug 1026352 - C++ vs Java HotRod client performance
Summary: C++ vs Java HotRod client performance
Keywords:
Status: VERIFIED
Alias: None
Product: JBoss Data Grid 6
Classification: JBoss
Component: CPP Client
Version: 6.2.0
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: CR2
: 6.2.0
Assignee: Tristan Tarrant
QA Contact: Alan Field
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-11-04 13:45 UTC by Radim Vansa
Modified: 2023-04-01 08:00 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker HRCPP-104 0 Major Resolved MurmurHash3 is not implemented as in Java 2017-12-15 11:39:30 UTC

Description Radim Vansa 2013-11-04 13:45:08 UTC
This bug should track the performance issues for C++ HotRod client.

By preliminary testing we've found that in a test where several hundred clients fire requests to the servers the performance of C++ client is 60% lower than Java client.

Setup:
* 4 cluster nodes, 3 driver nodes
* PUT/GET with 1:2 ratio, 1024 byte entry size
* *NO* delay between requests
* The throughput for > 200 clients (total amount for all nodes) is roughly constant

Results for 6.2.0.ER3.2:
* C++ client: 48k ops/s
* Java client: 120k ops/s

Comment 3 Tristan Tarrant 2013-11-04 20:56:25 UTC
Although I don't believe this can change much, for performance we should compile with the Release profile (ER3.2 is compiled with the Debug profile):

cmake -DHOTROD_JBOSS_HOME=/path/to/jdg-server -DCMAKE_BUILD_TYPE=Release ../path/to/source

Comment 4 Radim Vansa 2014-03-27 09:12:20 UTC
After fixing the bugs in MurmurHash implementation (HRCPP-104) the performance has increased to > 120k ops/s for C++ implementation. Best results for recent Java implementation are 140k ops/s.
These results are acceptable.
Further performance change can be expected when asynchronous operations are implemented.


Note You need to log in before you can comment on or make changes to this bug.