incubator-ooo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ksch...@apache.org
Subject svn commit: r1206870 [6/6] - in /incubator/ooo/ooo-site/trunk/content/tools/performance: ./ linux/ solaris/ windows/
Date Sun, 27 Nov 2011 22:23:19 GMT
Propchange: incubator/ooo/ooo-site/trunk/content/tools/performance/solaris/symbol_list.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/stl-deque.cxx
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/stl-deque.cxx?rev=1206870&view=auto
==============================================================================
--- incubator/ooo/ooo-site/trunk/content/tools/performance/stl-deque.cxx (added)
+++ incubator/ooo/ooo-site/trunk/content/tools/performance/stl-deque.cxx Sun Nov 27 22:23:15
2011
@@ -0,0 +1,164 @@
+#include <deque>
+#include <stdio.h>
+#include <sys/time.h>
+
+typedef std::deque<int>	list_type;
+
+suseconds_t delete_list( list_type *list, int l_size, bool print )
+{
+	timeval	start;
+	timeval	end;
+
+	gettimeofday( &start, NULL );
+
+	delete list;
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List deletion of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t new_list( int l_size, bool print, list_type **foo )
+{
+	int		i;
+	timeval	start;
+	timeval	end;
+
+	*foo = new list_type;
+
+	gettimeofday( &start, NULL );
+
+	for( i = 0; i < l_size; i++ )
+		 (*foo)->push_back( i );
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List creation of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t remove_elements( list_type *foo, bool front, bool print )
+{
+	timeval	start;
+	timeval	end;
+	int		l_size = foo->size();
+
+	if ( front )
+	{
+		gettimeofday( &start, NULL );
+	
+		while( !foo->empty() )
+			foo->pop_front();
+
+		gettimeofday( &end, NULL );
+	}
+	else
+	{
+		gettimeofday( &start, NULL );
+	
+		while( !foo->empty() )
+			foo->pop_back();
+
+		gettimeofday( &end, NULL );
+	}
+
+	if ( print )
+		fprintf( stderr, "Removal of %d from %s elements took:  %d s, %d us\n", l_size, front ?
"front" : "back",
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t iterate_list( list_type *foo, bool print )
+{
+	timeval	start;
+	timeval	end;
+	list_type::iterator iter;
+	list_type::iterator iter_end = foo->end();
+
+	gettimeofday( &start, NULL );
+	
+	for( iter = foo->begin(); iter != iter_end; ++iter );
+	{
+		int m = *iter;
+	}
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+	fprintf( stderr, "Iteration of %d elements took:  %d s, %d us\n", foo->size(),
+		(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+void test_list( int l_size )
+{
+	list_type *foo;
+	double blah = 0;
+	double blah2;
+	int	i;
+
+	blah = 0;
+	blah2 = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		blah += new_list( l_size, false, &foo );
+		blah2 += delete_list( foo, l_size, false );
+	}
+	blah = blah / i;
+	blah2 = blah2 / i;
+	fprintf( stderr, "List creation of %d elements took:  %f us\n", l_size, blah );
+	fprintf( stderr, "List deletion of %d elements took:  %f us\n", l_size, blah2 );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += remove_elements( foo, true, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Remove of %d elements from FRONT took:  %f us\n", l_size, blah );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += remove_elements( foo, false, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Remove of %d elements from BACK took:  %f us\n", l_size, blah );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += iterate_list( foo, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Iteration of %d elements took:  %f us\n", l_size, blah );
+
+	fprintf( stderr, "\n" );
+}
+
+
+int main( int argc, char *argv[] )
+{
+	test_list( 10 );
+	test_list( 100 );
+	test_list( 1000 );
+	test_list( 10000 );
+
+	return 0;
+}

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/stl-list.cxx
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/stl-list.cxx?rev=1206870&view=auto
==============================================================================
--- incubator/ooo/ooo-site/trunk/content/tools/performance/stl-list.cxx (added)
+++ incubator/ooo/ooo-site/trunk/content/tools/performance/stl-list.cxx Sun Nov 27 22:23:15
2011
@@ -0,0 +1,164 @@
+#include <list>
+#include <stdio.h>
+#include <sys/time.h>
+
+typedef std::list<int>	list_type;
+
+suseconds_t delete_list( list_type *list, int l_size, bool print )
+{
+	timeval	start;
+	timeval	end;
+
+	gettimeofday( &start, NULL );
+
+	delete list;
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List deletion of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t new_list( int l_size, bool print, list_type **foo )
+{
+	int		i;
+	timeval	start;
+	timeval	end;
+
+	*foo = new list_type;
+
+	gettimeofday( &start, NULL );
+
+	for( i = 0; i < l_size; i++ )
+		 (*foo)->push_back( i );
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List creation of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t remove_elements( list_type *foo, bool front, bool print )
+{
+	timeval	start;
+	timeval	end;
+	int		l_size = foo->size();
+
+	if ( front )
+	{
+		gettimeofday( &start, NULL );
+	
+		while( !foo->empty() )
+			foo->pop_front();
+
+		gettimeofday( &end, NULL );
+	}
+	else
+	{
+		gettimeofday( &start, NULL );
+	
+		while( !foo->empty() )
+			foo->pop_back();
+
+		gettimeofday( &end, NULL );
+	}
+
+	if ( print )
+		fprintf( stderr, "Removal of %d from %s elements took:  %d s, %d us\n", l_size, front ?
"front" : "back",
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t iterate_list( list_type *foo, bool print )
+{
+	timeval	start;
+	timeval	end;
+	list_type::iterator iter;
+	list_type::iterator iter_end = foo->end();
+
+	gettimeofday( &start, NULL );
+	
+	for( iter = foo->begin(); iter != iter_end; ++iter );
+	{
+		int m = *iter;
+	}
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+	fprintf( stderr, "Iteration of %d elements took:  %d s, %d us\n", foo->size(),
+		(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+void test_list( int l_size )
+{
+	list_type *foo;
+	double blah = 0;
+	double blah2;
+	int	i;
+
+	blah = 0;
+	blah2 = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		blah += new_list( l_size, false, &foo );
+		blah2 += delete_list( foo, l_size, false );
+	}
+	blah = blah / i;
+	blah2 = blah2 / i;
+	fprintf( stderr, "List creation of %d elements took:  %f us\n", l_size, blah );
+	fprintf( stderr, "List deletion of %d elements took:  %f us\n", l_size, blah2 );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += remove_elements( foo, true, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Remove of %d elements from FRONT took:  %f us\n", l_size, blah );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += remove_elements( foo, false, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Remove of %d elements from BACK took:  %f us\n", l_size, blah );
+
+	blah = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += iterate_list( foo, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Iteration of %d elements took:  %f us\n", l_size, blah );
+
+	fprintf( stderr, "\n" );
+}
+
+
+int main( int argc, char *argv[] )
+{
+	test_list( 10 );
+	test_list( 100 );
+	test_list( 1000 );
+	test_list( 10000 );
+
+	return 0;
+}

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/stl-vector.cxx
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/stl-vector.cxx?rev=1206870&view=auto
==============================================================================
--- incubator/ooo/ooo-site/trunk/content/tools/performance/stl-vector.cxx (added)
+++ incubator/ooo/ooo-site/trunk/content/tools/performance/stl-vector.cxx Sun Nov 27 22:23:15
2011
@@ -0,0 +1,145 @@
+#include <vector>
+#include <stdio.h>
+#include <sys/time.h>
+
+typedef std::vector<int>	list_type;
+
+suseconds_t delete_list( list_type *list, int l_size, bool print )
+{
+	timeval	start;
+	timeval	end;
+
+	gettimeofday( &start, NULL );
+
+	delete list;
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List deletion of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t new_list( int l_size, bool print, list_type **foo )
+{
+	int		i;
+	timeval	start;
+	timeval	end;
+
+	*foo = new list_type;
+
+	gettimeofday( &start, NULL );
+
+	for( i = 0; i < l_size; i++ )
+		 (*foo)->push_back( i );
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "List creation of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t remove_elements( list_type *foo, bool print )
+{
+	timeval	start;
+	timeval	end;
+	int		l_size = foo->size();
+
+		gettimeofday( &start, NULL );
+	
+		while( !foo->empty() )
+			foo->pop_back();
+
+		gettimeofday( &end, NULL );
+
+	if ( print )
+		fprintf( stderr, "Removal of %d elements took:  %d s, %d us\n", l_size,
+			(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+suseconds_t iterate_list( list_type *foo, bool print )
+{
+	timeval	start;
+	timeval	end;
+	list_type::iterator iter;
+	list_type::iterator iter_end = foo->end();
+
+	gettimeofday( &start, NULL );
+	
+	for( iter = foo->begin(); iter != iter_end; ++iter );
+	{
+		int m = *iter;
+	}
+
+	gettimeofday( &end, NULL );
+
+	if ( print )
+	fprintf( stderr, "Iteration of %d elements took:  %d s, %d us\n", foo->size(),
+		(end.tv_sec-start.tv_sec), (end.tv_usec-start.tv_usec) );
+
+	delete foo;
+
+	return( end.tv_usec-start.tv_usec );
+}
+
+void test_list( int l_size )
+{
+	list_type *foo = NULL;
+	double blah = 0;
+	double blah2;
+	int	i;
+
+	blah = 0;
+	blah2 = 0;
+	for ( i = 0; i < 30; i++ )
+	{
+		blah += new_list( l_size, false, &foo );
+		blah2 += delete_list( foo, l_size, false );
+	}
+	blah = blah / i;
+	blah2 = blah2 / i;
+	fprintf( stderr, "List creation of %d elements took:  %f us\n", l_size, blah );
+	fprintf( stderr, "List deletion of %d elements took:  %f us\n", l_size, blah2 );
+
+	blah = 0;
+	foo = NULL;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += remove_elements( foo, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Remove of %d elements took:  %f us\n", l_size, blah );
+
+	blah = 0;
+	foo = NULL;
+	for ( i = 0; i < 30; i++ )
+	{
+		new_list( l_size, false, &foo );
+		blah += iterate_list( foo, false );
+	}
+	blah = blah / i;
+	fprintf( stderr, "Iteration of %d elements took:  %f us\n", l_size, blah );
+
+	fprintf( stderr, "\n" );
+}
+
+
+int main( int argc, char *argv[] )
+{
+	test_list( 10 );
+	test_list( 100 );
+	test_list( 1000 );
+	test_list( 10000 );
+
+	return 0;
+}

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/testdocs-odf.zip
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/testdocs-odf.zip?rev=1206870&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/ooo/ooo-site/trunk/content/tools/performance/testdocs-odf.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/windows/index.html
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/windows/index.html?rev=1206870&view=auto
==============================================================================
--- incubator/ooo/ooo-site/trunk/content/tools/performance/windows/index.html (added)
+++ incubator/ooo/ooo-site/trunk/content/tools/performance/windows/index.html Sun Nov 27 22:23:15
2011
@@ -0,0 +1,139 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+<HEAD>
+	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1">
+	<TITLE></TITLE>
+	<META NAME="GENERATOR" CONTENT="StarOffice/5.2 (Win32)">
+	<META NAME="AUTHOR" CONTENT="Martin Hollmichel">
+	<META NAME="CREATED" CONTENT="20010510;13383932">
+	<META NAME="CHANGEDBY" CONTENT="Martin Hollmichel">
+	<META NAME="CHANGED" CONTENT="20011012;7310945">
+</HEAD>
+<BODY>
+<H2>Windows performance issues</H2>
+<UL>
+	<LI><P>reducing exports to make loading of shared libraries (DLLs)
+	faster.</P>
+	<LI><P>Reduce number of DLL's needed at startup</P>
+</UL>
+<P>Performance Data:</P>
+<TABLE WIDTH=100% BORDER=1 CELLPADDING=4 CELLSPACING=3>
+	<COL WIDTH=85*>
+	<COL WIDTH=32*>
+	<COL WIDTH=32*>
+	<COL WIDTH=106*>
+	<THEAD>
+		<TR VALIGN=TOP>
+			<TH WIDTH=33%>
+				<P>OpenOffice.org Version</P>
+			</TH>
+			<TH WIDTH=13%>
+				<P>Startup (cold start)</P>
+			</TH>
+			<TH WIDTH=13%>
+				<P><A HREF="loaded_dlls.sxc">Loaded DLL's</A></P>
+			</TH>
+			<TH WIDTH=42%>
+				<P>Memory footprint after start and late init</P>
+			</TH>
+		</TR>
+	</THEAD>
+	<TBODY>
+		<TR VALIGN=TOP>
+			<TD WIDTH=33%>
+				<P>OpenOffice 625</P>
+			</TD>
+			<TD WIDTH=13%>
+				<P>15 sec</P>
+			</TD>
+			<TD WIDTH=13%>
+				<P><BR>
+				</P>
+			</TD>
+			<TD WIDTH=42%>
+				<P>23944 KB / 3996 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+		<TR>
+			<TD WIDTH=33% VALIGN=TOP>
+				<P>OpenOffice 627</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=TOP>
+				<P>12 sec</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=BOTTOM SDVAL="80" SDNUM="1033;">
+				<P ALIGN=RIGHT>80</P>
+			</TD>
+			<TD WIDTH=42% VALIGN=TOP>
+				<P>24864 KB / 3904 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+		<TR VALIGN=TOP>
+			<TD WIDTH=33%>
+				<P>OpenOffice 632</P>
+			</TD>
+			<TD WIDTH=13%>
+				<P>17 sec</P>
+			</TD>
+			<TD WIDTH=13%>
+				<P><BR>
+				</P>
+			</TD>
+			<TD WIDTH=42%>
+				<P>32940 KB / 10876 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+		<TR>
+			<TD WIDTH=33% VALIGN=TOP>
+				<P>OpenOffice 633</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=TOP>
+				<P>13 sec</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=BOTTOM SDVAL="84" SDNUM="1033;">
+				<P ALIGN=RIGHT>84</P>
+			</TD>
+			<TD WIDTH=42% VALIGN=TOP>
+				<P>26796 KB / 4152 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+		<TR>
+			<TD WIDTH=33% VALIGN=TOP>
+				<P>OpenOffice 638</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=TOP>
+				<P>12 sec</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=BOTTOM>
+				<P ALIGN=RIGHT><BR>
+				</P>
+			</TD>
+			<TD WIDTH=42% VALIGN=TOP>
+				<P>26428 KB / 4232 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+		<TR>
+			<TD WIDTH=33% VALIGN=TOP>
+				<P>OpenOffice 638C</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=TOP>
+				<P>13 sec</P>
+			</TD>
+			<TD WIDTH=13% VALIGN=BOTTOM>
+				<P ALIGN=RIGHT><BR>
+				</P>
+			</TD>
+			<TD WIDTH=42% VALIGN=TOP>
+				<P>27392 KB / 4504 KB (Working Set / Heap)</P>
+			</TD>
+		</TR>
+	</TBODY>
+</TABLE>
+<P><BR><BR>
+</P>
+<P><BR><BR>
+</P>
+<P><BR><BR>
+</P>
+</BODY>
+</HTML>
\ No newline at end of file

Propchange: incubator/ooo/ooo-site/trunk/content/tools/performance/windows/index.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/windows/loaded_dlls.sxc
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/windows/loaded_dlls.sxc?rev=1206870&view=auto
==============================================================================
Binary file - no diff available.

Propchange: incubator/ooo/ooo-site/trunk/content/tools/performance/windows/loaded_dlls.sxc
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: incubator/ooo/ooo-site/trunk/content/tools/performance/working_set.html
URL: http://svn.apache.org/viewvc/incubator/ooo/ooo-site/trunk/content/tools/performance/working_set.html?rev=1206870&view=auto
==============================================================================
--- incubator/ooo/ooo-site/trunk/content/tools/performance/working_set.html (added)
+++ incubator/ooo/ooo-site/trunk/content/tools/performance/working_set.html Sun Nov 27 22:23:15
2011
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
+<HTML>
+<HEAD>
+	<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=iso-8859-1">
+	<TITLE></TITLE>
+	<META NAME="GENERATOR" CONTENT="StarOffice/5.2 (Win32)">
+	<META NAME="AUTHOR" CONTENT="Martin Hollmichel">
+	<META NAME="CREATED" CONTENT="20010510;16415120">
+	<META NAME="CHANGEDBY" CONTENT="Martin Hollmichel">
+	<META NAME="CHANGED" CONTENT="20010510;17113442">
+</HEAD>
+<BODY>
+<H2>Tuning the Working Set</H2>
+<H3>Windows 
+</H3>
+<P>Working Set Tuner :  Former version of the Platform Win32 SDK
+included a tool named working set tuner. It is possible to create an
+instrumetalized version of your application, gather runtime data
+about called function, and then to produce an optimized link order.
+This optimized link order causes less page load when starting the
+application. In old version of StarOffice we achieved ~30% better
+startup performance. Unfortunately the use of the working set tuner
+failed with the use of exceptions in the office code. 
+</P>
+<P>The working set tuner has removed by Microsoft from the Platform
+SDK for years now. There is now a new project in &quot;MSJ
+Bugslayer&quot;, &quot;Smooth Working Set Tuner&quot;, which tries to
+succeed the WST.
+<A HREF="http://msdn.microsoft.com/msdnmag/issues/1000/Bugslayer/Bugslayer1000.asp">http://msdn.microsoft.com/msdnmag/issues/1000/Bugslayer/Bugslayer1000.asp</A>
+. Unfortunately this tools does not run with OpenOffice.org yet.</P>
+</BODY>
+</HTML>
\ No newline at end of file

Propchange: incubator/ooo/ooo-site/trunk/content/tools/performance/working_set.html
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message