From 71d216b90256936a9638f325af9bc69d720e75de Mon Sep 17 00:00:00 2001 From: DongHun Kwak Date: Thu, 6 Oct 2016 10:30:07 +0900 Subject: Imported Upstream version 1.59.0 Change-Id: I2dde00f4eca71df3eea9d251dcaecde18a6c90a5 Signed-off-by: DongHun Kwak --- doc/html/intrusive/performance.html | 47 +++++++++++-------------------------- 1 file changed, 14 insertions(+), 33 deletions(-) (limited to 'doc/html/intrusive/performance.html') diff --git a/doc/html/intrusive/performance.html b/doc/html/intrusive/performance.html index b22bfc1a81..c1101555ab 100644 --- a/doc/html/intrusive/performance.html +++ b/doc/html/intrusive/performance.html @@ -1,3 +1,4 @@ + @@ -111,8 +112,6 @@ and itest_class classes, and some other utilities:

-

-

//Iteration and element count defines
 const int NumIter = 100;
 const int NumElements   = 50000;
@@ -150,8 +149,6 @@
       {  return FuncObj::operator()(*a, *b); }
 };
 
-

-

As we can see, test_class is a very simple class holding an int. @@ -184,8 +181,6 @@ Let's compare the code to be executed for each container type for different insertion tests:

-

-

std::vector<typename ilist::value_type> objects(NumElements);
 ilist l;
 for(int i = 0; i < NumElements; ++i)
@@ -193,26 +188,18 @@
 //Elements are unlinked in ilist's destructor
 //Elements are destroyed in vector's destructor
 
-

-

For intrusive containers, all the values are created in a vector and after that inserted in the intrusive list.

-

-

stdlist l;
 for(int i = 0; i < NumElements; ++i)
    l.push_back(typename stdlist::value_type(i));
 //Elements unlinked and destroyed in stdlist's destructor
 
-

-

For a standard list, elements are pushed back using push_back().

-

-

std::vector<typename stdlist::value_type> objects(NumElements);
 stdptrlist l;
 for(int i = 0; i < NumElements; ++i)
@@ -220,14 +207,10 @@
 //Pointers to elements unlinked and destroyed in stdptrlist's destructor
 //Elements destroyed in vector's destructor
 
-

-

For a standard compact pointer list, elements are created in a vector and pushed back in the pointer list using push_back().

-

-

stdlist objects;  stdptrlist l;
 for(int i = 0; i < NumElements; ++i){
    objects.push_back(typename stdlist::value_type(i));
@@ -236,8 +219,6 @@
 //Pointers to elements unlinked and destroyed in stdptrlist's destructor
 //Elements unlinked and destroyed in stdlist's destructor
 
-

-

For a disperse pointer list, elements are created in a list and pushed back in the pointer list using push_back(). @@ -246,7 +227,7 @@ These are the times in microseconds for each case, and the normalized time:

-

Table 15.2. Back insertion + destruction times for Visual C++ 7.1 / Windows XP

+

Table 15.2. Back insertion + destruction times for Visual C++ 7.1 / Windows XP

@@ -380,7 +361,7 @@

-

Table 15.3. Back insertion + destruction times for GCC 4.1.1 / MinGW over Windows +

Table 15.3. Back insertion + destruction times for GCC 4.1.1 / MinGW over Windows XP

@@ -516,7 +497,7 @@

-

Table 15.4. Back insertion + destruction times for GCC 4.1.2 / Linux Kernel 2.6.18 +

Table 15.4. Back insertion + destruction times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

@@ -693,7 +674,7 @@ These are the results:

-

Table 15.5. Reverse times for Visual C++ 7.1 / Windows XP

+

Table 15.5. Reverse times for Visual C++ 7.1 / Windows XP

@@ -827,7 +808,7 @@

-

Table 15.6. Reverse times for GCC 4.1.1 / MinGW over Windows XP

+

Table 15.6. Reverse times for GCC 4.1.1 / MinGW over Windows XP

@@ -961,7 +942,7 @@

-

Table 15.7. Reverse times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

+

Table 15.7. Reverse times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

@@ -1165,7 +1146,7 @@ These are the results:

-

Table 15.8. Sort times for Visual C++ 7.1 / Windows XP

+

Table 15.8. Sort times for Visual C++ 7.1 / Windows XP

@@ -1299,7 +1280,7 @@

-

Table 15.9. Sort times for GCC 4.1.1 / MinGW over Windows XP

+

Table 15.9. Sort times for GCC 4.1.1 / MinGW over Windows XP

@@ -1433,7 +1414,7 @@

-

Table 15.10. Sort times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

+

Table 15.10. Sort times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

@@ -1604,7 +1585,7 @@ These are the results:

-

Table 15.11. Write access times for Visual C++ 7.1 / Windows XP

+

Table 15.11. Write access times for Visual C++ 7.1 / Windows XP

@@ -1738,7 +1719,7 @@

-

Table 15.12. Write access times for GCC 4.1.1 / MinGW over Windows XP

+

Table 15.12. Write access times for GCC 4.1.1 / MinGW over Windows XP

@@ -1872,7 +1853,7 @@

-

Table 15.13. Write access times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

+

Table 15.13. Write access times for GCC 4.1.2 / Linux Kernel 2.6.18 (OpenSuse 10.2)

@@ -2027,7 +2008,7 @@
-