Skip to content

Commit a63dca2

Browse files
committed
Move saving of f-est to be after failure logic
So we don't save f-est values for failed steps
1 parent d98651e commit a63dca2

File tree

2 files changed

+18
-18
lines changed

2 files changed

+18
-18
lines changed

src/Genten_GCP_FedOpt.hpp

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -495,14 +495,6 @@ operator() (const Loss& loss) {
495495
}
496496
*/
497497

498-
{
499-
history_.addEmpty();
500-
auto& p = history_.lastEntry();
501-
p.iteration = e+1;
502-
p.residual = fest;
503-
p.cum_time = t1 - start_time;
504-
}
505-
506498
if (passed_epoch) {
507499
stepper->setPassed();
508500
meta_stepper->setPassed();
@@ -522,6 +514,14 @@ operator() (const Loss& loss) {
522514
++nfails;
523515
}
524516

517+
{
518+
history_.addEmpty();
519+
auto& p = history_.lastEntry();
520+
p.iteration = e+1;
521+
p.residual = fest;
522+
p.cum_time = t1 - start_time;
523+
}
524+
525525
if (nfails > max_fails || fest < tol*fest_init)
526526
break;
527527
}

src/Genten_GCP_SGD.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -352,16 +352,6 @@ namespace Genten {
352352
out << std::endl;
353353
}
354354

355-
{
356-
perfInfo.addEmpty();
357-
auto& p = perfInfo.lastEntry();
358-
p.iteration = numEpochs+1;
359-
p.residual = fest;
360-
if (compute_fit)
361-
p.fit = fit;
362-
p.cum_time = timer.getTotalTime(timer_sgd);
363-
}
364-
365355
if (failed_epoch) {
366356
// restart from last epoch
367357
u.set(u_prev);
@@ -379,6 +369,16 @@ namespace Genten {
379369
annealer->success();
380370
}
381371

372+
{
373+
perfInfo.addEmpty();
374+
auto& p = perfInfo.lastEntry();
375+
p.iteration = numEpochs+1;
376+
p.residual = fest;
377+
if (compute_fit)
378+
p.fit = fit;
379+
p.cum_time = timer.getTotalTime(timer_sgd);
380+
}
381+
382382
if (nfails > max_fails || fest < tol)
383383
break;
384384
}

0 commit comments

Comments
 (0)