Ticket #9243 (closed: fixed)

Opened 7 years ago

Last modified 5 years ago

Improve LoadEventPreNexus' speed on unmask veto bit

Reported by: Wenduo Zhou Owned by: Wenduo Zhou
Priority: minor Milestone: Release 3.2
Component: Framework Keywords:
Cc: Blocked By:
Blocking: Tester: Russell Taylor

Description

Method unmaskVetoEventIndexes() should be parallelized. It is a bottleneck according to observation.

Change History

comment:1 Changed 7 years ago by Wenduo Zhou

  • Status changed from new to assigned

comment:2 Changed 7 years ago by Wenduo Zhou

  • Status changed from assigned to inprogress

comment:3 Changed 7 years ago by Wenduo Zhou

Added OpenMP schema and etc. Refs #9243.

  1. Added OpenMP schema to unmaskVetoEvents();
  2. Modified the algorithm to operate on converting log event to

TimeSeriesProperty.

Changeset: 061e6eaa885022d8a7ad0b5ed31da145702c7ace

comment:4 Changed 7 years ago by Wenduo Zhou

Fixed an error for windows. Refs #9243.

Changeset: 14d8098107aee7acfade3537dd2fb2efad07e398

comment:5 Changed 7 years ago by Martyn Gigg

There are some cppcheck warnings.

comment:6 Changed 7 years ago by Wenduo Zhou

Supressed cpp check error. Refs #9243.

  1. Suppressed cpp check error which might be false positive according to

Martyn;

  1. Removed some debugging lines.

Changeset: 48c2c6b5b7dd22be70ae22edad4ebd502a508311

comment:7 Changed 7 years ago by Wenduo Zhou

  • Status changed from inprogress to verify
  • Resolution set to fixed

For tester

  1. Locate preNexus files of VULCAN run 20002 of IPTS-7727.
  2. Load neutron0 and puliseid0 by LoadEventPreNexus. You can see the algorithms works for a while to unmask all vetoed events;
  3. Merge the changes of ticket and rebuild Mantid;
  4. Repeat step 2 and you can find the process to unmask vetoed events is in parallel.

comment:8 Changed 7 years ago by Russell Taylor

  • Status changed from verify to reopened
  • Resolution fixed deleted

The cppcheck warning suppression has not worked because of the brackets - ... - that have been included. They are not required. What it necessary is that the cppcheck-suppress command comes on the line right before the thing it's suppressing.

comment:9 Changed 7 years ago by Wenduo Zhou

  • Status changed from reopened to inprogress

Corrected cppcheck errors. Refs #9243.

Changeset: 18ae2dcebc0a6aad80a8fcc8a003306dceeb5d87

comment:10 Changed 7 years ago by Wenduo Zhou

  • Status changed from inprogress to verify
  • Resolution set to fixed

comment:11 Changed 7 years ago by Wenduo Zhou

No cppcheck error to suppress. Refs #9243.

Changeset: 1bb4d7991c4a5f4b8f8990a14d625cd3809d7f1d

comment:12 Changed 6 years ago by Russell Taylor

  • Status changed from verify to verifying
  • Tester set to Russell Taylor

comment:13 Changed 6 years ago by Wenduo Zhou

Corrected an error. Refs #9243.

Changeset: 62ceeebf7a4c50087590fa9570cb3ddc27c2d75c

comment:14 Changed 6 years ago by Russell Taylor

  • Status changed from verifying to reopened
  • Resolution fixed deleted

Minor issues to address:

  • ConfigService is now included twice
  • There are commented out log messages
  • There are still doxygen warnings from using "params" instead of "param" at lines 590 & 591.
  • The logging should be threadsafe and shouldn't need a critical section (line 487).

comment:15 Changed 6 years ago by Wenduo Zhou

  • Status changed from reopened to inprogress

Fixed some minor issues. Refs #9243.

  1. Remove extra inclusion of ConfigService
  2. Remove a commented log output
  3. Correct doxygen error
  4. Remove critical region over a logging.

Changeset: eabb3dd4d6e07cdbf247147e76a5c54306e1e6a5

comment:16 Changed 6 years ago by Wenduo Zhou

  • Status changed from inprogress to verify
  • Resolution set to fixed

comment:17 Changed 6 years ago by Russell Taylor

  • Status changed from verify to verifying

comment:18 Changed 6 years ago by Wenduo Zhou

Cleaned up the codes. Refs #9243.

Changeset: dbebfc312676abcf697885fe36725cc3f6f045c0

comment:19 Changed 6 years ago by Russell Taylor

Loading the specified file on my machine goes from 1.5s to 0.25s following these changes.

comment:20 Changed 6 years ago by Russell Taylor

  • Status changed from verifying to closed

Merge remote branch 'origin/feature/9243_improve_loadeventprenexus'

Full changeset: c478abc5172caefccbbc4d7fe439dff35ee53242

comment:21 Changed 5 years ago by Stuart Campbell

This ticket has been transferred to github issue 10086

Note: See TracTickets for help on using tickets.