summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Baumann <p.baumann@jacobs-university.de>2010-07-27 08:59:55 +0200
committerwww-data <www-data@ubuntu.localdomain>2010-07-30 11:08:03 +0200
commit437ff942525f86a36655519cea0f5a03da319cd7 (patch)
treee8b29697ca4561311fbec58d5f71f7ee521c2533
parent18b61341d3c0f597ef71af2dc33769277defe9d5 (diff)
downloadrasdaman-upstream-437ff942525f86a36655519cea0f5a03da319cd7.tar.gz
rasdaman-upstream-437ff942525f86a36655519cea0f5a03da319cd7.tar.xz
rasdaman-upstream-437ff942525f86a36655519cea0f5a03da319cd7.zip
PB: improved benchmark output
-rw-r--r--compression/Makefile.am2
-rw-r--r--compression/Makefile.in138
-rw-r--r--compression/tilecompnone.hh4
-rw-r--r--indexmgr/mddobjix.cc6
-rw-r--r--raslib/rmdebug.hh14
-rw-r--r--raslib/rmdebug.icc64
-rw-r--r--raslib/rminit.hh2
-rw-r--r--rasmgr/Makefile.am6
-rw-r--r--rasmgr/rasmgr_config.cc54
-rw-r--r--rasmgr/rasmgr_main.cc6
-rw-r--r--rasmgr/rasmgr_master_nb.cc2
-rw-r--r--reladminif/oidifcommon.cc6
-rw-r--r--rnprotocol/rnpservercomm.cc12
-rw-r--r--server/Makefile.am4
-rw-r--r--servercomm/servercomm2.cc112
-rw-r--r--tilemgr/tile.cc3
-rw-r--r--tilemgr/tile.hh11
-rw-r--r--time/Makefile.in128
-rw-r--r--time/akg_benchmark.cc123
19 files changed, 308 insertions, 389 deletions
diff --git a/compression/Makefile.am b/compression/Makefile.am
index 7f86279..4cff362 100644
--- a/compression/Makefile.am
+++ b/compression/Makefile.am
@@ -32,4 +32,4 @@ AM_CXXFLAGS=@CLIENTCXXFLAGS@
AM_LDFLAGS=@CLIENTLDFLAGS@
lib_LIBRARIES = libcompression.a
-libcompression_a_SOURCES=tilecompression.cc tilecompression.hh
+libcompression_a_SOURCES=tilecompression.cc tilecompression.hh tilecompnone.cc tilecompnone.hh
diff --git a/compression/Makefile.in b/compression/Makefile.in
index 20ead74..892aaac 100644
--- a/compression/Makefile.in
+++ b/compression/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -46,8 +47,9 @@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -73,25 +75,41 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(libdir)"
-libLIBRARIES_INSTALL = $(INSTALL_DATA)
LIBRARIES = $(lib_LIBRARIES)
AR = ar
ARFLAGS = cru
libcompression_a_AR = $(AR) $(ARFLAGS)
libcompression_a_LIBADD =
-am_libcompression_a_OBJECTS = nocompstream.$(OBJEXT) \
- tilecompression.$(OBJEXT) tilecompnone.$(OBJEXT)
+am_libcompression_a_OBJECTS = tilecompression.$(OBJEXT) \
+ tilecompnone.$(OBJEXT)
libcompression_a_OBJECTS = $(am_libcompression_a_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
+am__mv = mv -f
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
@@ -149,6 +167,7 @@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+JAR_TOOL = @JAR_TOOL@
JAVA_CC = @JAVA_CC@
JAVA_CC_FLAGS = @JAVA_CC_FLAGS@
JAVA_CC_OPTS = @JAVA_CC_OPTS@
@@ -172,6 +191,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PG_CONFIG = @PG_CONFIG@
@@ -233,15 +253,13 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AM_CXXFLAGS = @CLIENTCXXFLAGS@
AM_LDFLAGS = @CLIENTLDFLAGS@
lib_LIBRARIES = libcompression.a
-libcompression_a_SOURCES = nocompstream.cc nocompstream.hh tilecompression.cc \
- tilecompression.hh tilecompnone.cc tilecompnone.hh \
- compresstime.hh lincompstream.hh
-
+libcompression_a_SOURCES = tilecompression.cc tilecompression.hh tilecompnone.cc tilecompnone.hh
all: all-am
.SUFFIXES:
@@ -250,14 +268,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu compression/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu compression/Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign compression/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign compression/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -275,32 +293,36 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
if test -f $$p; then \
- f=$(am__strip_dir) \
- echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
- $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ list2="$$list2 $$p"; \
else :; fi; \
- done
+ done; \
+ test -z "$$list2" || { \
+ echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; }
@$(POST_INSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
if test -f $$p; then \
- p=$(am__strip_dir) \
- echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
- $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+ $(am__strip_dir) \
+ echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \
+ ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \
else :; fi; \
done
uninstall-libLIBRARIES:
@$(NORMAL_UNINSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
- p=$(am__strip_dir) \
- echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
- rm -f "$(DESTDIR)$(libdir)/$$p"; \
- done
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(libdir)' && rm -f "$$files" )"; \
+ cd "$(DESTDIR)$(libdir)" && rm -f $$files
clean-libLIBRARIES:
-test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
@@ -315,20 +337,19 @@ mostlyclean-compile:
distclean-compile:
-rm -f *.tab.c
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nocompstream.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tilecompnone.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tilecompression.Po@am__quote@
.cc.o:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cc.obj:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
@@ -338,14 +359,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
+ set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
@@ -353,29 +374,34 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
- if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
+ $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -396,13 +422,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -433,6 +463,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -453,6 +484,8 @@ dvi-am:
html: html-am
+html-am:
+
info: info-am
info-am:
@@ -461,18 +494,28 @@ install-data-am:
install-dvi: install-dvi-am
+install-dvi-am:
+
install-exec-am: install-libLIBRARIES
install-html: install-html-am
+install-html-am:
+
install-info: install-info-am
+install-info-am:
+
install-man:
install-pdf: install-pdf-am
+install-pdf-am:
+
install-ps: install-ps-am
+install-ps-am:
+
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -509,6 +552,7 @@ uninstall-am: uninstall-libLIBRARIES
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
uninstall-am uninstall-libLIBRARIES
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/compression/tilecompnone.hh b/compression/tilecompnone.hh
index 42eed88..d73a63e 100644
--- a/compression/tilecompnone.hh
+++ b/compression/tilecompnone.hh
@@ -45,9 +45,7 @@ rasdaman GmbH.
//@ManMemo: Module {\bf compression}
/*@Doc:
- Tile compression for no compression. This should normally not be used,
- but in some cases it's required for cleaner modelling (e.g. an unsupported
- data format is requested which is interpreted as uncompressed data).
+ Tile compression for no compression.
*/
class r_Tile_Comp_None : public r_Tile_Compression
diff --git a/indexmgr/mddobjix.cc b/indexmgr/mddobjix.cc
index 6e85d97..2945039 100644
--- a/indexmgr/mddobjix.cc
+++ b/indexmgr/mddobjix.cc
@@ -183,9 +183,9 @@ MDDObjIx::getDimension() const
void
MDDObjIx::initializeTimerPointers()
{
- pointQueryTimer= new RMTimer("DirIx", "pointQuery time ");
- intersectTimer = new RMTimer("DirIx", "intersect time ");
- getTilesTimer = new RMTimer("DirIx", "getTiles time ");
+ pointQueryTimer= new RMTimer("DirIx", "pointQuery");
+ intersectTimer = new RMTimer("DirIx", "intersect");
+ getTilesTimer = new RMTimer("DirIx", "getTiles");
}
#endif
diff --git a/raslib/rmdebug.hh b/raslib/rmdebug.hh
index 08e38cc..6154c7d 100644
--- a/raslib/rmdebug.hh
+++ b/raslib/rmdebug.hh
@@ -89,14 +89,11 @@ extern int RManBenchmark;
#define RMDBCLASS( t1, t2, t3, t4, t5 ) ;
#endif
+// generate benchmark code only when RMANBENCHMARK is set
#ifdef RMANBENCHMARK
-
#define RMTIMER(class, func) RMTimer localRMTimer = RMTimer(class, func);
-
#else
-
#define RMTIMER(class, func)
-
#endif
//@ManMemo: Module: {\bf raslib}.
@@ -262,7 +259,7 @@ private:
/**
RMTimer is not strictly part of RasLib. It is a class used for taking
-timing measurements if compiling with RMANBENCHMARK defined. One way
+timing measurements if configuring with --benchmark-enabled. One way
of using it is to put the following at the beginning of a function:
{\tt RMTIMER("className", "functionName");}
@@ -329,6 +326,9 @@ public:
Time spent is the time since construction or last start() excluding
the times between pause() and resume().
*/
+ /// delivers current time count.
+ inline int getTime();
+
private:
/// name of class.
const char* myClass;
@@ -354,6 +354,8 @@ private:
long oldsec;
/// used to calculate time spent in function.
long oldusec;
+ /// aux function to determine clock time elapsed so far.
+ inline void fetchTime();
};
///Module: {\bf raslib}.
@@ -376,7 +378,7 @@ private:
bool doStuff;
};
-
#include "raslib/rmdebug.icc"
+
#endif
diff --git a/raslib/rmdebug.icc b/raslib/rmdebug.icc
index f325c10..91bea8d 100644
--- a/raslib/rmdebug.icc
+++ b/raslib/rmdebug.icc
@@ -64,30 +64,12 @@ RMTimer::pause()
{
if( running )
{
+ fetchTime();
#ifdef __VISUALC__
- // save start time
- oldsec = acttime;
- oldusec = 0; // Windows only counts the seconds (too slow??!!)
-
- // get stop time
- time(&acttime);
-
- // add new time to accu
- accuTime += (acttime-oldsec)*1000000;
-#else
- // save start time
- oldsec = acttime.tv_sec;
- oldusec = acttime.tv_usec;
-
- // get stop time
- gettimeofday(&acttime, &dummy);
-
- // add new time to accu
- accuTime += (acttime.tv_sec-oldsec)*1000000 + acttime.tv_usec - oldusec;
-
// reset acttime.tv_usec which means that no timer is running
acttime.tv_usec = 0;
#endif
+
// timer is not running
running = 0;
}
@@ -112,10 +94,46 @@ RMTimer::stop()
pause();
if(output && RManBenchmark >= bmLevel ) {
- RMInit::bmOut << std::endl
- << "PerformanceTimer: " << myClass << " :: " << myFunc << ": "
- << accuTime << " usecs" << std::endl;
+ RMInit::bmOut
+ << std::endl
+ << "PerformanceTimer: " << myClass << " :: " << myFunc << " = "
+ << accuTime << " usecs" << std::endl;
// set output to FALSE
output = 0;
}
}
+
+inline int
+RMTimer::getTime()
+{
+ fetchTime();
+ return accuTime;
+}
+
+inline void
+RMTimer::fetchTime()
+{
+#ifdef __VISUALC__
+ // save start time
+ oldsec = acttime;
+ oldusec = 0; // Windows only counts the seconds (too slow??!!)
+
+ // get stop time
+ time(&acttime);
+
+ // add new time to accu
+ accuTime += (acttime-oldsec)*1000000;
+#else
+ // save start time
+ oldsec = acttime.tv_sec;
+ oldusec = acttime.tv_usec;
+
+ // get stop time
+ gettimeofday(&acttime, &dummy);
+
+ // add new time to accu
+ accuTime += (acttime.tv_sec-oldsec)*1000000 + acttime.tv_usec - oldusec;
+
+#endif
+}
+
diff --git a/raslib/rminit.hh b/raslib/rminit.hh
index fc1ef9e..df4eecb 100644
--- a/raslib/rminit.hh
+++ b/raslib/rminit.hh
@@ -165,7 +165,7 @@ class RMInit : public RM_Class
// could easily be done in rminit.cc. But the call to the constructor of RMInit
// has to get a flag for client ('C') or server ('S') as a parameter. This has
// be done somewhere else. In that case the constructor may be called before
-// initialization of the streams, the pogram crashes! If all initialisations
+// initialization of the streams, the program crashes! If all initialisations
// are in the same file, the order is defined. That is what this macro is for.
//
// Note: At some point it may be useful to reimplement this mess.
diff --git a/rasmgr/Makefile.am b/rasmgr/Makefile.am
index f4b54e0..120d24f 100644
--- a/rasmgr/Makefile.am
+++ b/rasmgr/Makefile.am
@@ -32,8 +32,10 @@ rasmgr_SOURCES=ras_crypto.cc rasmgr_config.cc rasmgr_host.cc rasmgr_main.cc rasm
ras_crypto.hh rasmgr_config.hh rasmgr_host.hh rasmgr_rascontrol.hh rasmgr_srv.hh \
rasmgr_comm.hh rasmgr_dbm.hh \
rasmgr_users.hh rasmgr_comm_nb.hh rasmgr_error.hh rasmgr_localsrv.hh \
- rasmgr.hh rasmgr_protocol.hh rasmgr_master.hh
-rasmgr_LDADD=../network/libnetwork.a ../commline/libcommline.a
+ rasmgr.hh rasmgr_protocol.hh rasmgr_master.hh \
+ ../mymalloc/mymalloc_cln.cc ../mymalloc/mymalloc.h
+
+rasmgr_LDADD= ../raslib/libraslib.a ../network/libnetwork.a ../commline/libcommline.a
SUBDIRS=../network ../commline
diff --git a/rasmgr/rasmgr_config.cc b/rasmgr/rasmgr_config.cc
index 4919975..24d1130 100644
--- a/rasmgr/rasmgr_config.cc
+++ b/rasmgr/rasmgr_config.cc
@@ -508,57 +508,3 @@ void Configuration::printStatus()
return;
}
-//****************************************************************************************************************
-
-// FIXME: this needs refinement -- PB 2003-jun-09
-BenchmarkTimer::BenchmarkTimer(const char *text)
-{
- this->text = (char*)text;
- time_t now = time(NULL);
- char *n = ctime(&now);
- n[strlen(n)-1] = '\0'; // delete trailing newline char
- // cout << "--- rasmgr timer start for \'" << text << "\' at " << n << "." << endl;
- gettimeofday(&start,NULL);
-}
-
-BenchmarkTimer::~BenchmarkTimer()
-{
-}
-
-void BenchmarkTimer::result()
-{
- timeval result;
- gettimeofday(&end,NULL);
- int r=timeval_subtract(&result,&end,&start);
- time_t now = time(NULL);
- char *n = ctime(&now);
- n[strlen(n)-1] = '\0'; // delete trailing newline char
- VLOG << "rasmgr timer stop for \'" << text << "\' at " << n << ": " << result.tv_sec << '.' << std::setw(3) << std::setfill('0') << result.tv_usec << " seconds elapsed." << endl;
-}
-
-int BenchmarkTimer::timeval_subtract(timeval *result,timeval *x,timeval *y)
-{
-#define ONE_MILLION 1000000
- /* Perform the carry for the later subtraction by updating Y. */
- if (x->tv_usec < y->tv_usec)
- {
- int nsec = (y->tv_usec - x->tv_usec) / ONE_MILLION + 1;
- y->tv_usec -= ONE_MILLION * nsec;
- y->tv_sec += nsec;
- }
- if (x->tv_usec - y->tv_usec > ONE_MILLION)
- {
- int nsec = (x->tv_usec - y->tv_usec) / ONE_MILLION;
- y->tv_usec += ONE_MILLION * nsec;
- y->tv_sec -= nsec;
- }
-
- /* Compute the time remaining to wait.
- `tv_usec' is certainly positive. */
- result->tv_sec = x->tv_sec - y->tv_sec;
- result->tv_usec = x->tv_usec - y->tv_usec;
-
- /* Return 1 if result is negative. */
- return x->tv_sec < y->tv_sec;
-}
-
diff --git a/rasmgr/rasmgr_main.cc b/rasmgr/rasmgr_main.cc
index f9b553a..6280cbf 100644
--- a/rasmgr/rasmgr_main.cc
+++ b/rasmgr/rasmgr_main.cc
@@ -57,10 +57,12 @@ and -DCOMPDATE="\"$(COMPDATE)\"" when compiling
*/
#endif
+#include "raslib/rmdebug.hh"
#define DEBUG_MAIN
#undef DEBUG_HH
#include "debug.hh"
+RMINITGLOBALS('S');
Configuration config;
@@ -163,13 +165,9 @@ int main(int argc, char** argv, char** envp)
try
{
- BenchmarkTimer *totalTimePtr = new BenchmarkTimer("Total master time");
-
TALK( "launching masterCommunicator.Run()..." );
masterCommunicator.Run(); // central request handling loop
TALK( "masterCommunicator.Run() done." );
-
- totalTimePtr->result(); // print total time elapsed
}
catch(RCError& e)
{
diff --git a/rasmgr/rasmgr_master_nb.cc b/rasmgr/rasmgr_master_nb.cc
index 42e1cb4..7cedf72 100644
--- a/rasmgr/rasmgr_master_nb.cc
+++ b/rasmgr/rasmgr_master_nb.cc
@@ -48,6 +48,7 @@ rasdaman GmbH.
using namespace std;
+#include "raslib/rmdebug.hh"
#include "debug.hh"
@@ -96,6 +97,7 @@ MasterComm::~MasterComm()
void MasterComm::Run()
{
ENTER("MasterComm::Run: enter." );
+ RMTIMER( "MasterComm", "Run" ); // benchmark this routine, if enabled
initListenSocket(config.getListenPort()); // connect/bind the central listen socket
// using IOSelector level here!
diff --git a/reladminif/oidifcommon.cc b/reladminif/oidifcommon.cc
index ed75ef3..38c1a05 100644
--- a/reladminif/oidifcommon.cc
+++ b/reladminif/oidifcommon.cc
@@ -43,13 +43,11 @@ rasdaman GmbH.
#include "raslib/rmdebug.hh"
#ifdef RMANBENCHMARK
-RMTimer
-OId::oidAlloc("OId","allocateOId");
+RMTimer OId::oidAlloc("OId","allocateOId");
#endif
#ifdef RMANBENCHMARK
-RMTimer
-OId::oidResolve("OId","resolveOId");
+RMTimer OId::oidResolve("OId","resolveOId");
#endif
double OId::ID_MULTIPLIER = 512;
diff --git a/rnprotocol/rnpservercomm.cc b/rnprotocol/rnpservercomm.cc
index 677cf4e..353552d 100644
--- a/rnprotocol/rnpservercomm.cc
+++ b/rnprotocol/rnpservercomm.cc
@@ -54,7 +54,6 @@ and -DCOMPDATE="\"$(COMPDATE)\"" when compiling
#include "srvrasmgrcomm.hh"
#include "server/rasserver_entry.hh"
-#include "time/akgtime.hh"
#include "debug-srv.hh"
@@ -100,11 +99,10 @@ RnpRasDaManComm::~RnpRasDaManComm() throw()
// we need our implementation because of r_Error, but we will go for the default when r_Error is AkgException
void RnpRasDaManComm::processRequest(CommBuffer *receiverBuffer, CommBuffer *transmiterBuffer, RnpTransport::CarrierProtocol protocol, RnpServerJob *callingJob) throw()
{
+ RMTimer requestTime("RnpRasDaManComm","request");
+
ENTER( "RnpRasDaManComm::processRequest, at " << now() << ", client=" << callingJob->getClientHostAddress().getStringAddress() );
- RMInit::logOut << now() << " request from " << callingJob->getClientHostAddress().getStringAddress() << endl;
-
- BenchmarkTimer bmt("request time");
- bmt.start();
+ RMInit::logOut << endl << now() << " request from " << callingJob->getClientHostAddress().getStringAddress() << endl;
decoder.decode(receiverBuffer);
RnpQuark destServerType = decoder.getDestinationServerType();
@@ -197,9 +195,7 @@ void RnpRasDaManComm::processRequest(CommBuffer *receiverBuffer, CommBuffer *tra
}
encoder.endMessage();
- bmt.stop();
-
- RMInit::logOut << now() << " request completed; " << bmt << endl << endl;
+ RMInit::logOut << now() << " request completed in " << requestTime.getTime() << " usecs." << endl;
LEAVE( "RnpRasDaManComm::processRequest" );
}
diff --git a/server/Makefile.am b/server/Makefile.am
index a1c6ea6..96e98c5 100644
--- a/server/Makefile.am
+++ b/server/Makefile.am
@@ -47,13 +47,13 @@ rasserver_LDADD=../servercomm/libservercomm.a ../qlparser/libqlparser.a ../conve
../relcatalogif/librelcatalogif.a ../indexmgr/libindexmgr.a ../relblobif/librelblobif.a \
../relindexif/librelindexif.a ../httpserver/libhttpserver.a \
../network/libnetwork.a ../commline/libcommline.a \
- ../time/libtime.a ../compression/libcompression.a \
+ ../compression/libcompression.a \
../relcatalogif/librelcatalogif.a ../raslib/libraslib.a
SUBDIRS = ../relblobif ../relindexif ../relmddif ../relcatalogif ../reladminif ../relstorageif \
../indexmgr ../catalogmgr ../tilemgr ../storagemgr ../commline ../network \
../raslib ../servercomm ../rasodmg ../qlparser ../conversion \
- ../mddmgr ../httpserver ../mymalloc ../time
+ ../mddmgr ../httpserver ../mymalloc
$(RECURSIVE_CLEAN_TARGETS):
@$(MAKE) $(AM_MAKEFLAGS) `echo $@ | sed s/-recursive/-am/`
diff --git a/servercomm/servercomm2.cc b/servercomm/servercomm2.cc
index 7c81f1c..416835f 100644
--- a/servercomm/servercomm2.cc
+++ b/servercomm/servercomm2.cc
@@ -29,9 +29,9 @@ rasdaman GmbH.
* PURPOSE:
*
* COMMENTS:
- * - FIXME: catch exceptions in all operations
- * - return values & their meaning see servercomm.hh
- * - FIXME: "client not registered" delivers sometimes 1, sometimes 3
+ * - FIXME: catch exceptions in all operations
+ * - return values & their meaning, see servercomm.hh
+ * - FIXME: "client not registered" delivers sometimes 1, sometimes 3
*
*/
@@ -186,7 +186,7 @@ ServerComm::openDB( unsigned long callingClientId,
unsigned short returnValue=0;
- RMInit::logOut << "Request: openDB '" << dbName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'open DB', name = " << dbName << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -265,7 +265,7 @@ ServerComm::closeDB( unsigned long callingClientId )
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "closeDB" )
unsigned short returnValue;
- RMInit::logOut << "Request: closeDB..." << std::flush;
+ RMInit::logOut << "Request: 'close DB'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -323,7 +323,7 @@ ServerComm::createDB( char* name )
// FIXME: what about client id? -- PB 2005-aug-27
- RMInit::logOut << "Request: createDB '" << name << "'..." << std::flush;
+ RMInit::logOut << "Request: 'create DB', name = " << name << "'..." << std::flush;
DatabaseIf* tempDbIf = new DatabaseIf;
@@ -367,7 +367,7 @@ ServerComm::destroyDB( char* name )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: destroyDB '" << name << "'..." << std::flush;
+ RMInit::logOut << "Request: 'destroy DB', name = " << name << "'..." << std::flush;
DatabaseIf* tempDbIf = new DatabaseIf;
@@ -400,7 +400,7 @@ ServerComm::beginTA( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "beginTA" )
unsigned short returnValue;
- RMInit::logOut << "Request: beginTA (" << ( readOnly ? "read" : "write" ) << ")..." << std::flush;
+ RMInit::logOut << "Request: 'begin TA', mode = " << ( readOnly ? "read" : "write" ) << "..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -422,7 +422,7 @@ ServerComm::beginTA( unsigned long callingClientId,
#ifdef RMANBENCHMARK
if( RManBenchmark > 0 )
- context->taTimer = new RMTimer("ServerComm", "transaction time ");
+ context->taTimer = new RMTimer("ServerComm", "transaction");
#endif
try
{
@@ -461,15 +461,15 @@ ServerComm::commitTA( unsigned long callingClientId )
ClientTblElt* context = getClientContext( callingClientId );
- RMInit::logOut << "Request: commitTA..." << std::flush;
+ RMInit::logOut << "Request: 'commit TA'..." << std::flush;
if( context != 0 )
{
+
#ifdef RMANBENCHMARK
RMTimer* commitTimer = 0;
-
if( RManBenchmark > 0 )
- commitTimer = new RMTimer("ServerComm", "commit time ");
+ commitTimer = new RMTimer("ServerComm", "commit");
#endif
// release transfer collection/iterator within the transaction they are created
@@ -518,7 +518,7 @@ ServerComm::abortTA( unsigned long callingClientId )
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "abortTA" )
unsigned short returnValue;
- RMInit::logOut << "Request: abortTA..." << std::flush;
+ RMInit::logOut << "Request: 'abort TA'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -567,11 +567,11 @@ ServerComm::isTAOpen( unsigned long callingClientId )
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "isTAOpen" )
- RMInit::logOut << "Request: isTAOpen..." << std::flush;
+ RMInit::logOut << "Request: 'is TA open'..." << std::flush;
bool returnValue = transactionActive;
- RMInit::logOut << MSG_OK << (transactionActive?", is active.":", is not active.") << endl;
+ RMInit::logOut << MSG_OK << (transactionActive?"yes.":"no.") << endl;
RMDBGEXIT( 4, RMDebug::module_servercomm, "ServerComm", "isTAOpen" )
return returnValue;
@@ -588,7 +588,7 @@ ServerComm::insertColl( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "insertColl" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: insertColl '" << collName << "' with type '" << typeName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'insert collection', collection name = '" << collName << "', type = '" << typeName << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -663,7 +663,7 @@ ServerComm::deleteCollByName( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "deleteCollByName(" << callingClientId << ", " << collName << ")")
unsigned short returnValue;
- RMInit::logOut << "Request: deleteCollByName '" << collName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'delete collection by name', name = '" << collName << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -715,7 +715,7 @@ ServerComm::deleteObjByOId( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "deleteObjByOId(" << callingClientId << ", " << oid << ")");
unsigned short returnValue;
- RMInit::logOut << "Request: deleteObjByOId " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'delete MDD by OID', oid = '" << oid << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -785,7 +785,7 @@ ServerComm::removeObjFromColl( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "removeObjFromColl(" << callingClientId << ", " << collName << ", " << oid << ")")
unsigned short returnValue;
- RMInit::logOut << "Request: removeObjFromColl '" << collName << "', oid " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'remove MDD from collection', collection name = '" << collName << "', oid = '" << oid << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -881,7 +881,7 @@ ServerComm::insertMDD( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "insertMDD" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: insertMDD type='" << typeName << "' into collection '" << collName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'insert MDD type', type = '" << typeName << "', collection = '" << collName << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
r_Data_Format myDataFmt = r_Array;
@@ -1175,7 +1175,7 @@ ServerComm::insertTileSplitted( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "insertTileSplitted" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: insertTile..." << std::flush;
+ RMInit::logOut << "Request: 'insert tile'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -1230,7 +1230,7 @@ ServerComm::insertTileSplitted( unsigned long callingClientId,
}
else
{
- RMInit::logOut << "Warning: Unsupported data format '" << myCurrentFmt << "', will be ignored..." << std::flush;
+ RMInit::logOut << "Warning: Unsupported data format '" << myCurrentFmt << "', falling back to r_Array..." << std::flush;
myDataFmt = r_Array;
}
tile = new Tile( domain, baseType, dataPtr, getMDDData, myDataFmt );
@@ -1262,7 +1262,7 @@ ServerComm::insertTileSplitted( unsigned long callingClientId,
// Split the tile!
vector< Tile *>* tileSet = tile->splitTile( *tileSize );
- RMInit::dbgOut << "Now inserting splitted tile...";
+ RMInit::dbgOut << "inserting split tile...";
for( vector<Tile*>::iterator iter = tileSet->begin(); iter != tileSet->end(); iter++ )
{
(*iter)->setParameters(context->storageFormatParams);
@@ -1280,7 +1280,7 @@ ServerComm::insertTileSplitted( unsigned long callingClientId,
{
//insert one single tile
// later, we should take into consideration the default server tile-size!
- RMInit::logOut << "Now inserting single tile...";
+ RMInit::logOut << "inserting single tile...";
tile->setParameters(context->storageFormatParams);
if( isPersistent )
context->assembleMDD->insertTile( tile );
@@ -1334,9 +1334,9 @@ ServerComm::startInsertPersMDD( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "startInsertPersMDD" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: startInsertPersMDD type '" << typeName
- << "', collection '" << collName << "', domain " << domain << ", cell length " << typeLength
- << ", " << domain.cell_count()*typeLength << " bytes..." << std::flush;
+ RMInit::logOut << "Request: 'start inserting persistent MDD type', type = '" << typeName
+ << "', collection = '" << collName << "', domain = " << domain << ", cell size = " << typeLength
+ << ", " << domain.cell_count()*typeLength << "..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -1513,7 +1513,7 @@ ServerComm::executeQuery( unsigned long callingClientId,
returnStructure.lineNo = 0;
returnStructure.columnNo = 0;
- RMInit::logOut << "Request: executeQquery '" << query << "'..." << std::flush;
+ RMInit::logOut << "Request: '" << query << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -1526,9 +1526,6 @@ ServerComm::executeQuery( unsigned long callingClientId,
Tile::relTimer.pause();
Tile::opTimer.start();
Tile::opTimer.pause();
-
- if( RManBenchmark > 0 )
- RMInit::bmOut << "Query: " << query << std::endl;
#endif
#ifdef PURIFY
@@ -1544,7 +1541,7 @@ ServerComm::executeQuery( unsigned long callingClientId,
#ifdef RMANBENCHMARK
if( RManBenchmark > 0 )
- queryOptimizationTimer = new RMTimer("ServerComm", "optimization time");
+ queryOptimizationTimer = new RMTimer("ServerComm", "optimization");
#endif
@@ -1614,7 +1611,7 @@ ServerComm::executeQuery( unsigned long callingClientId,
}
if( RManBenchmark > 0 )
- context->evaluationTimer = new RMTimer("ServerComm", "evaluation time ");
+ context->evaluationTimer = new RMTimer("ServerComm", "evaluation");
#endif
qtree->printTree( 2, std::cout );
//qtree->checkSemantics();
@@ -1821,7 +1818,7 @@ ServerComm::executeQuery( unsigned long callingClientId,
context->evaluationTimer->pause();
if( RManBenchmark > 0 )
- context->transferTimer = new RMTimer("ServerComm", "transfer time ");
+ context->transferTimer = new RMTimer("ServerComm", "transfer");
#endif
// In case of an error or the result set is empty, no endTransfer()
@@ -1830,7 +1827,6 @@ ServerComm::executeQuery( unsigned long callingClientId,
if( returnValue >= 2)
{
#ifdef RMANBENCHMARK
- Tile::o2Timer.stop();
Tile::opTimer.stop();
Tile::relTimer.stop();
Tile::opTimer.stop();
@@ -1845,7 +1841,7 @@ ServerComm::executeQuery( unsigned long callingClientId,
RMTimer* releaseTimer = 0;
if( RManBenchmark > 0 )
- releaseTimer = new RMTimer("ServerComm", "release time ");
+ releaseTimer = new RMTimer("ServerComm", "release");
#endif
// release transfer collection/iterator
@@ -1876,7 +1872,7 @@ ServerComm::initExecuteUpdate( unsigned long callingClientId )
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "initExecuteUpdate" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: initExecuteUpdate..." << std::flush;
+ RMInit::logOut << "Request: 'initialize update'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -1918,7 +1914,7 @@ ServerComm::startInsertTransMDD( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "startInsertTransMDD" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: startInsertTransMDD type '"
+ RMInit::logOut << "Request: 'insert MDD', type '"
<< typeName <<"', domain " << domain << ", cell length " << typeLength << ", "
<< domain.cell_count()*typeLength << " bytes..." << std::flush;
@@ -1987,7 +1983,7 @@ ServerComm::endInsertMDD( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "endInsertMDD" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: endInsertMDD..." << std::flush;
+ RMInit::logOut << "Request: 'end insert MDD'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -2041,7 +2037,7 @@ ServerComm::executeUpdate( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "executeUpdate" )
- RMInit::logOut << "Request: executeUpdate query '" << query << "'..." << std::flush;
+ RMInit::logOut << "Request: '" << query << "'..." << std::flush;
#ifdef RMANBENCHMARK
RMTimer* queryOptimizationTimer = 0;
@@ -2049,9 +2045,6 @@ ServerComm::executeUpdate( unsigned long callingClientId,
Tile::relTimer.pause();
Tile::opTimer.start();
Tile::opTimer.pause();
-
- if( RManBenchmark > 0 )
- RMInit::bmOut << "Query (update): " << query << std::endl;
#endif
unsigned short returnValue = 0;
@@ -2070,7 +2063,7 @@ ServerComm::executeUpdate( unsigned long callingClientId,
#ifdef RMANBENCHMARK
if( RManBenchmark > 0 )
- queryOptimizationTimer = new RMTimer("ServerComm", "optimization time");
+ queryOptimizationTimer = new RMTimer("ServerComm", "optimization");
#endif
QueryTree* qtree = new QueryTree(); // create a query tree object...
@@ -2143,7 +2136,7 @@ ServerComm::executeUpdate( unsigned long callingClientId,
}
if( RManBenchmark > 0 )
- context->evaluationTimer = new RMTimer("ServerComm", "evaluation time ");
+ context->evaluationTimer = new RMTimer("ServerComm", "evaluation");
#endif
RMInit::logOut << "evaluating..." << std::flush;
@@ -2262,7 +2255,7 @@ ServerComm::getCollByName( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "ServerComm::getCollByName" )
- RMInit::logOut << "Request: getCollByName '" << collName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'get collection by name', name = " << collName << "'..." << std::flush;
unsigned short returnValue=0;
@@ -2372,7 +2365,7 @@ ServerComm::getCollByOId( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", " ServerComm::getCollByOId" )
- RMInit::logOut << "Request: getCollByOId " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'get collection by OID', oid = " << oid << "..." << std::flush;
unsigned short returnValue=0;
@@ -2501,7 +2494,7 @@ ServerComm::getCollOIdsByName( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getCollOIdsByName" )
- RMInit::logOut << "Request: getCollOIdsByName '" << collName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'get collection OIds by name', name = " << collName << "'..." << std::flush;
unsigned short returnValue=0;
@@ -2646,7 +2639,7 @@ ServerComm::getCollOIdsByOId( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getCollOIdsByOId" )
- RMInit::logOut << "Request: getCollOIdsByOId " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'get collection OIDs by OId', oid = " << oid << "..." << std::flush;
unsigned short returnValue=0;
@@ -2792,7 +2785,7 @@ ServerComm::getNextMDD( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getNextMDD" )
- RMInit::logOut << "Request: getNextMDD..." << std::flush;
+ RMInit::logOut << "Request (continuing): 'get next MDD'..." << std::flush;
unsigned short returnValue = 0;
@@ -3004,7 +2997,7 @@ ServerComm::getNextElement( unsigned long callingClientId,
{
RMDBGENTER(1, RMDebug::module_servercomm, "ServerComm", "getNextElement(...)")
- RMInit::logOut << "Request: getNextElement..." << std::flush;
+ RMInit::logOut << "Request (continuing): 'get next element'..." << std::flush;
unsigned short returnValue = 0;
@@ -3209,7 +3202,7 @@ ServerComm::getMDDByOId( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getMDDByOId" )
- RMInit::logOut << "Request: getMDDByOId with oid " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'get MDD by OId', oid = " << oid << "..." << std::flush;
unsigned short returnValue = 0;
@@ -3354,7 +3347,7 @@ ServerComm::getNextTile( unsigned long callingClientId,
{
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getNextTile" )
- RMInit::logOut << "Request: getNextTile..." << std::flush;
+ RMInit::logOut << "Request (continuing): 'get next tile',..." << std::flush;
unsigned long transOffset = 0;
unsigned long transSize = 0;
@@ -3618,7 +3611,7 @@ ServerComm::endTransfer( unsigned long client )
RMTimer* releaseTimer = 0;
if( RManBenchmark > 0 )
- releaseTimer = new RMTimer("ServerComm", "release time ");
+ releaseTimer = new RMTimer("ServerComm", "release");
#endif
// release transfer collection/iterator
context->releaseTransferStructures();
@@ -3684,8 +3677,7 @@ ServerComm::getNewOId( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getNewOId" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: getNewOId of type "
- << (objType==1?"MDD":"collection") << "..." << std::flush;
+ RMInit::logOut << "Request: 'get new OId for " << (objType==1?"MDD":"collection") << " type'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -3725,7 +3717,7 @@ ServerComm::getObjectType( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getObjectType" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: getObjectType by oid " << oid << "..." << std::flush;
+ RMInit::logOut << "Request: 'get object type by OID', oid = " << oid << "..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
@@ -3769,7 +3761,7 @@ ServerComm::getTypeStructure( unsigned long callingClientId,
RMDBGENTER( 4, RMDebug::module_servercomm, "ServerComm", "getTypeStructure" )
unsigned short returnValue = 0;
- RMInit::logOut << "Request: getTypeStructure of type '" << typeName << "'..." << std::flush;
+ RMInit::logOut << "Request: 'get type structure', type = '" << typeName << "'..." << std::flush;
ClientTblElt* context = getClientContext( callingClientId );
if (context == 0)
@@ -3831,7 +3823,7 @@ ServerComm::setTransferMode( unsigned long callingClientId,
{
RMDBGENTER(4, RMDebug::module_servercomm, "ServerComm", "setTransferMode(" << callingClientId << ", " << format << ", " << formatParams)
- RMInit::logOut << "Request: setTransferMode..." << std::flush;
+ RMInit::logOut << "Request: 'set transfer mode', format = '" << format << "', params = '" << formatParams << "'..." << std::flush;
unsigned short retval = 1;
@@ -3888,7 +3880,7 @@ ServerComm::setStorageMode( unsigned long callingClientId,
{
RMDBGENTER(4, RMDebug::module_servercomm, "ServerComm", "setStorageMode(" << callingClientId << ", " << format << ", " << formatParams)
- RMInit::logOut << "Request: setStorageMode..." << std::flush;
+ RMInit::logOut << "Request: 'set storage mode', format = " << format << ", params = " << formatParams << "..." << std::flush;
unsigned short retval = 1;
diff --git a/tilemgr/tile.cc b/tilemgr/tile.cc
index ee2527b..9eddc6f 100644
--- a/tilemgr/tile.cc
+++ b/tilemgr/tile.cc
@@ -56,10 +56,9 @@ static const char rcsid[] = "@(#)cachetamgr,Tile: $Id: tile.cc,v 1.79 2005/09/03
#ifdef RMANBENCHMARK
RMTimer Tile::opTimer("Tile","opTimer");
RMTimer Tile::relTimer("Tile","relTimer");
-RMTimer Tile::o2Timer("Tile","o2Timer");
+// RMTimer Tile::o2Timer("Tile","o2Timer");
#endif
-
const Tile&
Tile::operator=(const Tile& tile)
{
diff --git a/tilemgr/tile.hh b/tilemgr/tile.hh
index 79fd94a..05cd2cc 100644
--- a/tilemgr/tile.hh
+++ b/tilemgr/tile.hh
@@ -49,7 +49,7 @@ rasdaman GmbH.
#include "reladminif/dbref.hh"
#ifdef RMANBENCHMARK
-#include "raslib/rmdebug.hh" // for RMTimer
+#include "raslib/rmdebug.hh" // for RMTimer
#endif
class KeyObject;
class PersMDDObjIx;
@@ -368,11 +368,10 @@ class Tile
*/
#ifdef RMANBENCHMARK
- // RMTimer for taking O2 times. Could be protected. Is controlled
- // in servercomm/servercomm2.cc.
- static RMTimer opTimer;
- static RMTimer relTimer;
- static RMTimer o2Timer;
+ // RMTimer for taking O2 times. Could be protected. Is controlled
+ // in servercomm/servercomm2.cc.
+ static RMTimer opTimer;
+ static RMTimer relTimer;
#endif
protected:
diff --git a/time/Makefile.in b/time/Makefile.in
index 2219251..c3e8a2c 100644
--- a/time/Makefile.in
+++ b/time/Makefile.in
@@ -1,8 +1,9 @@
-# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
+# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
@@ -45,8 +46,9 @@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
@@ -72,14 +74,29 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
*) f=$$p;; \
esac;
-am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(libdir)"
-libLIBRARIES_INSTALL = $(INSTALL_DATA)
LIBRARIES = $(lib_LIBRARIES)
AR = ar
ARFLAGS = cru
@@ -90,6 +107,7 @@ libtime_a_OBJECTS = $(am_libtime_a_OBJECTS)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
+am__mv = mv -f
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
CXXLD = $(CXX)
@@ -147,6 +165,7 @@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+JAR_TOOL = @JAR_TOOL@
JAVA_CC = @JAVA_CC@
JAVA_CC_FLAGS = @JAVA_CC_FLAGS@
JAVA_CC_OPTS = @JAVA_CC_OPTS@
@@ -170,6 +189,7 @@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PG_CONFIG = @PG_CONFIG@
@@ -231,6 +251,7 @@ sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
lib_LIBRARIES = libtime.a
@@ -243,14 +264,14 @@ $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu time/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --gnu time/Makefile
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu time/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --gnu time/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
@@ -268,32 +289,36 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
install-libLIBRARIES: $(lib_LIBRARIES)
@$(NORMAL_INSTALL)
test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ list2=; for p in $$list; do \
if test -f $$p; then \
- f=$(am__strip_dir) \
- echo " $(libLIBRARIES_INSTALL) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \
- $(libLIBRARIES_INSTALL) "$$p" "$(DESTDIR)$(libdir)/$$f"; \
+ list2="$$list2 $$p"; \
else :; fi; \
- done
+ done; \
+ test -z "$$list2" || { \
+ echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \
+ $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; }
@$(POST_INSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ for p in $$list; do \
if test -f $$p; then \
- p=$(am__strip_dir) \
- echo " $(RANLIB) '$(DESTDIR)$(libdir)/$$p'"; \
- $(RANLIB) "$(DESTDIR)$(libdir)/$$p"; \
+ $(am__strip_dir) \
+ echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \
+ ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \
else :; fi; \
done
uninstall-libLIBRARIES:
@$(NORMAL_UNINSTALL)
- @list='$(lib_LIBRARIES)'; for p in $$list; do \
- p=$(am__strip_dir) \
- echo " rm -f '$(DESTDIR)$(libdir)/$$p'"; \
- rm -f "$(DESTDIR)$(libdir)/$$p"; \
- done
+ @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \
+ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+ test -n "$$files" || exit 0; \
+ echo " ( cd '$(DESTDIR)$(libdir)' && rm -f "$$files" )"; \
+ cd "$(DESTDIR)$(libdir)" && rm -f $$files
clean-libLIBRARIES:
-test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES)
@@ -313,14 +338,14 @@ distclean-compile:
.cc.o:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
-@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
.cc.obj:
@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'`
-@am__fastdepCXX_TRUE@ mv -f $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
+@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
@@ -330,14 +355,14 @@ ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
- $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
+ set x; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
@@ -345,29 +370,34 @@ TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
- if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ shift; \
+ if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
+ if test $$# -gt 0; then \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ "$$@" $$unique; \
+ else \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$unique; \
+ fi; \
fi
ctags: CTAGS
CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
- tags=; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) '{ files[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in files) print i; }; }'`; \
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
+ $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
+ && $(am__cd) $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) "$$here"
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
@@ -388,13 +418,17 @@ distdir: $(DISTFILES)
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
- cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
- cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
- test -f $(distdir)/$$file \
- || cp -p $$d/$$file $(distdir)/$$file \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
@@ -425,6 +459,7 @@ clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@@ -445,6 +480,8 @@ dvi-am:
html: html-am
+html-am:
+
info: info-am
info-am:
@@ -453,18 +490,28 @@ install-data-am:
install-dvi: install-dvi-am
+install-dvi-am:
+
install-exec-am: install-libLIBRARIES
install-html: install-html-am
+install-html-am:
+
install-info: install-info-am
+install-info-am:
+
install-man:
install-pdf: install-pdf-am
+install-pdf-am:
+
install-ps: install-ps-am
+install-ps-am:
+
installcheck-am:
maintainer-clean: maintainer-clean-am
@@ -501,6 +548,7 @@ uninstall-am: uninstall-libLIBRARIES
mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
uninstall-am uninstall-libLIBRARIES
+
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/time/akg_benchmark.cc b/time/akg_benchmark.cc
deleted file mode 100644
index 6bb0c8d..0000000
--- a/time/akg_benchmark.cc
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
-* This file is part of rasdaman community.
-*
-* Rasdaman community is free software: you can redistribute it and/or modify
-* it under the terms of the GNU General Public License as published by
-* the Free Software Foundation, either version 3 of the License, or
-* (at your option) any later version.
-*
-* Rasdaman community is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU General Public License for more details.
-*
-* You should have received a copy of the GNU General Public License
-* along with rasdaman community. If not, see <http://www.gnu.org/licenses/>.
-*
-* Copyright 2003, 2004, 2005, 2006, 2007, 2008, 2009 Peter Baumann /
-rasdaman GmbH.
-*
-* For more information please see <http://www.rasdaman.org>
-* or contact Peter Baumann via <baumann@rasdaman.com>.
-*/
-
-/*************************************************************************
- *
- *
- * PURPOSE:
- *
- *
- *
- * COMMENTS:
- * none
- *
- ***********************************************************************/
-
-#include "akgtime.hh"
-#include<iomanip>
-
-using namespace akg;
-
-
-BenchmarkTimer::BenchmarkTimer(const char *lText, bool highPrecision) throw()
- {
- text = (char*)lText;
-
- precHigh = highPrecision;
- }
-BenchmarkTimer::~BenchmarkTimer() throw()
- {
- }
-
-void BenchmarkTimer::reset() throw()
- {
- tvStart.tv_sec = 0;
- tvStart.tv_usec = 0;
- tvEnd.tv_sec = 0;
- tvEnd.tv_usec = 0;
- }
-
-void BenchmarkTimer::start() throw()
- {
- gettimeofday(&tvStart,NULL);
- }
-
-void BenchmarkTimer::stop() throw()
- {
- gettimeofday(&tvEnd,NULL);
- timeval_subtract(&tvResult,&tvEnd,&tvStart);
- }
-
-void BenchmarkTimer::setPrecision(bool high) throw()
- {
- precHigh = high;
- }
-
-bool BenchmarkTimer::getPrecision() const throw()
- {
- return precHigh;
- }
-
-int BenchmarkTimer::timeval_subtract(timeval *lResult,timeval *x,timeval *y) throw()
- {
- /* Perform the carry for the later subtraction by updating Y. */
- if (x->tv_usec < y->tv_usec) {
- int nsec = (y->tv_usec - x->tv_usec) / 1000000 + 1;
- y->tv_usec -= 1000000 * nsec;
- y->tv_sec += nsec;
- }
- if (x->tv_usec - y->tv_usec > 1000000) {
- int nsec = (x->tv_usec - y->tv_usec) / 1000000;
- y->tv_usec += 1000000 * nsec;
- y->tv_sec -= nsec;
- }
-
- /* Compute the time remaining to wait.
- `tv_usec' is certainly positive. */
- lResult->tv_sec = x->tv_sec - y->tv_sec;
- lResult->tv_usec = (x->tv_usec - y->tv_usec);
-
- /* Return 1 if result is negative. */
- return x->tv_sec < y->tv_sec;
- }
-
-
-std::ostream& akg::operator<<(std::ostream &os, BenchmarkTimer &bm)
- {
- if(bm.precHigh == true)
- {
- unsigned int msec = bm.tvResult.tv_sec*1000 + bm.tvResult.tv_usec / 1000;
- unsigned int usec = bm.tvResult.tv_usec % 1000;
-
- os<<bm.text<<"="<<msec<<'.'<<std::setfill('0')<<std::setw(3)<<usec<<"ms";
- }
- else
- {
- unsigned int msec = bm.tvResult.tv_usec / 1000;
- unsigned int sec = bm.tvResult.tv_sec;
-
- os<<bm.text<<"="<<sec<<'.'<<std::setfill('0')<<std::setw(3)<<msec<<"s";
- }
- return os;
- }
-