RE: [ROOT] Event handling or graphing huge datasets

From: Colley, Tony (Tony.Colley@itt.com)
Date: Mon Mar 04 2002 - 16:53:35 MET


Hello again.

I was mistaken... I was accidently testing with 10^6 points and not 10^7
points. That extra order of magnitude causes a crash in ROOT with the
following message:

  *** BREAK *** write on a pipe with no one to read it
  Error in <RootX11IOErrorHandler>: fatal X11 error (connection to server
lost?)
  *** Save data and exit application ***

So I did a little testing with how many points it would work with.

If I have 1048570 (or fewer) data points, everything works fine.

If I have 1048571 data points, the graph is displayed fine, but I get the
following message:
   Error in <RootX11ErrorHandler>: BadMatch (invalid parameter attributes)
(XID: 37750999, XREQ: 42)

If I have 1048572 data points, the border/axes of the graph are displayed
fine, but there is no plot of the data, and I get the following message:
   Error in <RootX11ErrorHandler>: BadLength (poly request too large or
internal Xlib length error) (XID: 0, XREQ: 65)

If I have 1048573 (or more) data points, ROOT crashes and I get the same
error message as for 10^7 points.

This failure limit is suspiciously close to 2^20 (1048576).

Anyone else successful at plotting more than 2^20 data points?

In case you don't have the original email that started this thread... I am
using TGraph for plotting the x,y data points.

+------------------------------------------------+
| Tony Colley                ITT Industries A/CD |
| Modeling/Simulation Group  Fort Wayne, IN  USA |
+------------------------------------------------+
| Using ROOT 3.03/02 on RedHat Linux 7.2         |
| Last CVS update: 26 Feb 2002 at 2218 GMT       |
+------------------------------------------------+


-----Original Message-----
From: Faine, Valeri [mailto:fine@bnl.gov]
Sent: Saturday, March 02, 2002 21:06
To: 'Eddy Offermann '; 'Tony.Colley@itt.com '
Cc: 'roottalk@pcroot.cern.ch '
Subject: RE: [ROOT] Event handling or graphing huge datasets


 
  Hello Eddy,

  I am not sure you correct. 

It is true "TGraph::PaintGrapHist" does take in account the screen 
resolution but ExecuteEvent.
see:
http://root.cern.ch/root/htmldoc/src/TGraph.cxx.html#TGraph:ExecuteEvent

 When one tries to move the graph (may be accidently, just the wrong mouse
button was pressed) this entails the graph of the all fNpoints
to be redrawn at least twice: The first time to clear the old graph position
and the second time to draw it at the new place. Each of 10^7 points is
drawn with 6 calls to TVirtualX::DrawLine sending at list 4 coordinate
numbers as an X11-message. This means just one touched 
(occasionally)  the middle button of the mouse the (4*2) * 2 * 6 * 10^7
bytes will be sent out to X-terminal. I believe this may shock the
networking.
Assuming we have 10Mbit / sec network one can calculate that 10^10 / 10 ^7
= 1000 sec per single mouse step (this assumes the X-terminal response time
is as fast as its networking connection) 


 

-----Original Message-----
From: Eddy Offermann
To: Tony.Colley@itt.com
Cc: roottalk@pcroot.cern.ch
Sent: 2/26/02 12:46 PM
Subject: Re: [ROOT] Event handling or graphing huge datasets

Hi Tony,

Take a look at "void TGraph::PaintGrapHist" and scan for "lowRes".
You will see around line 2350 that if you draw the graph with option L
or P,
The number of data points is checked versus your screen resolution.
In case of many data points it will not draw every point but just
calculate the
average pixel position. 10^7 should not be a problem


Eddy A.J.M. Offermann
Renaissance Technologies Corp.
Route 25A, East Setauket NY 11733
e-mail: eddy@rentec.com
http://www.rentec.com

--- END OF INCLUDED MESSAGES ---

\I'm not responsible for anything below this line/

************************************ 
If this email is not intended for you, or you are not responsible for the
delivery of this message to the addressee, please note that this message may
contain ITT Privileged/Proprietary Information.  In such a case, you may not
copy or deliver this message to anyone.  You should destroy this message and
kindly notify the sender by reply email.  Information contained in this
message that does not relate to the business of ITT is neither endorsed by
nor attributable to ITT. 
************************************ 



This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:50:43 MET