Skip to content
This repository was archived by the owner on Jun 14, 2023. It is now read-only.
This repository was archived by the owner on Jun 14, 2023. It is now read-only.

Benchmarks vs MS_HMMBase & question about messages_backwards_log #11

@mmattocks

Description

@mmattocks

Just finished benchmarking what I hope is the final commit of MS_HMMBase, where I attempted to add multiple observations to the mle_step function and subfunctions, without compromising performance too much. Here are the results from running https://github.com/mmattocks/MS_HMMBase.jl/blob/master/test/benchmarks.jl:

[ Info: Judging log_likelihoods
BenchmarkTools.TrialJudgement: 
  time:   +14.47% => regression (5.00% tolerance) 
  memory: -19.52% => improvement (1.00% tolerance)

[ Info: Judging messages_forwards_log
BenchmarkTools.TrialJudgement: 
  time:   +1.04% => invariant (5.00% tolerance)
  memory: +0.01% => invariant (1.00% tolerance)

[ Info: Judging messages_backwards_log
BenchmarkTools.TrialJudgement: 
  time:   +1.35% => invariant (5.00% tolerance) 
  memory: +6.46% => regression (1.00% tolerance)

[ Info: Judging mle_step
BenchmarkTools.TrialJudgement: 
  time:   -61.12% => improvement (5.00% tolerance)
  memory: -29.02% => improvement (1.00% tolerance)

If you find any useful lines for HMMBase, please feel free to integrate them, obviously!

Also, if you have time, could you explain how messages_backwards_log works? It seems the views and the temp variable really make this much faster than simpler constructions might suggest- I haven't had much luck with views improving speed in other functions. Thanks very much for your time Max!!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions