diff options
author | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-12 03:42:39 +0000 |
---|---|---|
committer | graehl <graehl@ec762483-ff6d-05da-a07a-a48fb63a330f> | 2010-07-12 03:42:39 +0000 |
commit | 11980f43455a85f31f2941f570f9a3a1ff925408 (patch) | |
tree | 63da64240f578906162c9941ccdbfea40304d497 /decoder/apply_models.cc | |
parent | 35da16a3177f94fcff97c319344ced8407b69ffb (diff) |
inebriated, but sped up inside/outside pruning and made cube poplimit scale with promise of nodes from previous global pruning, if --promise_power=N for N>0.
git-svn-id: https://ws10smt.googlecode.com/svn/trunk@219 ec762483-ff6d-05da-a07a-a48fb63a330f
Diffstat (limited to 'decoder/apply_models.cc')
-rw-r--r-- | decoder/apply_models.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/decoder/apply_models.cc b/decoder/apply_models.cc index 78f37e68..4093f667 100644 --- a/decoder/apply_models.cc +++ b/decoder/apply_models.cc @@ -254,7 +254,8 @@ public: make_heap(cand.begin(), cand.end(), HeapCandCompare()); State2Node state2node; // "buf" in Figure 2 int pops = 0; - while(!cand.empty() && pops < pop_limit_) { + int pop_limit_eff=max(1,int(v.promise*pop_limit_)); + while(!cand.empty() && pops < pop_limit_eff) { pop_heap(cand.begin(), cand.end(), HeapCandCompare()); Candidate* item = cand.back(); cand.pop_back(); |