toon-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Toon-members] TooN/test dynamic_test.cc


From: Edward Rosten
Subject: [Toon-members] TooN/test dynamic_test.cc
Date: Wed, 01 Apr 2009 15:48:45 +0000

CVSROOT:        /cvsroot/toon
Module name:    TooN
Changes by:     Edward Rosten <edrosten>        09/04/01 15:48:45

Added files:
        test           : dynamic_test.cc 

Log message:
        Added test for efficiency of dynamic vectors. They are much less 
efficient
        than static ones. G++ can not optimize away new and delete. The 
following
        code is not optimized:
        
        int test_new_optimization(int i)
        {
                int* tmp = new int;
                *tmp = i;
                int j = *tmp;
                delete tmp;
                return j;
        }

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/TooN/test/dynamic_test.cc?cvsroot=toon&rev=1.1

Patches:
Index: dynamic_test.cc
===================================================================
RCS file: dynamic_test.cc
diff -N dynamic_test.cc
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ dynamic_test.cc     1 Apr 2009 15:48:45 -0000       1.1
@@ -0,0 +1,27 @@
+#include <TooN/TooN.h>
+
+using namespace TooN;
+extern "C"{
+
+Vector<3> add_static(const Vector<3>& a, const Vector<3>& b)
+{
+       Vector<3> t;
+       for(int i=0; i < 3; i++)
+               t[i] = a[i] + b[i];
+
+       Vector<3> t1 = t;
+       Vector<3> t2 = t1;
+       return t2;
+}
+
+Vector<-1> add_dynamic(const Vector<-1>& a, const Vector<-1>& b)
+{
+       Vector<> t(a.size());
+       for(int i=0; i < 3; i++)
+               t[i] = a[i] + b[i];
+       Vector<> t1 = t;
+       Vector<> t2 = t1;
+       return t2;
+}
+
+}




reply via email to

[Prev in Thread] Current Thread [Next in Thread]