[geos-devel] Performance of GEOS compared to JTS (Report, Nov. 8)

Martin Davis mbdavis at VividSolutions.com
Fri Nov 8 19:55:24 EST 2002


For comparison purposes, here's the timings for JTS on the same numbers.  JTS now looks linear, just like GEOS. (I think we just didn't go quite large enough last time).  It's still (a bit) faster than GEOS, though - and I'm running on a 1.1 GHz machine, not a 1.9 GHz box.  Maybe Java's just bettah...  8^)

n Pts: 1000   Executed in 3014 ms
n Pts: 2000   Executed in 91 ms
n Pts: 4000   Executed in 50 ms
n Pts: 8000   Executed in 110 ms
n Pts: 16000   Executed in 210 ms
n Pts: 32000   Executed in 411 ms
n Pts: 64000   Executed in 801 ms
n Pts: 128000   Executed in 2032 ms
n Pts: 256000   Executed in 3545 ms

Martin Davis, Senior Technical Specialist
Vivid Solutions Inc.
Suite #1A-2328 Government Street   Victoria, B.C.   V8T 5G5
Phone: (250) 385 6040    Fax: (250) 385 6046
EMail: mbdavis at vividsolutions.com  Web: www.vividsolutions.com


> -----Original Message-----
> From: Paul Ramsey [mailto:pramsey at refractions.net]
> Sent: Friday, November 08, 2002 1:08 PM
> To: geos-devel at geos.refractions.net
> Subject: RE: [geos-devel] Performance of GEOS compared to JTS (Report,
> Nov. 8)
> 
> 
> Here are the Linux tests again... Yury, you have to 
> explicitly include stdio.h 
> in the tester in order to get printf under GNU...
> 
> # overlapping MCs: 44
> # segment intersection tests: 7
> n Pts: 1000  Executed in     10 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 2000  Executed in     30 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 4000  Executed in     70 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 8000  Executed in    160 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 16000  Executed in    330 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 32000  Executed in    660 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 64000  Executed in   1300 ms.
> # overlapping MCs: 44
> # segment intersection tests: 4
> n Pts: 128000  Executed in   2600 ms.
> 
> 
> Quoting Martin Davis <mbdavis at VividSolutions.com>:
> 
> > Excellent work, Yury.
> > 
> > But we're not done yet....  I can't see any reason why GEOS 
> should be
> > *slower* than JTS!  (I assume this comparison is made on 
> the same hardware
> > configuration...)  Perhaps we need to do some more memory 
> management tuning
> > ...  Better put your nifty vtune profiler to work before it 
> timebombs.
> > 
> > Martin Davis, Senior Technical Specialist
> > Vivid Solutions Inc.
> > Suite #1A-2328 Government Street   Victoria, B.C.   V8T 5G5
> > Phone: (250) 385 6040    Fax: (250) 385 6046
> > EMail: mbdavis at vividsolutions.com  Web: www.vividsolutions.com
> > 
> > 
> > > -----Original Message-----
> > > From: Yury A. Bychkov [mailto:ybychkov at direct.ca]
> > > Sent: Friday, November 08, 2002 11:51 AM
> > > To: geos-devel at geos.refractions.net
> > > Subject: [geos-devel] Performance of GEOS compared to JTS
> > > (Report, Nov.
> > > 8)
> > >
> > >
> > > Success !!!
> > >
> > > I found a good profiler for Windows (VTune from Intel) and
> > > tracked down some of
> > > the problems that caused bad performance. They were mostly
> > > linked with copying
> > > and destroying vectors of Coordinates. I've fixed the worst
> > > of them and now
> > > GEOS's performance is drastically improved (though it is
> > > still slower then JTS).
> > > New version has been committed to the CVS.
> > >
> > > Results:
> > > # overlapping MCs: 36
> > > # segment intersection tests: 39
> > > n Pts: 10  Executed in     10 ms.
> > > # overlapping MCs: 40
> > > # segment intersection tests: 26
> > > n Pts: 100  Executed in     10 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 7
> > > n Pts: 1000  Executed in     90 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 4
> > > n Pts: 2000  Executed in    100 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 7
> > > n Pts: 3000  Executed in    220 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 4
> > > n Pts: 4000  Executed in    271 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 5
> > > n Pts: 5000  Executed in    330 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 7
> > > n Pts: 6000  Executed in    381 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 6
> > > n Pts: 7000  Executed in    470 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 4
> > > n Pts: 8000  Executed in    460 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 5
> > > n Pts: 9000  Executed in    581 ms.
> > > # overlapping MCs: 44
> > > # segment intersection tests: 5
> > > n Pts: 10000  Executed in    681 ms.
> > >
> > >
> > > Yury
> > >
> > >
> > >
> > > _______________________________________________
> > > geos-devel mailing list
> > > geos-devel at geos.refractions.net
> > > http://geos.refractions.net/mailman/listinfo/geos-devel
> > >
> > 
> > _______________________________________________
> > geos-devel mailing list
> > geos-devel at geos.refractions.net
> > http://geos.refractions.net/mailman/listinfo/geos-devel
> > 
> > 
> 
> 
> 
> 
> -------------------------------------------------
> This mail sent through IMP: http://horde.org/imp/
> 
> 
> _______________________________________________
> geos-devel mailing list
> geos-devel at geos.refractions.net
> http://geos.refractions.net/mailman/listinfo/geos-devel
> 




More information about the geos-devel mailing list