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

Test and update DCMTK version to benefit from performance enhancements #383

Open
fedorov opened this issue May 8, 2019 · 4 comments
Open

Comments

@fedorov
Copy link
Member

fedorov commented May 8, 2019

Following on email from @michaelonken:

I recently looked into the performance issue with writing segmentations
(and other objects based on functional groups).

As I thought, the main speed issue is the checking of the functional
group structure. It's possible to speed this up (I think) by changing
the way functional groups are organized and accessed in memory and I put
it on my list to enhance this in the future.

For now, I did two things:

  • For some objects the checking has been performed twice, including
    segmentations, i.e. updating to new code will speed up writing by
    factor ~2.

  • Also, if you use the same code over and over again to produce the
    segmentation objects, you probably do not require to check the
    correctness of the functional groups at all. In such cases it only makes
    sense to use the checking when you develop your own code and test with
    some instances.

As an impliciation I think it is useful to just optionally disable the
checks. That's now possible too and makes writing even large
segmentation objects very fast.

You could test this with the latest DCMTK, e.g. commit
9461c7851c3465ca0f14b964ed7c6d0dd4d88834 (latest online right now).

The actual commit with the check option is this one:
591a1bc2f0ad0edec4fbb093ceb07b5fcaf127c9 .

You can disable checks by setting setCheckFGOnWrite(OFTrue) on your
DcmSegmentation object.

@fedorov
Copy link
Member Author

fedorov commented Jul 9, 2019

@michaelonken can you give us some unofficial idea if a minor release is coming up sometime soon?

@michaelonken
Copy link
Member

It's planned for late summer...this year :-).

@fedorov
Copy link
Member Author

fedorov commented Jan 23, 2020

Resolved by #391

@fedorov fedorov closed this as completed Jan 23, 2020
@fedorov
Copy link
Member Author

fedorov commented Jan 23, 2020

TODO: need to test with checks disabled ...

@fedorov fedorov reopened this Jan 23, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants