110 likes | 188 Views
PerfsonarUI Performance experience. Nina Jeliazkova ISTF Sofia Bulgaria. PerfsonarUI (new features). User feedback from Cambridge workshop (summary on WIKI) Parallel requests to services No support for asynchronous calls in Axis 1.x Solution – each request in a separate thread
E N D
PerfsonarUI Performance experience Nina Jeliazkova ISTF Sofia Bulgaria
PerfsonarUI (new features) • User feedback from Cambridge workshop (summary on WIKI) • Parallel requests to services • No support for asynchronous calls in Axis 1.x • Solution – each request in a separate thread • Aggregated requests • Dropping requests • Improved error reporting • Improved user interface • Plug-ins
SetupDataRequests • Sequentially • One query per interface • Slow, multiplication of I/O delay • Aggregated per endpoint • The response can be huge (memory issue) • If one of the interfaces has a configuration problem, all the query fails • Can’t use keys (solved in SVN recently) • Parallel threads • One query per interface • Many threads stress services (!) • The gain is not substantial • Aggregated per endpoint • Same issues as for sequential approach
SetupData response with keys Request Response
Aggregated request (to ISTF-Java MA) Metadata Key Request SetupDataRequest for all interfaces ~40 sec
Parallel requests (to ISTF-Java MA) 79 Setup data requests ~ 2 min Metadata Key Request Services increase the response time and can even crash
Semi - aggregated request (to ISTF-Java MA) Metadata Key Request 3 SetupDataRequest for <=32 interfaces each ~50 sec 2 SetupDataRequest for <=64 interfaces each ~60 sec
Semi - aggregated request (to ISTF, SWITCH, SEEREN-Java MA) Metadata Key Request ISTF (1 request) SWITCH (3 request) SEEREN (1request)
RRD issues • RRD can’t be queried with arbitrary resolutions • The MA service doesn’t have information how RRD was configured • If RRD is configured with high resolution everywhere, the data received by the client will be huge • e.g. 60 sec resolution for the last year = 525600 points, ~ 50 bytes per point = 25 megabytes! • <nmwg:datum timeValue="1158377400" value="0.1234" /> • Memory issues • Axis • Visualization
Possible solutions • Define reasonable defaults for RRD file's structure and mandate that perfSONAR services should support only these well known defaults • easy, but not user friendly; • the defaults already differ between CRICKET, MRTG and CACTI • Implement support for “rrdtool info” in RRD MA and specify queries/responses for exchange of information between RRD MA and clients about available averages/time periods • adds complexity both on the service and client side • Mandate that clients should always retrieve the finest available resolution and perform aggregation only when required - either upon user demand or because of system limitations • wastes bandwidth and CPU cycles; • Mandate that RRD MAs should calculate the requested averages on the fly if a finer than requested resolution is returned by rrdtool • transparent for clients, but would put a heavy burden on the services
Thank you for your attention! Any questions?