|
|
| (102 intermediate revisions by the same user not shown) |
| Line 1: |
Line 1: |
| = Delta Wing (Scitech 2018) = | | <span id="Contents"></span> |
| | = Data = |
| | [[Internal:Adaptive CDT3D Results | Adaptive CDT3D Results ]] |
|
| |
|
| [[File:Delta_wing_50k_parallel_scitech.png| 500px]] | | = Integration with SU2 = |
| | * SU2 + refine + CDT3D pipeline [http://www.cs.odu.edu/crtc/SU2/SU2_pipeline.svg] |
| | * SU2 + refine + CDT3D, ONERAM6 invicid [http://www.cs.odu.edu/crtc/SU2/onera_invicid.pdf] |
|
| |
|
| ==50k Complexity ==
| | * SU2 + refine + CDT3D, steady laminar flow low mach number over delta wing |
| ===Starting from a coarse surface mesh ===
| | ** meshes [http://www.cs.odu.edu/crtc/SU2/delta_wing.pdf] |
| '''TODO needs update'''
| | ** solution cuts of the vortex [http://www.cs.odu.edu/crtc/SU2/delta_vortex.pdf] |
| {| class="wikitable" style="text-align: right;"
| | ** video [http://www.cs.odu.edu/crtc/SU2/delta_wing_005.ogv] |
| |+ All time data are given in seconds.
| |
| ! rowspan="2" | # Threads
| |
| ! rowspan="2" | # Tetrahedra
| |
| ! rowspan="2" | # Vertices
| |
| ! rowspan="2" | Intitialize Bg Mesh
| |
| ! rowspan="2" | Boundary Adaptation (MMGS)
| |
| ! rowspan="2" | Boundary Recovery
| |
| ! colspan="6" style="text-align: center;" | Mesh Refinement
| |
| ! rowspan="2" | Total Time
| |
| (without MMGS)
| |
| ! rowspan="2" | Memory (GB)
| |
| |-
| |
| ! # Iterations
| |
| ! Par. Deactivation
| |
| ! Par. Vertex Creation
| |
| ! Vertex Insertion
| |
| ! Partition
| |
| ! Par. Reconnection
| |
| |-
| |
| | 1
| |
| | 357,165
| |
| | 62,177
| |
| | 1.44
| |
| | 6.32
| |
| | 0.36
| |
| | 20
| |
| | 2.09
| |
| | 11.92
| |
| | 0.09
| |
| | 1.26
| |
| | 57.35
| |
| | 80.97
| |
| | 0.44
| |
| |-
| |
| | 6
| |
| | 361,037
| |
| | 62,795
| |
| | 1.49
| |
| | 6.23
| |
| | 0.35
| |
| | 21
| |
| | 0.51
| |
| | 2.78
| |
| | 0.11
| |
| | 1.45
| |
| | 14.06
| |
| | 27.12
| |
| | 0.63
| |
| |-
| |
| | 12
| |
| | 363,278
| |
| | 63,198
| |
| | 1.41
| |
| | 6.27
| |
| | 0.33
| |
| | 22
| |
| | 0.32
| |
| | 1.55
| |
| | 0.11
| |
| | 1.62
| |
| | 8.24
| |
| | 19.99
| |
| | 0.86
| |
| |-
| |
| | 24
| |
| | 363,756
| |
| | 63,270
| |
| | 1.49
| |
| | 6.26
| |
| | 0.33
| |
| | 22
| |
| | 0.2
| |
| | 0.88
| |
| | 0.11
| |
| | 1.6
| |
| | 5.13
| |
| | 16.15
| |
| | 1.31
| |
| |}
| |
|
| |
|
| === Notes 1=== | | = Improvements = |
| * Speed 22.5K test/sec and 3.9 ps/sec
| | [[Internal:Adaptive CDT3D - Smoothing | Metric Adaptive Smoothing ]] |
| * according to Mike's email mesh should be around 100k vertices
| |
| * Metric Input Data available at [https://github.com/UGAWG/parallel-adapt-results/tree/master/delta-wing/fun3d-fv-lp2 https://github.com/UGAWG/parallel-adapt-results ]
| |
| * Input surface is the coase mesh available at [https://github.com/UGAWG/solution-adapt-cases/delta-wing/initial-grid/delta01.meshb https://github.com/UGAWG/solution-adapt-cases]
| |
| * The experiments performed on a DELL workstation with Linux Red Hat Enterprise, 24 hardware cores Intel® Xeon® CPU E5-2697v2@2.70 GHz, and 757 GB RAM
| |
| * Memory is measured at the end of Mesh refinement and thus it may reach a slightly higher value before the point of measurement
| |
| * parameters <code> --brec=2 --met=1 --meval=3 --mrecm2=1 --mrec4=1 --nadapt=2 --malign=0 --mpp=2 --ndfs=0 --nthreads=$THREADS --nbuckets=20*$THREADS --nthreadsaf=20*$THREADS --nbucketsaf=20*${THREADS} --blockmul=500000 --nqual=0 --nminpts=30 --ordt=0 --pardeact=1 --mdse=0 </code>
| |
| * using commit <code> bb7819619eb9b8831ac1d4515b9605869df72b47</code> or tag <code> Delta-wiki </code>
| |
| | |
| ==500k Complexity ==
| |
| === Starting from a 50K Complexity volume mesh ===
| |
| ''' Updated on 2018.05.20'''
| |
| | |
| Size of intial mesh
| |
| | |
| Vertices : 104,305
| |
| | |
| Tetrahedra: 581,196
| |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ All time data are given in seconds.
| |
| ! rowspan="2" | # Threads
| |
| ! rowspan="2" | # Tetrahedra
| |
| ! rowspan="2" | # Vertices
| |
| ! rowspan="2" | Reconstruct Mesh
| |
| ! colspan="6" style="text-align: center;" | Mesh Refinement
| |
| ! rowspan="2" | Total Time
| |
| ! rowspan="2" | Memory (GB)
| |
| |-
| |
| ! # Iterations
| |
| ! Par. Deactivation
| |
| ! Par. Vertex Creation
| |
| ! Vertex Insertion
| |
| ! Partition
| |
| ! Par. Reconnection
| |
| |-
| |
| |-
| |
| | 1
| |
| | 5,516,917
| |
| | 926,822
| |
| | 2.22
| |
| | 28
| |
| | 20.95
| |
| | 19.44
| |
| | 1.65
| |
| | 2.85
| |
| | 665.49
| |
| | 712.60
| |
| | 1.31
| |
| |-
| |
| | 6
| |
| | 5,561,503
| |
| | 934,363
| |
| | 2.39
| |
| | 26
| |
| | 3.95
| |
| | 4.37
| |
| | 1.55
| |
| | 3.13
| |
| | 111.55
| |
| | 126.94
| |
| | 1.46
| |
| |-
| |
| | 12
| |
| | 5,563,857
| |
| | 934,699
| |
| | 2.44
| |
| | 28
| |
| | 2.27
| |
| | 2.99
| |
| | 1.62
| |
| | 3.23
| |
| | 62.54
| |
| | 75.08
| |
| | 1.58
| |
| |-
| |
| | 24
| |
| | 5,558,489
| |
| | 933,876
| |
| | 2.43
| |
| | 27
| |
| | 1.31
| |
| | 2.64
| |
| | 1.63
| |
| | 3.11
| |
| | 32.19
| |
| | 43.31
| |
| | 1.81
| |
| |-
| |
| | 24 + 12HT
| |
| | 5,553,184
| |
| | 932,833
| |
| | 2.45
| |
| | 27
| |
| | 1.15
| |
| | 2.62
| |
| | 1.55
| |
| | 3.13
| |
| | 27.71
| |
| | 38.62
| |
| | 2.26
| |
| |-
| |
| | 24 + 24HT
| |
| | 5,567,259
| |
| | 935,267
| |
| | 2.35
| |
| | 27
| |
| | 1.04
| |
| | 2.84
| |
| | 1.81
| |
| | 3.28
| |
| | 24.42
| |
| | 35.75
| |
| | 2.72
| |
| |}
| |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ Speed
| |
| ! # Threads
| |
| ! # Tetrahedra/sec
| |
| ! # Tetrahedra/sec/core
| |
| ! # Vertices/sec
| |
| ! # Vertices/sec/core
| |
| | |
| |-
| |
| | 1
| |
| | 6,926.36
| |
| | 6,926.36
| |
| | 1,154.25
| |
| | 1,154.25
| |
| |-
| |
| | 6
| |
| | 39,233.55
| |
| | 6,538.93
| |
| | 6,538.98
| |
| | 1,089.83
| |
| |-
| |
| | 12
| |
| | 66,364.69
| |
| | 5,530.39
| |
| | 11,060.12
| |
| | 921.68
| |
| |-
| |
| | 24
| |
| | 114,922.49
| |
| | 4,788.44
| |
| | 19,154.26
| |
| | 798.09
| |
| |-
| |
| | 24 + 12HT
| |
| | 128,741.27
| |
| | 3,576.15
| |
| | 21,453.34
| |
| | 595.93
| |
| |-
| |
| | 24 + 24HT
| |
| | 139,470.29
| |
| | 2,905.63
| |
| | 23,243.69
| |
| | 484.24
| |
| |}
| |
| | |
| | |
| This approach offers no boundary adaptation.
| |
| | |
| ===Starting for a coarse surface mesh===
| |
| | |
| ''' Updated on 2018.05.20'''
| |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ All time data are given in seconds.
| |
| ! rowspan="2" | # Threads
| |
| ! rowspan="2" | # Tetrahedra
| |
| ! rowspan="2" | # Vertices
| |
| ! rowspan="2" | Intitialize Bg Mesh
| |
| ! rowspan="2" | Boundary Adaptation (MMGS)
| |
| ! rowspan="2" | Boundary Recovery
| |
| ! colspan="6" style="text-align: center;" | Mesh Refinement
| |
| ! rowspan="2" | Total Time
| |
| (without MMGS)
| |
| ! rowspan="2" | Memory (GB)
| |
| |-
| |
| ! # Iterations
| |
| ! Par. Deactivation
| |
| ! Par. Vertex Creation
| |
| ! Vertex Insertion
| |
| ! Partition
| |
| ! Par. Reconnection
| |
| |-
| |
| | 1
| |
| | 5,572,743
| |
| | 941,913
| |
| | 1.47
| |
| | 29.77
| |
| | 6.74
| |
| | 25
| |
| | 17.82
| |
| | 83.22
| |
| | 1.63
| |
| | 2.17
| |
| | 667.87
| |
| | 811.21
| |
| | 1.96
| |
| |-
| |
| | 6
| |
| | 5,598,669
| |
| | 946,401
| |
| | 1.36
| |
| | 30.03
| |
| | 5.61
| |
| | 26
| |
| | 3.56
| |
| | 16.21
| |
| | 1.73
| |
| | 2.62
| |
| | 108.01
| |
| | 169.65
| |
| | 1.61
| |
| |-
| |
| | 12
| |
| | 5,597,829
| |
| | 946,215
| |
| | 1.45
| |
| | 30.02
| |
| | 5.82
| |
| | 27
| |
| | 1.99
| |
| | 8.47
| |
| | 1.76
| |
| | 2.52
| |
| | 59.71
| |
| | 112.25
| |
| | 1.71
| |
| |-
| |
| | 24
| |
| | 5,596,756
| |
| | 946,067
| |
| | 1.24
| |
| | 29.88
| |
| | 6.82
| |
| | 28
| |
| | 1.16
| |
| | 4.54
| |
| | 1.67
| |
| | 2.51
| |
| | 31.17
| |
| | 79.52
| |
| | 1.95
| |
| |-
| |
| | 24 + 12HT
| |
| | 5,607,155
| |
| | 947,817
| |
| | 1.22
| |
| | 30.03
| |
| | 6.28
| |
| | 27
| |
| | 0.96
| |
| | 3.76
| |
| | 1.72
| |
| | 2.44
| |
| | 26.45
| |
| | 73.4
| |
| | 2.33
| |
| |-
| |
| | 24 + 24HT
| |
| | 5,617,086
| |
| | 949,525
| |
| | 1.47
| |
| | 30.01
| |
| | 6.54
| |
| | 27
| |
| | 0.89
| |
| | 3.53
| |
| | 1.71
| |
| | 2.55
| |
| | 24.05
| |
| | 71.26
| |
| | 2.78
| |
| |}
| |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ Speed
| |
| ! # Threads
| |
| ! # Tetrahedra/sec
| |
| ! # Tetrahedra/sec/core
| |
| ! # Vertices/sec
| |
| ! # Vertices/sec/core
| |
| |-
| |
| | 1
| |
| | 6,869.67
| |
| | 6,869.67
| |
| | 1,161.12
| |
| | 1,161.12
| |
| |-
| |
| | 6
| |
| | 33,001.29
| |
| | 5,500.22
| |
| | 5,578.55
| |
| | 929.76
| |
| |-
| |
| | 12
| |
| | 49,869.30
| |
| | 4,155.78
| |
| | 8,429.53
| |
| | 702.46
| |
| |-
| |
| | 24
| |
| | 70,381.74
| |
| | 2,932.57
| |
| | 11,897.22
| |
| | 495.72
| |
| |}
| |
| | |
| ===Notes 2===
| |
| * Speed 35.1K test/sec (40.6K tets/sec w/o body adaptation) and 5.9K ps/sec. The mesh is about 15.2 times larger in terms of test and the speed is 1.56 larger!
| |
| * In speed table of volume reconstruction initial number of tetrahedra and vertices is subtracted.
| |
| * In speed table of with surface adaptation MMGS time is not included.
| |
| * Target is 1M vertices.
| |
| * [[Internal:ACDT3D#Comparison_Surface_Adaptation_vs_Mesh_Reconstruction_(reproducibility)| Quality comparison starting from surface vs volume]]
| |
| * in some cases boundary recovery reached a point of non-developed code. Rerunning created a different surface mesh and CDT3D was able to continue.
| |
| * commit <code> fb0f106c6b65107 </code>
| |
| * common parameters <code> --met=1 --mrecm2=1 --mrec4=1 --malign=0 --mpp=2 --qstatr=1 --outmesh=${NAME}.meshb --ndfs=0 --nthreads=$THREADS --nbuckets=20*NTHREADS --nthreadsaf=20*NTHREADS --nbucketsaf=20*NTHREADS --blockmul=500000 --nqual=0 --nminpts=30 --ordt=1 --pardeact=1 --mdse=0 --cdfn=0.55</code>
| |
| * non-common parameters
| |
| **reconstruct <code> --meval=1 --reconstruct=1 </code>
| |
| ** surf adapt <code> --brec=1 --meval=3 --nadapt=2 </code>
| |
| | |
| ==2M Complexity ==
| |
| === Starting from a 50K Complexity volume mesh ===
| |
| Size of initial mesh
| |
| | |
| Vertices : 104,305
| |
| | |
| Tetrahedra: 581,196
| |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ All time data are given in seconds.
| |
| ! rowspan="2" | # Threads
| |
| ! rowspan="2" | # Tetrahedra
| |
| ! rowspan="2" | # Vertices
| |
| ! rowspan="2" | Intitialize Bg Mesh
| |
| ! rowspan="2" | Reconstruct Mesh
| |
| ! colspan="6" style="text-align: center;" | Mesh Refinement
| |
| ! rowspan="2" | Total Time
| |
| ! rowspan="2" | Memory (GB)
| |
| |-
| |
| ! # Iterations
| |
| ! Par. Deactivation
| |
| ! Par. Vertex Creation
| |
| ! Vertex Insertion
| |
| ! Partition
| |
| ! Par. Reconnection
| |
| |-
| |
| |-
| |
| | 1
| |
| | 21,865,792
| |
| | 3,660,818
| |
| | 1.22
| |
| | 2.02
| |
| | 26
| |
| | 176.15
| |
| | 515.30
| |
| | 7.25
| |
| | 149.05
| |
| | 7,643.51
| |
| | 8,495.57
| |
| | 6.97
| |
| |-
| |
| | 6
| |
| | 21,953,024
| |
| | 3,675,913
| |
| | 1.28
| |
| | 2.04
| |
| | 32
| |
| | 53.90
| |
| | 124.95
| |
| | 7.40
| |
| | 231.48
| |
| | 1,340.84
| |
| | 1,762.97
| |
| | 6.49
| |
| |-
| |
| | 12
| |
| | 21,960,752
| |
| | 3,677,185
| |
| | 1.16
| |
| | 2.02
| |
| | 32
| |
| | 29.69
| |
| | 70.13
| |
| | 7.01
| |
| | 239.09
| |
| | 702.43
| |
| | 1,052.64
| |
| | 6.41
| |
| |-
| |
| | 24
| |
| | 21,966,402
| |
| | 3,678,089
| |
| | 1.34
| |
| | 2.02
| |
| | 29
| |
| | 15.04
| |
| | 38.25
| |
| | 6.33
| |
| | 214.75
| |
| | 332.75
| |
| | 611.56
| |
| | 6.68
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ Speed
| |
| ! # Threads
| |
| ! # Tetrahedra/sec
| |
| ! # Tetrahedra/sec/core
| |
| ! # Vertices/sec
| |
| ! # Vertices/sec/core
| |
| |-
| |
| |1
| |
| | 2,573.72
| |
| | 2,573.72
| |
| | 418.63
| |
| | 418.63
| |
| |-
| |
| | 6
| |
| | 12,451.97
| |
| | 2,075.33
| |
| | 2,025.90
| |
| | 337.65
| |
| |-
| |
| | 12
| |
| | 20,862.00
| |
| | 1,738.50
| |
| | 3,394.21
| |
| | 282.85
| |
| |-
| |
| | 24
| |
| | 35,917.69
| |
| | 1,496.57
| |
| | 5,843.72
| |
| | 243.49
| |
| |}
| |
| | |
| === Starting from a coarse Surface mesh ===
| |
| {| class="wikitable" style="text-align: right;"
| |
| |+ All time data are given in seconds.
| |
| ! rowspan="2" | # Threads
| |
| ! rowspan="2" | # Tetrahedra
| |
| ! rowspan="2" | # Vertices
| |
| ! rowspan="2" | Intitialize Bg Mesh
| |
| ! rowspan="2" | Boundary Adaptation (MMGS)
| |
| ! rowspan="2" | Boundary Recovery
| |
| ! colspan="6" style="text-align: center;" | Mesh Refinement
| |
| ! rowspan="2" | Total Time
| |
| (without MMGS)
| |
| ! rowspan="2" | Memory (GB)
| |
| |-
| |
| ! # Iterations
| |
| ! Par. Deactivation
| |
| ! Par. Vertex Creation
| |
| ! Vertex Insertion
| |
| ! Partition
| |
| ! Par. Reconnection
| |
| |-
| |
| |-
| |
| | 1
| |
| | 21,972,547
| |
| | 3,697,482
| |
| | 1.44
| |
| | 75.89
| |
| | 36.64
| |
| | 28
| |
| | 167.11
| |
| | 402.53
| |
| | 7.59
| |
| | 144.66
| |
| | 7,305.68
| |
| | 8,143.17
| |
| | 7.04
| |
| |-
| |
| | 6
| |
| | 22,097,857
| |
| | 3,718,978
| |
| | 1.47
| |
| | 75.71
| |
| | 36.00
| |
| | 31
| |
| | 51.16
| |
| | 99.82
| |
| | 8.98
| |
| | 198.95
| |
| | 1,331.57
| |
| | 1,805.32
| |
| | 5.93
| |
| |-
| |
| | 12
| |
| | 22,096,517
| |
| | 3,718,207
| |
| | 1.46
| |
| | 75.68
| |
| | 38.99
| |
| | 32
| |
| | 28.09
| |
| | 54.64
| |
| | 8.3
| |
| | 214.43
| |
| | 685.94
| |
| | 1,109.18
| |
| | 6.0
| |
| |-
| |
| | 24
| |
| | 22,094,983
| |
| | 3,718,117
| |
| | 1.36
| |
| | 76.06
| |
| | 38.96
| |
| | 30
| |
| | 14.43
| |
| | 29.23
| |
| | 7.38
| |
| | 201.29
| |
| | 331.19
| |
| | 701.51
| |
| | 6.04
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="text-align: right;"
| |
| |+ Speed
| |
| ! # Threads
| |
| ! # Tetrahedra/sec
| |
| ! # Tetrahedra/sec/core
| |
| ! # Vertices/sec
| |
| ! # Vertices/sec/core
| |
| |-
| |
| | 1
| |
| | 2,698.28
| |
| | 2,698.28
| |
| | 454.06
| |
| | 454.06
| |
| |-
| |
| | 6
| |
| | 12,240.41
| |
| | 2,040.07
| |
| | 2,060.01
| |
| | 343.34
| |
| |-
| |
| | 12
| |
| | 19,921.49
| |
| | 1,660.12
| |
| | 3,352.21
| |
| | 279.35
| |
| |-
| |
| | 24
| |
| | 31,496.32
| |
| | 1,312.35
| |
| | 5,300.16
| |
| | 220.84
| |
| |}
| |
| | |
| === Notes 3 ===
| |
| * In speed table of volume reconstruction the initial number of tetrahedra and vertices is subtracted.
| |
| * In speed table with surface adaptation MMGS time is not included.
| |
| * parameters same as above
| |
|
| |
|
| = General Notes = | | = General Notes = |
| * smoothing : [https://onlinelibrary.wiley.com/doi/abs/10.1002/%28SICI%291097-0207%2819971115%2940%3A21%3C3979%3A%3AAID-NME251%3E3.0.CO%3B2-9 Tetrahedral Mesh Improvement Using Swapping and Smoothing, Lori A. Freitag and Carl Ollivier-Gooch ] [http://www.cs.odu.edu/crtc/internal/Christos/Freitag_et_al-1997-International_Journal_for_Numerical_Methods_in_Engineering.pdf PDF]
| |
| * [https://epubs.siam.org/doi/abs/10.1137/0715011 An Efficient Method to Solve the Minmax Problem Directly, C. Charalambous and A. R. Conn ] [http://www.cs.odu.edu/crtc/internal/Christos/Charalambous_An_Efficient_Method_To_Solve_The_Minmax_problem_directly.pdf PDF]
| |
| * [[Internal:ACDT3D_Quality_Criteria | Comparison for quality criteria for ACDT3D]] | | * [[Internal:ACDT3D_Quality_Criteria | Comparison for quality criteria for ACDT3D]] |
| | | * [[Internal:ACDT3D_(Scitech2018)_stability_data | Stability Data for 500k]] |
| = Stability for 500k case=
| | [[#Contents | Back To Top]] |
| == Comparison of Quality Metric using different amount of cores and surface adaptation ==
| |
| [[File:Histogram_mean_adapt.png|500px]]
| |
| [[File:Histogram_ratio_adapt.png|500px]]
| |
| == Comparison of Quality Metric using different amount of cores and mesh reconstruction ==
| |
| [[File:Histogram_mean_reconstruct.png|500px]]
| |
| [[File:Histogram_ratio_reconstruct.png|500px]] | |
| | |
| ==Comparison Surface Adaptation vs Mesh Reconstruction (reproducibility) ==
| |
| | |
| ''' TODO needs update '''
| |
| | |
| [[File:Histogram_mean_compare.png|500px]]
| |
| [[File:Histogram_ratio_compare.png|500px]] | |
| | |
| Surface adaptation offers better edge lengths but mesh reconstruction slightly better mean ratio quality
| |