occam-ra / occam

OCCAM Reconstructability Analysis Tools
Other
20 stars 14 forks source link

Initial chi squared testing and probable future replacement of "quick approximation" csa function #69

Closed bowertree closed 2 months ago

bowertree commented 2 months ago

The current implementation of chi squared self-describes as a "quick approximation." On evaluation it meets its description for accuracy, but this is less accurate than libboost by factors that could be significant (> 0.001 at df=4 and 5 and > 0.0006 at df=2). For performance, at x=1.5 and DF=2 the occam implementation is always 8-10x and frequently 100x slower on recent intel arch. Total runs summed over test cases for df=1 to df=10, libboost is always around twice as fast, and frequently 10x faster.

This does not yet replace the built-in csa function with csa_boost, but provides the potential replacement code and creates a test case (which the current csa function fails, using the libboost library csa function as the standard of accuracy).

BartMassey commented 2 months ago

Note that this change requires libboost-math-dev to be present on the installation machine to build.

I've PR-ed #70 to clean a bunch of the install docs up. I now notice that @Gooseus also has a PR along these lines. Hopefully you'd be willing to take a look at these and do some kind of sensible merge.

Thanks much!

bowertree commented 2 months ago

Thanks, good point. I will add libboost to the Dockerfile and docs. I should be able to get the docs cleanup merged — I wasn’t sure the relevance of it after so much time but sounds like it is still beneficial.

On Sat, May 25, 2024 at 1:09 AM, Bart Massey @.***(mailto:On Sat, May 25, 2024 at 1:09 AM, Bart Massey < wrote:

Note that this change requires libboost-math-dev to be present on the installation machine to build.

I've PR-ed #70 to clean a bunch of the install docs up. I now notice that @.***(https://github.com/Gooseus) also has a PR along these lines. Hopefully you'd be willing to take a look at these and do some kind of sensible merge.

Thanks much!

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.***>

BartMassey commented 2 months ago

Dammit. Just noticed the podman directory that has just been introduced. Sigh.

Go ahead and do what you want with the PRs that are up. Then I'll fix up podman/INSTALL.md and add a note to the top-level INSTALL.md that this is now the preferred way to install OCCAM web.

Wish I'd noticed this five hours ago. :grimacing:

bowertree commented 2 months ago

Sorry. If you’re able to support it, I can ask you to review PRs and then this might be less likely to happen. I was assuming given my spotty availability and the general state of things I’d be better off just making headway on my own, but I'd be grateful for the reviews.

On Sat, May 25, 2024 at 9:56 AM, Bart Massey @.***(mailto:On Sat, May 25, 2024 at 9:56 AM, Bart Massey < wrote:

Dammit. Just noticed the podman directory that has just been introduced. Sigh.

Go ahead and do what you want with the PRs that are up. Then I'll fix up podman/INSTALL.md and add a note to the top-level INSTALL.md that this is now the preferred way to install OCCAM web.

Wish I'd noticed this five hours ago. 😬

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you modified the open/close state.Message ID: @.***>

BartMassey commented 2 months ago

Oh, that was no critique of you! Please do just go ahead as you like, although if you do want PR reviews I'm happy to do that. I'm just kicking myself for not looking more carefully.