Comments (6)
Your suggested fixes look good to me. Thanks @aschaf!
from mfem.
I opened #4206 to resolve the issue.
A related question: if I want to further speed up the assembly (eg. on my laptop) should I use the MPI parallel version to utilize all available cores, or would it make sense to somehow extend the TBilinearform to utilize eg. OpenMP for the assembly loop?
from mfem.
A related question: if I want to further speed up the assembly (eg. on my laptop) should I use the MPI parallel version to utilize all available cores, or would it make sense to somehow extend the TBilinearform to utilize eg. OpenMP for the assembly loop?
The MPI-parallel version should be easier to try -- just look at how miniapps/performance/ex1p.cpp
differes from miniapps/performance/ex1.cpp
. Implementing an OpenMP version will require some effort and in the end may actually be slower.
from mfem.
I noticed another issue I somewhat missed in the pull request. When turning on SIMD, it again crashes at line 103 in teltrans.hpp
Lines 94 to 106 in 7c296d0
specifically because at some point
el+j+i*vsize
is greater than the number of elements. A quick and dirty fix was just to replace line 103 with
attrib[i][j] = ((el+j+i*vsize) < fes.GetNE()) ? elements[el+j+i*vsize]->GetAttribute() : 1;
from mfem.
@aschaf, you are right -- this is a bug. In the respective situation in VectorExtract
, we stop copying values when we reach the last element, see
Line 214 in 7c296d0
A better approach for here and for VectorExtract
is probably to replicate the last element attribute or values, so that all SIMD entries have meaningful values.
from mfem.
@v-dobrev Thank you for the explanation, I will open a PR once this is fixed.
from mfem.
Related Issues (20)
- Linking against Spack MFEM package HOT 4
- 【Usage】 How to caculate the right hand side (q\nabla T, v) HOT 5
- Spiro: perhaps an alternative for bezier spline by nurbs for more quality and faster optimization
- Matthek triangle method for fast optimization of edges in mechanics and fluid simulation
- How to extract solution at certain positions in mfem HOT 34
- Overlapping boundary attributes not inherited in submesh HOT 10
- Bug using mesh refinement and BC's HOT 5
- MFEM program crashes when solving linear static analysis problem when using AddBdrTriangle HOT 2
- Adding heat source to ex16 HOT 3
- Can MFEM handle multiple sources at the right hand side of equation HOT 3
- PrintVTK issues HOT 2
- Change some MFEM_ASSERT to MFEM_VERIFY, or report more info's to the users? HOT 2
- Face dofs for Periodic meshes HOT 5
- Inconsistency Between MFEM + ParaView for Symmetric Tensor Outputs HOT 1
- Request for an EasyBuild Configueation file HOT 2
- ND_R2D visualization with glvis fails HOT 3
- Bug: Poor performance for `HypreBoomerAMG` with `Ordering::byNODES` HOT 12
- Multiscale: An FE domain solve for every integration point HOT 1
- Why complex DOFs are split HOT 2
- use multi GPUs to accelerate discontinuous galerkin time domain method
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mfem.