|
|
|
|||||
|
Hi.
I'm developing a grid-like system. Server (coordinator) should communicate with ~1000 clients (agents). Scenario: client connects to the server, and then constantly sends data - 512 bytes sequence, 33 seq per second. I try to create simple server and client (no any data processing on server, only form stream on client and receive on server). Results: server can dispatch only ~300 agents on 100 mbit network with 90% cpu load and only 50% of the network bandwidth use ![]() Exactly same WCF-based (sic!) sample can hold 600 clients without any problem - cpu load about 20-30% while network use ~100%. It seems, that ice can't effectively dispatch more than 200 connections (for example, 100-150 connections causes < 5% cpu load). I read, ICE uses simple select pooling.. If so, i think, that it can be couse. Maybe, i missed something, and i just should tune thread pool settings? btw, i tried TAO (without thread pool or single thread tuning) and get very close with ICE results... OS - Windows XP/2003, Intel Core 2 duo, 100 mbit network. Thanks! -- Andrew Solodovnikov |
|
|||||
|
Thanks for answer.
I surely need to handle all connections right on the server. So, as i understand, only solution is creation of the adapters pool (for example, for each 50-100 clients create new adapter with own pool - btw, is there any example?). But i'm not sure, that it helps to improve performance ![]() Thanks again! -- Andrew Solodovnikov |
|
|||||
|
Hi again!
I just make an adapter per 64 clients - and now it works fine - 100% load of the net and 40-50% of the CPU. Thanks for support, ICE really makes me happy ![]() -- Andrew Solodovnikov |
|
|||||
|
FUI, our results:
ICE 3.2.1: HTML Code:
70 140 210 280 350 420 490 560 630 700 LAT 8030 7190 6620 5990 6640 5735 5115 4580 4160 3850 THR 2240 4480 6720 8960 11200 13440 15680 17920 20160 22400 CPU (ALL)0 0 0 0 0.25 0.25 1 0.25 0.25 0.25 CPU (KRN)0 0 0 0 0.25 0.25 1 0.25 0.25 0.25 NET 1 2 3 5 6 7 9 10 11 13 HTML Code:
70 140 210 280 350 420 490 560 630 700 LAT 11650 11470 11450 11350 11330 11160 10970 10820 10700 10600 THR 2240 4480 6720 8960 11200 13440 15680 17920 20160 22400 CPU (ALL)0 0.1 0.1 0.1 0 0 0 0 0 0 CPU (KRN)0 0.1 0.1 0.1 0 0 0 0 0 0 NET 1 2 3 5 6 7 8 10 11 12 LAT - latency of the empty call (calls per second) THR - throughput (((512 bytes * 33) per second) per client) NET - network load with above THR. configuration: Omin: server: threadPoolWatchConnection=0 client: all by default Ice: server: Ice.ThreadPool.Server.SizeMax=20 Ice.Override.Compress=0 client: Ice.ACM.Client=0 Ice.Override.Compress=0 hardware: 8 x (QuadCore 2.33, Windows 2003 x64, 4 gb ram, 1 gb network). |
|
||||||
|
Hi Andrew,
It's not clear to me what CPU and NET really represent. Are you running everything on the same machine or over the network? Does each client have its own process and network connection to the server? In any case, it looks to me that the comparison isn't really fair. OmniORB is using the thread per connection concurrency model whereas Ice is using the thread pool concurrency model. Why didn't you compare with the same concurrency model instead (either thread pool or thread per connection)? Cheers, Benoit. |
|
|||||
|
Quote:
NET - network load on the server side (in percents from 1 gbit). CPU - cpu load on the server side (user/kernel). Server is on the first node, other (7) nodes contain clients (same number of a clients on each node). Quote:
|
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| ICE Server Thread Pool Implementation Issues | simondu | Help Center | 3 | 10-25-2007 11:52 PM |
| ICE thread pool model under windows | simondu | Comments | 3 | 09-21-2007 07:08 AM |
| what will happen when ice report thread pool size warning? | soloman817 | Help Center | 8 | 09-02-2007 12:04 PM |
| Thread Pool and Network Problems | acbell | Help Center | 4 | 11-10-2006 05:08 PM |
| How to improve performance of thread-per-connection? | bartley | Help Center | 16 | 05-02-2006 05:20 PM |