Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appallingly slow loading of history from a nexus processed file #1922

Closed
mantid-builder opened this issue Dec 16, 2009 · 2 comments
Closed
Assignees
Labels
High Priority An issue or pull request that if not addressed is severe enough to postponse a release.
Milestone

Comments

@mantid-builder
Copy link
Collaborator

Original Reporter: Russell Taylor

The attached file takes about 20 seconds to load, almost all of which is related to the loading of the algorithm history. I've worked out exactly where the problem is, but I don't know enough about the nexus library, or more particularly our wrappers around it, to work out how to fix it.

The problem lines are lines 415 & 416 of LoadNexusProcessed.cpp, which, within the enclosing loop, each account for ~10 seconds of the algorithm duration:

  NXNote entry = history.openNXNote(itr->nxname);
  const std::vector`<std::string>` & info = entry.data();

The underlying slow method behind the first line is NXClass::openNXClass, that behind the second line is NXClass::openNXChar. I think they both wind up calling the NXClass::open method.

@mantid-builder
Copy link
Collaborator Author

This issue was originally trac ticket 1074

@mantid-builder
Copy link
Collaborator Author

http://trac.mantidproject.org/mantid/raw-attachment/ticket/1074/van_s2_new_corr-0.nxs
(uploaded by Russell Taylor on 2009-12-16T11:02:55)


@mantid-builder mantid-builder added the High Priority An issue or pull request that if not addressed is severe enough to postponse a release. label Jun 3, 2015
@mantid-builder mantid-builder added this to the Iteration 21 milestone Jun 3, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
High Priority An issue or pull request that if not addressed is severe enough to postponse a release.
Projects
None yet
Development

No branches or pull requests

2 participants