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

Benchmark for PencilFFT slower than FFTW #37

Closed
musoke opened this issue Mar 16, 2021 · 1 comment
Closed

Benchmark for PencilFFT slower than FFTW #37

musoke opened this issue Mar 16, 2021 · 1 comment

Comments

@musoke
Copy link
Owner

musoke commented Mar 16, 2021

When benchmarking, an FFT of an array is much slower when it is contained in a PencilGrids than Grids.

mpirun -np 1 julia benchmarks/fft.jl

Is this because the Grids FFT is greedy and uses extra threads?

@musoke musoke added this to the 0.1 milestone Apr 28, 2021
musoke added a commit that referenced this issue Jun 17, 2021
Add a script to benchmark different ways of doing a single step.

Related: #37
musoke added a commit that referenced this issue Jun 21, 2021
Add a script to benchmark different ways of doing a single step.
This makes it clear that something in the implementation of
`PencilGrids` is slowing it down: a single step with `PencilGrids` is
much slower than `Grids` and using `PencilArrays` directly.

Related: #37
musoke added a commit that referenced this issue Jun 21, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Fixes: #37
musoke added a commit that referenced this issue Jun 21, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Fixes: #37
musoke added a commit that referenced this issue Jun 21, 2021
Add a script to benchmark different ways of doing a single step.
This makes it clear that something in the implementation of
`PencilGrids` is slowing it down: a single step with `PencilGrids` is
much slower than `Grids` and using `PencilArrays` directly.

Related: #37
musoke added a commit that referenced this issue Jun 21, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Fixes: #37
musoke added a commit that referenced this issue Jun 21, 2021
Add a script to benchmark different ways of doing a single step.
This makes it clear that something in the implementation of
`PencilGrids` is slowing it down: a single step with `PencilGrids` is
much slower than `Grids` and using `PencilArrays` directly.

Related: #37
musoke added a commit that referenced this issue Jun 21, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Fixes: #37
musoke added a commit that referenced this issue Jun 21, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Partial fix for #37
musoke added a commit that referenced this issue Jun 22, 2021
Add a script to benchmark different ways of doing a single step.
This makes it clear that something in the implementation of
`PencilGrids` is slowing it down: a single step with `PencilGrids` is
much slower than `Grids` and using `PencilArrays` directly.

Related: #37
musoke added a commit that referenced this issue Jun 22, 2021
Give concrete types to some members of `PencilGrids`.  This allows the
compiler to infer more and optimize.

https://docs.julialang.org/en/v1/manual/performance-tips/#Avoid-fields-with-abstract-type

Partial fix for #37
@musoke
Copy link
Owner Author

musoke commented Jun 22, 2021

@musoke musoke modified the milestones: 0.1, 0.2 Jun 22, 2021
@musoke musoke removed this from the 0.2 milestone Oct 11, 2021
@musoke musoke closed this as completed Dec 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant