Compiletime Vs Runtime bencmarks
D_Learner via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Aug 17 07:43:33 PDT 2015
Hello everyone . I need advice on my first D-project . I have
uploaded it at :-
https://bitbucket.org/mrjohns/matcher/downloads
IDEA : Benchmarking of 3 runtime algorithms and comparing them to
their compile-time variants. The only difference between these is
that for the compile time-ones, the lookup tables (i.e. Arrays
bmBc, bmGs, and suffixes ) must be computed at compile time( I
currently rely on CTFE ) . While for the runtime-ones the lookup
tables are computed on runtime.
NB : The pattern matching algorithms themselves need not be
executed at compile-time, only the lookup tables.Having stated
this the algorithms which run on known( compile-time computed)
tables must be faster than the ones which have to compute them at
runtime.
My results seem to show something different, only the first
pair(
BM_Runtime and BM_Compile-time) yields admissible results, the
other two pair give higher execution time for the compile-time
variants. I think am missing something here. Please help.
Current Results for the pattern="GCAGAGAG" are as below :-
BM_Runtime = 366 hnsecs position= 513
BM_Compile-time = 294 hnsecs position =513
BMH_Runtime = 174 hnsecs position= 513
BMH_Compile-time = 261 hnsecs position= 513
AG_Run-time = 258 hnsecs position= 513
AG_Compile-time = 268 hnsecs position= 513
Running the code : dmd -J. matcher.d inputs.d rtime_pre.d
ctime_pre.d && numactl --physcpubind=0 ./matcher
I would appreciate your suggestions.
Regards,
More information about the Digitalmars-d-learn
mailing list