Restructure where permutation happens for sumfact vectorization
Non-fastdg: Permutation of the input happens before the sum factorization kernel when we setup the input. This is done by a method of the corresponding interface class. Fastdg: In this case the input will always be ordered according to x,y,... This means the permutation needs to happen in the sumfact kernel. Since we want to vectorize sumfact kernels with different input permutation in an upper/lower way we need to do this permutation in the corresponding interface class. This is done in the realize_direct method and in the vectorized case the corresponding methods of the scalar sumfact kernels are called.
Showing
- python/dune/codegen/pdelab/argument.py 4 additions, 1 deletionpython/dune/codegen/pdelab/argument.py
- python/dune/codegen/sumfact/accumulation.py 22 additions, 1 deletionpython/dune/codegen/sumfact/accumulation.py
- python/dune/codegen/sumfact/basis.py 61 additions, 16 deletionspython/dune/codegen/sumfact/basis.py
- python/dune/codegen/sumfact/geometry.py 53 additions, 15 deletionspython/dune/codegen/sumfact/geometry.py
- python/dune/codegen/sumfact/realization.py 17 additions, 19 deletionspython/dune/codegen/sumfact/realization.py
- python/dune/codegen/sumfact/symbolic.py 52 additions, 16 deletionspython/dune/codegen/sumfact/symbolic.py
Loading
Please register or sign in to comment