<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
Dear PETSc developers,</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
I'm trying to output a result data in vtk format and find that it is quite slow. Then I try to check this issue by a simple test code:</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
<i> PetscCall(PetscInitialize(&argc,&argv,(char*)0,NULL));</i>
<div class="ContentPasted0"><i> DM dm,dmParallel,dmAux;</i></div>
<div class="ContentPasted0"><i> PetscBool interpolate=PETSC_TRUE;</i></div>
<div class="ContentPasted0"><i> PetscCall(DMPlexCreateExodusFromFile(PETSC_COMM_WORLD,"artery_plaque.exo",interpolate,&dm));</i></div>
<div class="ContentPasted0"><i> PetscCall(DMViewFromOptions(dm,NULL,"-dm_view"));</i></div>
<i> PetscCall(PetscFinalize());</i><br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0 ContentPasted1">
and run with <i>./dm_test -dm_view vtk:./ksp_data/abc.vtk -log_view</i></div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
It took about 600s to output the mesh. I'm not sure if there is something wrong in my code or my configuration of PETSc. Could you please give me some advice on this?</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
<br>
</div>
<div style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);" class="elementToProof ContentPasted0">
Best Regards,
<div>Yujie</div>
<div><br>
</div>
<div>P.S. The result for log_view</div>
<div class="ContentPasted2">****************************************************************************************************************************************************************
<div class="ContentPasted2">*** WIDEN YOUR WINDOW TO 160 CHARACTERS. Use 'enscript -r -fCourier9' to print this document ***</div>
<div class="ContentPasted2">****************************************************************************************************************************************************************</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">------------------------------------------------------------------ PETSc Performance Summary: ------------------------------------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">./dm_test on a arch-linux-c-opt named DESKTOP-0H8HCOD with 1 processor, by qingfeng Mon Nov 6 10:43:31 2023</div>
<div class="ContentPasted2">Using Petsc Release Version 3.19.5, unknown</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2"> Max Max/Min Avg Total</div>
<div class="ContentPasted2">Time (sec): 6.286e+02 1.000 6.286e+02</div>
<div class="ContentPasted2">Objects: 1.400e+02 1.000 1.400e+02</div>
<div class="ContentPasted2">Flops: 0.000e+00 0.000 0.000e+00 0.000e+00</div>
<div class="ContentPasted2">Flops/sec: 0.000e+00 0.000 0.000e+00 0.000e+00</div>
<div class="ContentPasted2">MPI Msg Count: 0.000e+00 0.000 0.000e+00 0.000e+00</div>
<div class="ContentPasted2">MPI Msg Len (bytes): 0.000e+00 0.000 0.000e+00 0.000e+00</div>
<div class="ContentPasted2">MPI Reductions: 0.000e+00 0.000</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Flop counting convention: 1 flop = 1 real number operation of type (multiply/divide/add/subtract)</div>
<div class="ContentPasted2"> e.g., VecAXPY() for real vectors of length N --> 2N flops</div>
<div class="ContentPasted2"> and VecAXPY() for complex vectors of length N --> 8N flops</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Summary of Stages: ----- Time ------ ----- Flop ------ --- Messages --- -- Message Lengths -- -- Reductions --</div>
<div class="ContentPasted2"> Avg %Total Avg %Total Count %Total Avg %Total Count %Total</div>
<div class="ContentPasted2"> 0: Main Stage: 6.2859e+02 100.0% 0.0000e+00 0.0% 0.000e+00 0.0% 0.000e+00 0.0% 0.000e+00 0.0%</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">------------------------------------------------------------------------------------------------------------------------</div>
<div class="ContentPasted2">See the 'Profiling' chapter of the users' manual for details on interpreting output.</div>
<div class="ContentPasted2">Phase summary info:</div>
<div class="ContentPasted2"> Count: number of times phase was executed</div>
<div class="ContentPasted2"> Time and Flop: Max - maximum over all processors</div>
<div class="ContentPasted2"> Ratio - ratio of maximum to minimum over all processors</div>
<div class="ContentPasted2"> Mess: number of messages sent</div>
<div class="ContentPasted2"> AvgLen: average message length (bytes)</div>
<div class="ContentPasted2"> Reduct: number of global reductions</div>
<div class="ContentPasted2"> Global: entire computation</div>
<div class="ContentPasted2"> Stage: stages of a computation. Set stages with PetscLogStagePush() and PetscLogStagePop().</div>
<div class="ContentPasted2"> %T - percent time in this phase %F - percent flop in this phase</div>
<div class="ContentPasted2"> %M - percent messages in this phase %L - percent message lengths in this phase</div>
<div class="ContentPasted2"> %R - percent reductions in this phase</div>
<div class="ContentPasted2"> Total Mflop/s: 10e-6 * (sum of flop over all processors)/(max time over all processors)</div>
<div class="ContentPasted2">------------------------------------------------------------------------------------------------------------------------</div>
<div class="ContentPasted2">Event Count Time (sec) Flop --- Global --- --- Stage ---- Total</div>
<div class="ContentPasted2"> Max Ratio Max Ratio Max Ratio Mess AvgLen Reduct %T %F %M %L %R %T %F %M %L %R Mflop/s</div>
<div class="ContentPasted2">------------------------------------------------------------------------------------------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">--- Event Stage 0: Main Stage</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">DMPlexInterp 1 1.0 3.1186e+00 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0</div>
<div class="ContentPasted2">DMPlexStratify 3 1.0 4.2802e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0</div>
<div class="ContentPasted2">DMPlexSymmetrize 3 1.0 1.0806e-01 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0</div>
<div class="ContentPasted2">------------------------------------------------------------------------------------------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Object Type Creations Destructions. Reports information only for process 0.</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">--- Event Stage 0: Main Stage</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2"> Container 2 1</div>
<div class="ContentPasted2"> Distributed Mesh 5 3</div>
<div class="ContentPasted2"> DM Label 20 8</div>
<div class="ContentPasted2"> Index Set 64 52</div>
<div class="ContentPasted2"> Section 17 12</div>
<div class="ContentPasted2"> Star Forest Graph 10 7</div>
<div class="ContentPasted2"> Discrete System 7 5</div>
<div class="ContentPasted2"> Weak Form 7 5</div>
<div class="ContentPasted2"> GraphPartitioner 3 2</div>
<div class="ContentPasted2"> Matrix 2 1</div>
<div class="ContentPasted2"> Vector 1 0</div>
<div class="ContentPasted2"> Viewer 2 1</div>
<div class="ContentPasted2">========================================================================================================================</div>
<div class="ContentPasted2">Average time to get PetscTime(): 1.8e-08</div>
<div class="ContentPasted2">#PETSc Option Table entries:</div>
<div class="ContentPasted2">-dm_view vtk:./ksp_data/abc.vtk # (source: command line)</div>
<div class="ContentPasted2">-log_view # (source: command line)</div>
<div class="ContentPasted2">#End of PETSc Option Table entries</div>
<div class="ContentPasted2">Compiled without FORTRAN kernels</div>
<div class="ContentPasted2">Compiled with full precision matrices (default)</div>
<div class="ContentPasted2">sizeof(short) 2 sizeof(int) 4 sizeof(long) 8 sizeof(void*) 8 sizeof(PetscScalar) 8 sizeof(PetscInt) 4</div>
<div class="ContentPasted2">Configure options: --with-debugging=0 --with-strict-petscerrorcode --download-openmpi --download-metis --download-exodusii --download-parmetis --download-netcdf --download-pnetcdf --download-hdf5 --download-zlib --download-superlu
--download-superlu_dist --download-triangle --download-cmake --download-fblaslapack --download-slepc</div>
<div class="ContentPasted2">-----------------------------------------</div>
<div class="ContentPasted2">Libraries compiled on 2023-09-15 02:34:25 on DESKTOP-0H8HCOD</div>
<div class="ContentPasted2">Machine characteristics: Linux-5.10.16.3-microsoft-standard-WSL2-x86_64-with-glibc2.29</div>
<div class="ContentPasted2">Using PETSc directory: /home/qingfeng/petsc/optpetsc3-19-5/petsc</div>
<div class="ContentPasted2">Using PETSc arch: arch-linux-c-opt</div>
<div class="ContentPasted2">-----------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Using C compiler: /home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/bin/mpicc -fPIC -Wall -Wwrite-strings -Wno-unknown-pragmas -Wno-lto-type-mismatch -fstack-protector -fvisibility=hidden -g -O</div>
<div class="ContentPasted2">Using Fortran compiler: /home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/bin/mpif90 -fPIC -Wall -ffree-line-length-none -ffree-line-length-0 -Wno-lto-type-mismatch -Wno-unused-dummy-argument -g -O</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">-----------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Using include paths: -I/home/qingfeng/petsc/optpetsc3-19-5/petsc/include -I/home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/include</div>
<div class="ContentPasted2">-----------------------------------------</div>
<div><br class="ContentPasted2">
</div>
<div class="ContentPasted2">Using C linker: /home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/bin/mpicc</div>
<div class="ContentPasted2">Using Fortran linker: /home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/bin/mpif90</div>
<div class="ContentPasted2">Using libraries: -Wl,-rpath,/home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/lib -L/home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/lib -lpetsc -Wl,-rpath,/home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/lib
-L/home/qingfeng/petsc/optpetsc3-19-5/petsc/arch-linux-c-opt/lib -Wl,-rpath,/usr/lib/gcc/x86_64-linux-gnu/9 -L/usr/lib/gcc/x86_64-linux-gnu/9 -lsuperlu -lsuperlu_dist -lflapack -lfblas -lexoIIv2for32 -lexodus -lnetcdf -lpnetcdf -lhdf5_hl -lhdf5 -lparmetis
-lmetis -ltriangle -lm -lz -ldl -lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi -lgfortran -lm -lgfortran -lm -lgcc_s -lquadmath -lpthread -lstdc++ -ldl</div>
-----------------------------------------<br>
</div>
<div class="ContentPasted2"><br>
</div>
<div class="ContentPasted2">The mesh information:</div>
<div class="ContentPasted2 ContentPasted3">DM Object: Created by ICEMCFD - EXODUS II Interface 1 MPI process
<div class="ContentPasted3"> type: plex</div>
<div class="ContentPasted3">Created by ICEMCFD - EXODUS II Interface in 3 dimensions:</div>
<div class="ContentPasted3"> Number of 0-cells per rank: 134549</div>
<div class="ContentPasted3"> Number of 1-cells per rank: 841756</div>
<div class="ContentPasted3"> Number of 2-cells per rank: 1366008</div>
<div class="ContentPasted3"> Number of 3-cells per rank: 658801</div>
<div class="ContentPasted3">Labels:</div>
<div class="ContentPasted3"> celltype: 4 strata with value/size (0 (134549), 6 (658801), 3 (1366008), 1 (841756))</div>
<div class="ContentPasted3"> depth: 4 strata with value/size (0 (134549), 1 (841756), 2 (1366008), 3 (658801))</div>
<div class="ContentPasted3"> Cell Sets: 2 strata with value/size (1 (604426), 2 (54375))</div>
<div class="ContentPasted3"> Vertex Sets: 5 strata with value/size (3 (481), 4 (27248), 5 (20560), 6 (653), 7 (2370))</div>
<div class="ContentPasted3"> Face Sets: 5 strata with value/size (8 (740), 9 (54206), 10 (40857), 11 (999), 12 (4534))</div>
<div class="ContentPasted3"> SMALLER: 1 strata with value/size (8 (740))</div>
<div class="ContentPasted3"> OUTER: 1 strata with value/size (9 (54206))</div>
<div class="ContentPasted3"> INNER: 1 strata with value/size (10 (40857))</div>
BIGGER: 1 strata with value/size (11 (999))<br>
</div>
<div class="ContentPasted2 ContentPasted3"><br>
</div>
</div>
</body>
</html>