Graphite icon indicating copy to clipboard operation
Graphite copied to clipboard

Add the re-fit on delete feature to the Path tool

Open 4adex opened this issue 6 months ago • 3 comments

Closes #2651

4adex avatar Jun 27 '25 14:06 4adex

Performance Benchmark Results

compile_demo_art_iai::compile_group::compile_to_proto with_setup_0:load_from_name(isometric-fountain) Instructions: 25,114,306 (master) -> 25,118,902 (HEAD) : $$\color{red}+0.02\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     310,612|    309,222          -0.45%
D1mw                      99,788|     97,588          -2.20%
DLmr                      28,941|     28,802          -0.48%
DLmw                      49,977|     42,245         -15.47%
Dr                     6,084,845|  6,086,252          +0.02%
Dw                     4,301,961|  4,302,837          +0.02%
EstimatedCycles       39,720,742| 39,468,535          -0.63%
I1mr                      46,150|     44,076          -4.49%
ILmr                         863|        853          -1.16%
Ir                    25,114,306| 25,118,902          +0.02%
L1hits                35,044,562| 35,057,105          +0.04%
LLhits                   376,769|    378,986          +0.59%
RamHits                   79,781|     71,900          -9.88%
TotalRW               35,501,112| 35,507,991          +0.02%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_1:load_from_name(painted-dreams) Instructions: 13,088,521 (master) -> 13,083,509 (HEAD) : $$\color{lime}-0.04\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     156,762|    155,598          -0.74%
D1mw                      49,415|     49,621          +0.42%
DLmr                         918|        777         -15.36%
DLmw                      15,844|     12,850         -18.90%
Dr                     3,172,749|  3,171,360          -0.04%
Dw                     2,233,731|  2,232,965          -0.03%
EstimatedCycles       19,935,111| 19,827,584          -0.54%
I1mr                      22,653|     22,101          -2.44%
ILmr                         731|        722          -1.23%
Ir                    13,088,521| 13,083,509          -0.04%
L1hits                18,266,171| 18,260,514          -0.03%
LLhits                   211,337|    212,971          +0.77%
RamHits                   17,493|     14,349         -17.97%
TotalRW               18,495,001| 18,487,834          -0.04%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_2:load_from_name(procedural-string-lights) Instructions: 2,205,714 (master) -> 2,166,128 (HEAD) : $$\color{lime}-1.79\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                      22,740|     22,438          -1.33%
D1mw                      10,755|     10,586          -1.57%
DLmr                          22|         21          -4.55%
DLmw                       1,583|      2,476         +56.41%
Dr                       510,313|    500,832          -1.86%
Dw                       372,191|    365,324          -1.85%
EstimatedCycles        3,311,772|  3,280,122          -0.96%
I1mr                       4,971|      4,883          -1.77%
ILmr                         718|        710          -1.11%
Ir                     2,205,714|  2,166,128          -1.79%
L1hits                 3,049,752|  2,994,377          -1.82%
LLhits                    36,143|     34,700          -3.99%
RamHits                    2,323|      3,207         +38.05%
TotalRW                3,088,218|  3,032,284          -1.81%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_3:load_from_name(parametric-dunescape) Instructions: 14,467,730 (master) -> 12,557,721 (HEAD) : $$\color{lime}-13.20\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     187,083|    155,288         -17.00%
D1mw                      66,536|     50,902         -23.50%
DLmr                          67|         43         -35.82%
DLmw                      16,966|     11,937         -29.64%
Dr                     3,472,460|  3,012,438         -13.25%
Dw                     2,479,965|  2,145,850         -13.47%
EstimatedCycles       22,051,067| 19,000,887         -13.83%
I1mr                      19,949|     18,887          -5.32%
ILmr                         855|        839          -1.87%
Ir                    14,467,730| 12,557,721         -13.20%
L1hits                20,146,587| 17,490,932         -13.18%
LLhits                   255,680|    212,258         -16.98%
RamHits                   17,888|     12,819         -28.34%
TotalRW               20,420,155| 17,716,009         -13.24%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_4:load_from_name(red-dress) Instructions: 30,717,005 (master) -> 30,054,384 (HEAD) : $$\color{lime}-2.16\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     392,646|    382,024          -2.71%
D1mw                     132,150|    126,035          -4.63%
DLmr                      42,472|     40,942          -3.60%
DLmw                      63,886|     62,976          -1.42%
Dr                     7,381,918|  7,223,312          -2.15%
Dw                     5,230,397|  5,116,029          -2.19%
EstimatedCycles       48,846,148| 47,763,495          -2.22%
I1mr                      50,171|     48,436          -3.46%
ILmr                         874|        875          +0.11%
Ir                    30,717,005| 30,054,384          -2.16%
L1hits                42,754,353| 41,837,230          -2.15%
LLhits                   467,735|    451,702          -3.43%
RamHits                  107,232|    104,793          -2.27%
TotalRW               43,329,320| 42,393,725          -2.16%

compile_demo_art_iai::compile_group::compile_to_proto with_setup_5:load_from_name(valley-of-spires) Instructions: 19,067,735 (master) -> 19,068,291 (HEAD) : $$\color{red}+0.00\%$$

Detailed metrics
Baselines:                master|       HEAD
D1mr                     235,942|    234,843          -0.47%
D1mw                      76,338|     76,866          +0.69%
DLmr                      12,420|     11,591          -6.67%
DLmw                      28,828|     25,770         -10.61%
Dr                     4,604,301|  4,605,228          +0.02%
Dw                     3,256,019|  3,256,538          +0.02%
EstimatedCycles       29,575,545| 29,455,115          -0.41%
I1mr                      34,375|     33,543          -2.42%
ILmr                         781|        774          -0.90%
Ir                    19,067,735| 19,068,291          +0.00%
L1hits                26,581,400| 26,584,805          +0.01%
LLhits                   304,626|    307,117          +0.82%
RamHits                   42,029|     38,135          -9.27%
TotalRW               26,928,055| 26,930,057          +0.01%

github-actions[bot] avatar Jun 27 '25 14:06 github-actions[bot]

Please resolve conflicts, thanks!

Keavon avatar Jul 01 '25 11:07 Keavon

Unfortunately, in my testing, this doesn't seem to work very well in even the simple case of un-splitting a path. It also seems to fail quite badly when one of the segment ends is a zero-length handle.

Keavon avatar Jul 02 '25 03:07 Keavon