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 "MSJ
+Bugslayer", "Smooth Working Set Tuner", 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