Opened 7 years ago
Last modified 7 years ago
#772 new optimization
optimize PVP for speed
Reported by: | westram | Owned by: | devel |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | ARB_NTREE | Version: | SVN |
Keywords: | posvar, pvp | Cc: |
Description (last modified by westram)
Calculation of POS_VAR_BY_PARSIMONY SAI could be optimized similar to parsimony-combine optimization done by [12975] (and preceeding changesets).
Profiling PVP calculation for LTP database showed the following hotspots (in % of overall time; NDEBUG build):
- ~39% spent in "combine"-section
- ~47% spent in "leaf"-section
Together that is 88% of runtime.
94% of runtime spent for whole PVP calculation (AP_calc_pos_var_pars).
A factor 2-4x speed-up may be expected for vectorization
⇒ possible overall speed-up: 1.8x-3.2x
Optimizations to perform:
- reuse passed down memory (i.e. only allocate memory for one recursion, use passed-in-mem for other recursion)
- assert memory is passed down from caller (⇒ remove conditionals)
- optimize code for vectorization
Change History (2)
comment:1 Changed 7 years ago by westram
- Keywords posvar pvp added
comment:2 Changed 7 years ago by westram
- Description modified (diff)
Note: See
TracTickets for help on using
tickets.