Re: Poor GET performance

2016-10-17 Thread vkulichenko
I think you should check the network. Numbers do not sound right to me.

You can't also try adding more servers and clients to split the load.

-Val



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8333.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Re: Poor GET performance

2016-10-17 Thread shadim
switching to PRIMARY_SYNC configuration, PUT benchmarks dropped to 35K
ops/sec.
I dont think its a memory issue, because heap is configured to 10GB and
entries are stored off-heap with Non-Heap memory set to unlimited. The
server has 28GB and plenty of available memory.

Follows are the JVM Options:
-server -Xms10g -Xmx10g -XX:NewSize=512m -XX:SurvivorRatio=6
-XX:+AlwaysPreTouch -XX:+UseG1GC -XX:MaxGCPauseMillis=2000 -XX:GCTimeRatio=4
-XX:InitiatingHeapOccupancyPercent=30 -XX:G1HeapRegionSize=8M
-XX:ConcGCThreads=8 -XX:G1HeapWastePercent=10 -XX:+UseTLAB
-XX:+ScavengeBeforeFullGC -XX:+DisableExplicitGC

OS is Windows

It is noticed that CPU does not go above 10% on both servers in both GET and
PUT tests.

Any recommendations to tune things further?

-SM



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8329.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Re: Poor GET performance

2016-10-17 Thread shadim
you mean Ignite logs or GC logs?



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8328.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Re: Poor GET performance

2016-10-17 Thread vkulichenko
No, I would expect Ignite to be faster. Did you check the memory pressure?
Can you show the logs?

-Val



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8326.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Re: Poor GET performance

2016-10-17 Thread shadim
Thanks for the advice.

Recommendations to tune JVM are already applied in our benchmarks. I will
repeat the test using PRIMARY_SYNC and see how it goes.

Do you think the GET benchmarks are reasonable? Am i hitting the limit?
compared to Redis or Couchbase the GET figures are v. low. Is it this
expected?

-SM



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8324.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Re: Poor GET performance

2016-10-17 Thread vkulichenko
Hi,

First of all, I would not recommend to use FULL_ASYNC mode for updates. This
mode means that you don't wait for update to happen, i.e. even if it fails,
you won't know about this. This is also bad for benchmarks, because you
don't take into account the time that is actually spent for update
operation. Can you try PRIMARY_SYNC mode (the default one) and check what
numbers you will get for puts? I believe they will be comparable with gets
after this.

I would also check the network speed and make sure that there are no memory
issues or GC pauses. Refer to this page for more details:
https://apacheignite.readme.io/docs/jvm-and-system-tuning

-Val



--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319p8323.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


Poor GET performance

2016-10-17 Thread shadim
Hello all,

I am testing Apache Ignite on Windows Azure and unfortunately am having poor
GET benchmarks. Does anybody have an explanation for this issue.

Configuration as Follows:

2 server nodes (8 core, 28G memory)
1 client node (8 core, 28G memory)
memory mode: off heap
cache mode: partitioned
atomicityType: Atomic
writeSyncMode: Full_Async
No Persistance
OffHeapMaxMemory =  0
JVM is tuned as per documentation
backups = 0, enable swap = false, start size = 500 MB
Key type: Long, Value Type: Long

Client Configuration:
20 Threads, each thread iterate 1M times, each iteration, it execute a GET
or PUt operation
GET and Put are synchronous

Put benchmarks: 654K operations per sec
Get benchmarks: 25,700 operations per sec (v. poor)




--
View this message in context: 
http://apache-ignite-users.70518.x6.nabble.com/Poor-GET-performance-tp8319.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.