[brlcad-commits] CVS: rtcmp Makefile.am,1.1,1.2 rtcmp.c,1.3,1.4
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: Erik G. <eri...@us...> - 2007-03-15 16:54:24
|
Update of /cvsroot/brlcad/rtcmp In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv29554 Modified Files: Makefile.am rtcmp.c Log Message: Add a 'dry run' engine to measure overhead and "warm up" the partition manager. Should abate worries about function call overhead. Index: Makefile.am =================================================================== RCS file: /cvsroot/brlcad/rtcmp/Makefile.am,v retrieving revision 1.1 retrieving revision 1.2 diff -w -u -r1.1 -r1.2 --- Makefile.am 15 Feb 2007 15:19:23 -0000 1.1 +++ Makefile.am 15 Mar 2007 16:54:06 -0000 1.2 @@ -1,8 +1,8 @@ # $Id$ bin_PROGRAMS=rtcmp -rtcmp_SOURCES=rtcmp.c partm.c perfcomp.c rt/rt.c adrt/adrt.c rayforce/rayforce.c -noinst_HEADERS=rtcmp.h perfcomp.h adrt/adrt.h rt/rt.h rayforce/rayforce.h +rtcmp_SOURCES=rtcmp.c partm.c perfcomp.c dry/dry.c rt/rt.c adrt/adrt.c rayforce/rayforce.c +noinst_HEADERS=rtcmp.h perfcomp.h adrt/adrt.h dry/dry.h rt/rt.h rayforce/rayforce.h test: rtcmp ./rtcmp -a -b -r -s /usr/brlcad/share/brlcad/7.?.0/db/ktank.g tank computer g17 engine Index: rtcmp.c =================================================================== RCS file: /cvsroot/brlcad/rtcmp/rtcmp.c,v retrieving revision 1.3 retrieving revision 1.4 diff -w -u -r1.3 -r1.4 --- rtcmp.c 23 Feb 2007 21:56:09 -0000 1.3 +++ rtcmp.c 15 Mar 2007 16:54:06 -0000 1.4 @@ -30,6 +30,7 @@ # include "rayforce/rayforce.h" #endif +#include "dry/dry.h" #include "rt/rt.h" #undef PARALLEL /* brlcad defines this, but I want my own */ @@ -40,6 +41,7 @@ #define ADRT 0x04 #define BRLCAD 0x08 #define RAYFORCE 0x10 +#define DRY 0x20 /* oh the horror */ void doversion(char *name) @@ -70,9 +72,9 @@ int main(int argc, char **argv) { - int c, mode = 0, nthreads = 0, nproc = 0; + int c, mode = DRY, nthreads = 0, nproc = 0; char *pname = *argv; - struct retpack_s *rt_retpack = NULL, *adrt_retpack = NULL, *rayforce_retpack = NULL; + struct retpack_s *dry_retpack = NULL, *rt_retpack = NULL, *adrt_retpack = NULL, *rayforce_retpack = NULL; while( (c = getopt( argc, argv, "abd:hp:rsv")) != -1 ){ switch(c) @@ -114,6 +116,7 @@ #define TRY(flag,prefix) if(mode&flag) prefix##_retpack = perfcomp(#prefix, argc, argv, nthreads, nproc, prefix##_constructor, prefix##_getbox, prefix##_getsize, prefix##_shoot, prefix##_destructor) + TRY(DRY,dry); TRY(BRLCAD,rt); #ifdef HAVE_TIE @@ -130,6 +133,7 @@ #undef TRY #define SHOW(prefix) if(prefix##_retpack) printf(#prefix"\t: %f seconds (%f cpu) %f wrps %f crps\n", prefix##_retpack->t, prefix##_retpack->c, (double)NUMRAYS/prefix##_retpack->t, (double)NUMRAYS/prefix##_retpack->c) + SHOW(dry); SHOW(rt); SHOW(adrt); SHOW(rayforce); |