-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Description
Dear ocamlfind
devs,
I've noticed a large (super-linear) performance degradation of Fl_dynload.load_packages
in large OCaml switches, for example, using a bare-bones opam swtich for coq-lsp
, we have:
Fl_dynload.load_packages: coq-lsp.serlib.ltac , 0.028070 ms
Fl_dynload.load_packages: coq-lsp.serlib.number_string_notation , 0.025253 ms
Fl_dynload.load_packages: coq-lsp.serlib.tauto , 0.025031 ms
Fl_dynload.load_packages: coq-lsp.serlib.cc_core , 0.025120 ms
Fl_dynload.load_packages: coq-lsp.serlib.cc , 0.024681 ms
Fl_dynload.load_packages: coq-lsp.serlib.firstorder_core , 0.025205 ms
Fl_dynload.load_packages: coq-lsp.serlib.firstorder , 0.025410 ms
if I do opam install memtrace_viewer
, I get:
Fl_dynload.load_packages: coq-lsp.serlib.ltac , 0.554432 ms
Fl_dynload.load_packages: coq-lsp.serlib.number_string_notation , 0.567631 ms
Fl_dynload.load_packages: coq-lsp.serlib.tauto , 0.547607 ms
Fl_dynload.load_packages: coq-lsp.serlib.cc_core , 0.550585 ms
Fl_dynload.load_packages: coq-lsp.serlib.cc , 0.549075 ms
Fl_dynload.load_packages: coq-lsp.serlib.firstorder_core , 0.583141 ms
Fl_dynload.load_packages: coq-lsp.serlib.firstorder , 0.558694 ms
If I install more packages Fl_dynload.load_packages
become unusable. You can reproduce with simple file calling Fl_dynload.load_packages
.
Metadata
Metadata
Assignees
Labels
No labels