Add a trivial benchmark for wxDateTime::ParseDate().
Add a test to check the performance of this method. See #13242. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -43,6 +43,7 @@ BENCH_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \
|
|||||||
$(CXXFLAGS)
|
$(CXXFLAGS)
|
||||||
BENCH_OBJECTS = \
|
BENCH_OBJECTS = \
|
||||||
bench_bench.o \
|
bench_bench.o \
|
||||||
|
bench_datetime.o \
|
||||||
bench_htmlpars.o \
|
bench_htmlpars.o \
|
||||||
bench_htmltag.o \
|
bench_htmltag.o \
|
||||||
bench_ipcclient.o \
|
bench_ipcclient.o \
|
||||||
@@ -131,6 +132,9 @@ data:
|
|||||||
bench_bench.o: $(srcdir)/bench.cpp
|
bench_bench.o: $(srcdir)/bench.cpp
|
||||||
$(CXXC) -c -o $@ $(BENCH_CXXFLAGS) $(srcdir)/bench.cpp
|
$(CXXC) -c -o $@ $(BENCH_CXXFLAGS) $(srcdir)/bench.cpp
|
||||||
|
|
||||||
|
bench_datetime.o: $(srcdir)/datetime.cpp
|
||||||
|
$(CXXC) -c -o $@ $(BENCH_CXXFLAGS) $(srcdir)/datetime.cpp
|
||||||
|
|
||||||
bench_htmlpars.o: $(srcdir)/htmlparser/htmlpars.cpp
|
bench_htmlpars.o: $(srcdir)/htmlparser/htmlpars.cpp
|
||||||
$(CXXC) -c -o $@ $(BENCH_CXXFLAGS) $(srcdir)/htmlparser/htmlpars.cpp
|
$(CXXC) -c -o $@ $(BENCH_CXXFLAGS) $(srcdir)/htmlparser/htmlpars.cpp
|
||||||
|
|
||||||
|
@@ -11,6 +11,7 @@
|
|||||||
template_append="wx_append_base">
|
template_append="wx_append_base">
|
||||||
<sources>
|
<sources>
|
||||||
bench.cpp
|
bench.cpp
|
||||||
|
datetime.cpp
|
||||||
htmlparser/htmlpars.cpp
|
htmlparser/htmlpars.cpp
|
||||||
htmlparser/htmltag.cpp
|
htmlparser/htmltag.cpp
|
||||||
ipcclient.cpp
|
ipcclient.cpp
|
||||||
|
@@ -239,6 +239,10 @@ SOURCE=.\bench.cpp
|
|||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
|
||||||
|
SOURCE=.\datetime.cpp
|
||||||
|
# End Source File
|
||||||
|
# Begin Source File
|
||||||
|
|
||||||
SOURCE=.\htmlparser\htmlpars.cpp
|
SOURCE=.\htmlparser\htmlpars.cpp
|
||||||
# End Source File
|
# End Source File
|
||||||
# Begin Source File
|
# Begin Source File
|
||||||
|
@@ -544,6 +544,9 @@
|
|||||||
<File
|
<File
|
||||||
RelativePath=".\bench.cpp">
|
RelativePath=".\bench.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\datetime.cpp">
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\htmlparser\htmlpars.cpp">
|
RelativePath=".\htmlparser\htmlpars.cpp">
|
||||||
</File>
|
</File>
|
||||||
|
@@ -807,6 +807,10 @@
|
|||||||
RelativePath=".\bench.cpp"
|
RelativePath=".\bench.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\datetime.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\htmlparser\htmlpars.cpp"
|
RelativePath=".\htmlparser\htmlpars.cpp"
|
||||||
>
|
>
|
||||||
|
@@ -779,6 +779,10 @@
|
|||||||
RelativePath=".\bench.cpp"
|
RelativePath=".\bench.cpp"
|
||||||
>
|
>
|
||||||
</File>
|
</File>
|
||||||
|
<File
|
||||||
|
RelativePath=".\datetime.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath=".\htmlparser\htmlpars.cpp"
|
RelativePath=".\htmlparser\htmlpars.cpp"
|
||||||
>
|
>
|
||||||
|
20
tests/benchmarks/datetime.cpp
Normal file
20
tests/benchmarks/datetime.cpp
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Name: tests/benchmarks/datetime.cpp
|
||||||
|
// Purpose: wxDateTime benchmarks
|
||||||
|
// Author: Vadim Zeitlin
|
||||||
|
// Created: 2011-05-23
|
||||||
|
// RCS-ID: $Id$
|
||||||
|
// Copyright: (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||||
|
// Licence: wxWindows licence
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
#include "wx/datetime.h"
|
||||||
|
|
||||||
|
#include "bench.h"
|
||||||
|
|
||||||
|
BENCHMARK_FUNC(ParseDate)
|
||||||
|
{
|
||||||
|
wxDateTime dt;
|
||||||
|
return dt.ParseDate("May 23, 2011") && dt.GetMonth() == wxDateTime::May;
|
||||||
|
}
|
||||||
|
|
@@ -37,6 +37,7 @@ BENCH_CXXFLAGS = $(__RUNTIME_LIBS_7) -I$(BCCDIR)\include $(__DEBUGINFO) \
|
|||||||
$(CPPFLAGS) $(CXXFLAGS)
|
$(CPPFLAGS) $(CXXFLAGS)
|
||||||
BENCH_OBJECTS = \
|
BENCH_OBJECTS = \
|
||||||
$(OBJS)\bench_bench.obj \
|
$(OBJS)\bench_bench.obj \
|
||||||
|
$(OBJS)\bench_datetime.obj \
|
||||||
$(OBJS)\bench_htmlpars.obj \
|
$(OBJS)\bench_htmlpars.obj \
|
||||||
$(OBJS)\bench_htmltag.obj \
|
$(OBJS)\bench_htmltag.obj \
|
||||||
$(OBJS)\bench_ipcclient.obj \
|
$(OBJS)\bench_ipcclient.obj \
|
||||||
@@ -212,6 +213,9 @@ data:
|
|||||||
$(OBJS)\bench_bench.obj: .\bench.cpp
|
$(OBJS)\bench_bench.obj: .\bench.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BENCH_CXXFLAGS) .\bench.cpp
|
$(CXX) -q -c -P -o$@ $(BENCH_CXXFLAGS) .\bench.cpp
|
||||||
|
|
||||||
|
$(OBJS)\bench_datetime.obj: .\datetime.cpp
|
||||||
|
$(CXX) -q -c -P -o$@ $(BENCH_CXXFLAGS) .\datetime.cpp
|
||||||
|
|
||||||
$(OBJS)\bench_htmlpars.obj: .\htmlparser\htmlpars.cpp
|
$(OBJS)\bench_htmlpars.obj: .\htmlparser\htmlpars.cpp
|
||||||
$(CXX) -q -c -P -o$@ $(BENCH_CXXFLAGS) .\htmlparser\htmlpars.cpp
|
$(CXX) -q -c -P -o$@ $(BENCH_CXXFLAGS) .\htmlparser\htmlpars.cpp
|
||||||
|
|
||||||
|
@@ -30,6 +30,7 @@ BENCH_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG) \
|
|||||||
$(CXXFLAGS)
|
$(CXXFLAGS)
|
||||||
BENCH_OBJECTS = \
|
BENCH_OBJECTS = \
|
||||||
$(OBJS)\bench_bench.o \
|
$(OBJS)\bench_bench.o \
|
||||||
|
$(OBJS)\bench_datetime.o \
|
||||||
$(OBJS)\bench_htmlpars.o \
|
$(OBJS)\bench_htmlpars.o \
|
||||||
$(OBJS)\bench_htmltag.o \
|
$(OBJS)\bench_htmltag.o \
|
||||||
$(OBJS)\bench_ipcclient.o \
|
$(OBJS)\bench_ipcclient.o \
|
||||||
@@ -198,6 +199,9 @@ data:
|
|||||||
$(OBJS)\bench_bench.o: ./bench.cpp
|
$(OBJS)\bench_bench.o: ./bench.cpp
|
||||||
$(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
$(OBJS)\bench_datetime.o: ./datetime.cpp
|
||||||
|
$(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
$(OBJS)\bench_htmlpars.o: ./htmlparser/htmlpars.cpp
|
$(OBJS)\bench_htmlpars.o: ./htmlparser/htmlpars.cpp
|
||||||
$(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
|
$(CXX) -c -o $@ $(BENCH_CXXFLAGS) $(CPPDEPS) $<
|
||||||
|
|
||||||
|
@@ -31,6 +31,7 @@ BENCH_CXXFLAGS = /M$(__RUNTIME_LIBS_10)$(__DEBUGRUNTIME_4) /DWIN32 \
|
|||||||
$(CXXFLAGS)
|
$(CXXFLAGS)
|
||||||
BENCH_OBJECTS = \
|
BENCH_OBJECTS = \
|
||||||
$(OBJS)\bench_bench.obj \
|
$(OBJS)\bench_bench.obj \
|
||||||
|
$(OBJS)\bench_datetime.obj \
|
||||||
$(OBJS)\bench_htmlpars.obj \
|
$(OBJS)\bench_htmlpars.obj \
|
||||||
$(OBJS)\bench_htmltag.obj \
|
$(OBJS)\bench_htmltag.obj \
|
||||||
$(OBJS)\bench_ipcclient.obj \
|
$(OBJS)\bench_ipcclient.obj \
|
||||||
@@ -299,6 +300,9 @@ data:
|
|||||||
$(OBJS)\bench_bench.obj: .\bench.cpp
|
$(OBJS)\bench_bench.obj: .\bench.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BENCH_CXXFLAGS) .\bench.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BENCH_CXXFLAGS) .\bench.cpp
|
||||||
|
|
||||||
|
$(OBJS)\bench_datetime.obj: .\datetime.cpp
|
||||||
|
$(CXX) /c /nologo /TP /Fo$@ $(BENCH_CXXFLAGS) .\datetime.cpp
|
||||||
|
|
||||||
$(OBJS)\bench_htmlpars.obj: .\htmlparser\htmlpars.cpp
|
$(OBJS)\bench_htmlpars.obj: .\htmlparser\htmlpars.cpp
|
||||||
$(CXX) /c /nologo /TP /Fo$@ $(BENCH_CXXFLAGS) .\htmlparser\htmlpars.cpp
|
$(CXX) /c /nologo /TP /Fo$@ $(BENCH_CXXFLAGS) .\htmlparser\htmlpars.cpp
|
||||||
|
|
||||||
|
@@ -226,6 +226,7 @@ BENCH_CXXFLAGS = $(__DEBUGINFO_0) $(__OPTIMIZEFLAG_2) $(__THREADSFLAG_5) &
|
|||||||
$(__EXCEPTIONSFLAG_8) $(CPPFLAGS) $(CXXFLAGS)
|
$(__EXCEPTIONSFLAG_8) $(CPPFLAGS) $(CXXFLAGS)
|
||||||
BENCH_OBJECTS = &
|
BENCH_OBJECTS = &
|
||||||
$(OBJS)\bench_bench.obj &
|
$(OBJS)\bench_bench.obj &
|
||||||
|
$(OBJS)\bench_datetime.obj &
|
||||||
$(OBJS)\bench_htmlpars.obj &
|
$(OBJS)\bench_htmlpars.obj &
|
||||||
$(OBJS)\bench_htmltag.obj &
|
$(OBJS)\bench_htmltag.obj &
|
||||||
$(OBJS)\bench_ipcclient.obj &
|
$(OBJS)\bench_ipcclient.obj &
|
||||||
@@ -270,6 +271,9 @@ data : .SYMBOLIC
|
|||||||
$(OBJS)\bench_bench.obj : .AUTODEPEND .\bench.cpp
|
$(OBJS)\bench_bench.obj : .AUTODEPEND .\bench.cpp
|
||||||
$(CXX) -bt=nt -zq -fo=$^@ $(BENCH_CXXFLAGS) $<
|
$(CXX) -bt=nt -zq -fo=$^@ $(BENCH_CXXFLAGS) $<
|
||||||
|
|
||||||
|
$(OBJS)\bench_datetime.obj : .AUTODEPEND .\datetime.cpp
|
||||||
|
$(CXX) -bt=nt -zq -fo=$^@ $(BENCH_CXXFLAGS) $<
|
||||||
|
|
||||||
$(OBJS)\bench_htmlpars.obj : .AUTODEPEND .\htmlparser\htmlpars.cpp
|
$(OBJS)\bench_htmlpars.obj : .AUTODEPEND .\htmlparser\htmlpars.cpp
|
||||||
$(CXX) -bt=nt -zq -fo=$^@ $(BENCH_CXXFLAGS) $<
|
$(CXX) -bt=nt -zq -fo=$^@ $(BENCH_CXXFLAGS) $<
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user