2010/3/23 Konstantin Tokarev <annu...@yandex.ru>: > > > 23.03.10, 20:30, "Tim Vandermeersch" <tim.vandermeer...@gmail.com>: > >> On Mon, Mar 22, 2010 at 7:13 PM, Konstantin Tokarev wrote: >> > >> > >> > 22.03.10, 18:56, "Tim Vandermeersch" : >> > >> >> On Sun, Mar 21, 2010 at 12:48 PM, Konstantin Tokarev wrote: >> >> > Are there any perforamnce benchmark scripts for OB? E.g., I'd like to >> test if OB compiled by Intel is faster than by GCC or if -O3 optimization >> with Intel is more effective than -O2 >> >> Are there specific parts of the code you want to test? For >> >> example,OBMol::ConnectTheDots could be made faster for large >> >> molecules. >> > >> > Yes, it's quite slow. But it's a problem of algorithm, not compiler >> > >> >>I don't know if anyone has been benchmarking OB code (apart >> >> from force field code). >> >> On linux, you can always use the time command to check how long >> >> something takes. We could also add some macros to obtest.h to do >> >> benchmarking. >> > >> > I know. I wondered if there are some "ready" benchmarks to do less work >> >> In openbabel trunk, I added test/obbench.h to provide some macros for >> performance benchmarking. It provides millisecond precision but >> converts to minutes/seconds when needed. Using it is very simple: >> >> OB_BENCHMARK { >> // code to benchmark here... >> } >> >> Multiple iterations are performed when a single iteration takes less >> than 500ms (could be changed, this is an idea taken from Qt's >> QBENCHMARK). >> >> I also added a feature I miss in QBENCHMARK: A way to track benchmarks >> over time. It is still very basic but the idea is that the benchmark >> results get saved to a benchmark.txt file. The formatting of the file >> allows the content to be copied to a spreadsheet for analysis. To use >> this, a different macro is used: >> >> OB_NAMED_BENCHMARK("Some name identifying the benchmark") { >> // code.... >> } >> >> With some cmake magic, it should be possible to record compiler and >> compiler options. Otherwise, date/time could be recorded. >> >> Feedback is welcome. I didn't add this to test/CMakeLists.txt since I >> didn't want to break anything. It should work though. I've tested here >> on linux and windows XP. >> >> Cheers, >> Tim >> >> > > Great! Will try later > Maybe it's reasonable to run all available tests to check performance of all > modules. If some module slows down with -O3, "detunings" could be added
The header is working now, see the link below for an example graph from openoffice calc. I'll see if I can add some more useful benchmarks but this is just reading a lot of files or generating a fastsearch index like already suggested. One last remark about -O3: it is known it can create bugs... That's why we usually use -O2 AFAIK. link: http://imagebin.org/90060 Cheers, Tim >> > -- >> > Regards, >> > Konstantin >> > >> >> > > -- > Regards, > Konstantin > ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ OpenBabel-Devel mailing list OpenBabel-Devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbabel-devel