Skip to content

Conditions of Simple Interval Root-finding problem aren't fair #810

Open
@ivan-pi

Description

@ivan-pi

Describe the bug 🐞

The results of the Simple Interval Rootfinding benchmark claim a 33x speed-up compared to the MATLAB solver, however the conditions of the benchmark were not the same.

The main differences are:

  • MATLAB is using a modified Dekker's algorithm, whereas the fast Julia result was using the Newton-Raphson method (that uses the derivative information)
  • The default termination conditions of MATLAB and NonlinearSolve.jl are different.
  • The Julia result was obtained on newer hardware
  • The operating system was different

Expected behavior

The benchmarks should be "optimal, fair, and reproducible". This one fails in the "fair" comparison category.

When I run the MATLAB code on an Intel i7-11700K @3.60GHz (Rocketlake), the elapsed time is ~0.12 s or roughly the same as using the NonlinearSolve.jl bisection method. (Caveat - the hardware is different.)

Additional context

The benchmark was presented at JuliaCon 2023 (see https://youtu.be/O-2F8fBuRRg?si=GF24GyZEBek0Yi-Y&t=1022) with a claim of an additional 5-fold speed-up or a time of under 0.01 s. An un-merged pull request is mentioned in the video, but I was not able to locate it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions