Skip to content

Commit 62f3af1

Browse files
authored
Merge pull request #1797 from blowekamp/FixReproducibleNoiseTBB
BUG: Disable dynamic threading in noise filter.
2 parents 27258ef + af780e8 commit 62f3af1

8 files changed

+20
-16
lines changed

Modules/Filtering/ImageNoise/include/itkAdditiveGaussianNoiseImageFilter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ class ITK_TEMPLATE_EXPORT AdditiveGaussianNoiseImageFilter : public NoiseBaseIma
106106
PrintSelf(std::ostream & os, Indent indent) const override;
107107

108108
void
109-
DynamicThreadedGenerateData(const OutputImageRegionType & outputRegionForThread) override;
109+
ThreadedGenerateData(const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId) override;
110110

111111

112112
private:

Modules/Filtering/ImageNoise/include/itkAdditiveGaussianNoiseImageFilter.hxx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,15 @@ template <class TInputImage, class TOutputImage>
3030
AdditiveGaussianNoiseImageFilter<TInputImage, TOutputImage>::AdditiveGaussianNoiseImageFilter()
3131

3232
{
33-
this->DynamicMultiThreadingOn();
33+
this->DynamicMultiThreadingOff();
3434
this->ThreaderUpdateProgressOff();
3535
}
3636

3737
template <class TInputImage, class TOutputImage>
3838
void
39-
AdditiveGaussianNoiseImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
40-
const OutputImageRegionType & outputRegionForThread)
39+
AdditiveGaussianNoiseImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
40+
const OutputImageRegionType & outputRegionForThread,
41+
ThreadIdType)
4142
{
4243
const InputImageType * inputPtr = this->GetInput();
4344
OutputImageType * outputPtr = this->GetOutput(0);

Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ class ITK_TEMPLATE_EXPORT SaltAndPepperNoiseImageFilter : public NoiseBaseImageF
126126
PrintSelf(std::ostream & os, Indent indent) const override;
127127

128128
void
129-
DynamicThreadedGenerateData(const OutputImageRegionType & outputRegionForThread) override;
129+
ThreadedGenerateData(const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId) override;
130130

131131
private:
132132
double m_Probability{ 0.01 };

Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.hxx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,15 @@ SaltAndPepperNoiseImageFilter<TInputImage, TOutputImage>::SaltAndPepperNoiseImag
3131
: m_SaltValue(NumericTraits<OutputImagePixelType>::max())
3232
, m_PepperValue(NumericTraits<OutputImagePixelType>::NonpositiveMin())
3333
{
34-
this->DynamicMultiThreadingOn();
34+
this->DynamicMultiThreadingOff();
3535
this->ThreaderUpdateProgressOff();
3636
}
3737

3838
template <class TInputImage, class TOutputImage>
3939
void
40-
SaltAndPepperNoiseImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
41-
const OutputImageRegionType & outputRegionForThread)
40+
SaltAndPepperNoiseImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
41+
const OutputImageRegionType & outputRegionForThread,
42+
ThreadIdType)
4243
{
4344
const InputImageType * inputPtr = this->GetInput();
4445
OutputImageType * outputPtr = this->GetOutput(0);

Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ class ITK_TEMPLATE_EXPORT ShotNoiseImageFilter : public NoiseBaseImageFilter<TIn
143143
PrintSelf(std::ostream & os, Indent indent) const override;
144144

145145
void
146-
DynamicThreadedGenerateData(const OutputImageRegionType & outputRegionForThread) override;
146+
ThreadedGenerateData(const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId) override;
147147

148148

149149
private:

Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.hxx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,15 @@ template <class TInputImage, class TOutputImage>
3131
ShotNoiseImageFilter<TInputImage, TOutputImage>::ShotNoiseImageFilter()
3232

3333
{
34-
this->DynamicMultiThreadingOn();
34+
this->DynamicMultiThreadingOff();
3535
this->ThreaderUpdateProgressOff();
3636
}
3737

3838
template <class TInputImage, class TOutputImage>
3939
void
40-
ShotNoiseImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
41-
const OutputImageRegionType & outputRegionForThread)
40+
ShotNoiseImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
41+
const OutputImageRegionType & outputRegionForThread,
42+
ThreadIdType)
4243
{
4344
const InputImageType * inputPtr = this->GetInput();
4445
OutputImageType * outputPtr = this->GetOutput(0);

Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ class ITK_TEMPLATE_EXPORT SpeckleNoiseImageFilter : public NoiseBaseImageFilter<
102102
PrintSelf(std::ostream & os, Indent indent) const override;
103103

104104
void
105-
DynamicThreadedGenerateData(const OutputImageRegionType & outputRegionForThread) override;
105+
ThreadedGenerateData(const OutputImageRegionType & outputRegionForThread, ThreadIdType threadId) override;
106106

107107
private:
108108
double m_StandardDeviation{ 1.0 };

Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.hxx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,15 @@ template <class TInputImage, class TOutputImage>
3131
SpeckleNoiseImageFilter<TInputImage, TOutputImage>::SpeckleNoiseImageFilter()
3232

3333
{
34-
this->DynamicMultiThreadingOn();
34+
this->DynamicMultiThreadingOff();
3535
this->ThreaderUpdateProgressOff();
3636
}
3737

3838
template <class TInputImage, class TOutputImage>
3939
void
40-
SpeckleNoiseImageFilter<TInputImage, TOutputImage>::DynamicThreadedGenerateData(
41-
const OutputImageRegionType & outputRegionForThread)
40+
SpeckleNoiseImageFilter<TInputImage, TOutputImage>::ThreadedGenerateData(
41+
const OutputImageRegionType & outputRegionForThread,
42+
ThreadIdType)
4243
{
4344
const InputImageType * inputPtr = this->GetInput();
4445
OutputImageType * outputPtr = this->GetOutput(0);

0 commit comments

Comments
 (0)