Skip to content

Commit e0e8e9f

Browse files
authored
Wave 3 performance pass across diffusion, hodge, spectral, and DEC (#19)
* perf(diffgeo): add wave3 harness and reuse form operators * perf(diffgeo): densify weak derivative assembly * perf(spectral): reuse circular coordinate setup * perf(diffgeo): parallelize form up-laplacian assembly * docs(perf): record wave3 rejected experiments * docs(perf): summarize wave3 campaign state * perf(spectral): cache normalized kernel operator * perf(diffusion): fuse post-knn build passes * perf(hodge): cache gamma assembly in workspace * docs(perf): update wave3 report * perf(dec): parallelize stable face-incidence build * docs(perf): record wave3 dec pass and rejected trials * perf(circular): matrixize workspace preparation * docs(perf): record circular prep rewrite * perf(spectral): loosen tolerance for small basis solves * docs(perf): record spectral tolerance pass * perf(hodge): matrixize curl energy assembly * docs(perf): record hodge curl matrix pass * perf(spectral): use cholesky whitening for dense solves * docs(perf): record dense solve pass * docs(perf): record diffgeo mixed gamma rejection * style: apply clang-format to wave3 perf changes
1 parent 8a670b7 commit e0e8e9f

21 files changed

Lines changed: 3111 additions & 433 deletions

CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,9 @@ target_link_libraries(bench_dod PRIVATE igneous benchmark::benchmark)
9898
add_executable(bench_pipelines benches/bench_pipelines.cpp)
9999
target_link_libraries(bench_pipelines PRIVATE igneous benchmark::benchmark)
100100

101+
add_executable(bench_diffgeo benches/bench_diffgeo.cpp)
102+
target_link_libraries(bench_diffgeo PRIVATE igneous benchmark::benchmark)
103+
101104
add_executable(igneous-mesh src/main_mesh.cpp)
102105
target_link_libraries(igneous-mesh PRIVATE igneous fmt::fmt)
103106

0 commit comments

Comments
 (0)