aoc2025 @ 116d835f3bbddf182585ba5d7165e10a497d0979

  1diff --git a/BENCH b/BENCH
  2new file mode 100644
  3index 0000000000000000000000000000000000000000..7dc31f359e5a958c9b558b7c30bbf8fc8fcf5498
  4--- /dev/null
  5+++ b/BENCH
  6@@ -0,0 +1,84 @@
  7+RELEASE FAST
  8+2.4M	zig-out/bin/aoc2024
  9+
 10+benchmark              runs     total time     time/run (avg ± σ)    (min ... max)                p75        p99        p995      
 11+-----------------------------------------------------------------------------------------------------------------------------
 12+Dia 1 parte 1          40215    1.836s         45.654us ± 1.099us    (44.904us ... 76.393us)      45.546us   50.274us   50.845us  
 13+Dia 1 parte 2          43858    2.054s         46.837us ± 2.256us    (44.463us ... 94.917us)      49.753us   53.009us   53.731us  
 14+Dia 2 parte 1          95       1.986s         20.913ms ± 112.456us  (20.775ms ... 21.528ms)      20.923ms   21.528ms   21.528ms  
 15+Dia 2 parte 2          27       2.007s         74.339ms ± 631.926us  (73.075ms ... 76.82ms)       74.295ms   76.82ms    76.82ms   
 16+Dia 3 parte 1          100000   187.034ms      1.87us ± 157ns        (1.843us ... 7.534us)        1.864us    1.884us    2.324us   
 17+Dia 3 parte 2          31077    2.016s         64.892us ± 3.846us    (57.537us ... 122.619us)     65.032us   79.088us   81.772us  
 18+Dia 4 parte 1          100000   542.089ms      5.42us ± 351ns        (5.27us ... 45.405us)        5.401us    6.702us    8.175us   
 19+Dia 4 parte 2          434      2.009s         4.629ms ± 95.303us    (4.489ms ... 6.045ms)        4.649ms    4.788ms    5.128ms   
 20+Dia 5 parte 1          52505    2.003s         38.158us ± 2.211us    (37.099us ... 70.281us)      37.791us   45.685us   52.708us  
 21+Dia 5 parte 1 [MEMORY]                         128B ± 0B             (128B ... 128B)              128B       128B       128B      
 22+Dia 5 parte 2          87876    2.01s          22.881us ± 3.791us    (21.54us ... 111.949us)      22.172us   30.557us   33.703us  
 23+Dia 5 parte 2 [MEMORY]                         256B ± 0B             (256B ... 256B)              256B       256B       256B      
 24+
 25+
 26+RELEASE SMALL
 27+116K	zig-out/bin/aoc2024
 28+
 29+benchmark              runs     total time     time/run (avg ± σ)    (min ... max)                p75        p99        p995      
 30+-----------------------------------------------------------------------------------------------------------------------------
 31+Dia 1 parte 1          29977    1.999s         66.697us ± 1.11us     (65.633us ... 97.102us)      66.885us   71.394us   71.915us  
 32+Dia 1 parte 2          29850    2.134s         71.503us ± 3.903us    (65.423us ... 113.212us)     73.057us   85.229us   88.946us  
 33+Dia 2 parte 1          33       1.914s         58.013ms ± 2.834ms    (55.947ms ... 63.138ms)      61.104ms   63.138ms   63.138ms  
 34+Dia 2 parte 2          17       1.954s         114.972ms ± 674.784us (113.864ms ... 116.07ms)     115.499ms  116.07ms   116.07ms  
 35+Dia 3 parte 1          53371    1.857s         34.812us ± 1.992us    (33.332us ... 64.391us)      36.438us   41.718us   43.09us   
 36+Dia 3 parte 2          29439    1.984s         67.401us ± 2.331us    (65.793us ... 92.513us)      67.186us   75.121us   76.382us  
 37+Dia 4 parte 1          10396    2.037s         196.023us ± 11.778us  (172.763us ... 301.785us)    199.163us  225.131us  227.986us 
 38+Dia 4 parte 2          441      2.084s         4.727ms ± 267.787us   (4.125ms ... 6.215ms)        4.826ms    5.747ms    6.173ms   
 39+Dia 5 parte 1          39224    2.183s         55.67us ± 4.385us     (49.393us ... 130.885us)     54.972us   76.864us   81.753us  
 40+Dia 5 parte 1 [MEMORY]                         128B ± 0B             (128B ... 128B)              128B       128B       128B      
 41+Dia 5 parte 2          66790    1.815s         27.18us ± 3.205us     (25.828us ... 100.097us)     26.63us    35.026us   38.742us  
 42+Dia 5 parte 2 [MEMORY]                         256B ± 0B             (256B ... 256B)              256B       256B       256B      
 43+
 44+CPU INFO
 45+Architecture:                            x86_64
 46+CPU op-mode(s):                          32-bit, 64-bit
 47+Address sizes:                           43 bits physical, 48 bits virtual
 48+Byte Order:                              Little Endian
 49+CPU(s):                                  16
 50+On-line CPU(s) list:                     0-15
 51+Vendor ID:                               AuthenticAMD
 52+Model name:                              AMD Ryzen 7 3800X 8-Core Processor
 53+CPU family:                              23
 54+Model:                                   113
 55+Thread(s) per core:                      2
 56+Core(s) per socket:                      8
 57+Socket(s):                               1
 58+Stepping:                                0
 59+Frequency boost:                         enabled
 60+CPU(s) scaling MHz:                      52%
 61+CPU max MHz:                             4560.3242
 62+CPU min MHz:                             576.9090
 63+BogoMIPS:                                7785.12
 64+Flags:                                   fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid extd_apicid aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr rdpru wbnoinvd arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip rdpid overflow_recov succor smca sev sev_es
 65+Virtualization:                          AMD-V
 66+L1d cache:                               256 KiB (8 instances)
 67+L1i cache:                               256 KiB (8 instances)
 68+L2 cache:                                4 MiB (8 instances)
 69+L3 cache:                                32 MiB (2 instances)
 70+NUMA node(s):                            1
 71+NUMA node0 CPU(s):                       0-15
 72+Vulnerability Gather data sampling:      Not affected
 73+Vulnerability Ghostwrite:                Not affected
 74+Vulnerability Indirect target selection: Not affected
 75+Vulnerability Itlb multihit:             Not affected
 76+Vulnerability L1tf:                      Not affected
 77+Vulnerability Mds:                       Not affected
 78+Vulnerability Meltdown:                  Not affected
 79+Vulnerability Mmio stale data:           Not affected
 80+Vulnerability Old microcode:             Not affected
 81+Vulnerability Reg file data sampling:    Not affected
 82+Vulnerability Retbleed:                  Mitigation; untrained return thunk; SMT enabled with STIBP protection
 83+Vulnerability Spec rstack overflow:      Mitigation; Safe RET
 84+Vulnerability Spec store bypass:         Mitigation; Speculative Store Bypass disabled via prctl
 85+Vulnerability Spectre v1:                Mitigation; usercopy/swapgs barriers and __user pointer sanitization
 86+Vulnerability Spectre v2:                Mitigation; Retpolines; IBPB conditional; STIBP always-on; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected
 87+Vulnerability Srbds:                     Not affected
 88+Vulnerability Tsa:                       Not affected
 89+Vulnerability Tsx async abort:           Not affected
 90+Vulnerability Vmscape:                   Mitigation; IBPB before exit to userspace
 91diff --git a/bench.sh b/bench.sh
 92new file mode 100755
 93index 0000000000000000000000000000000000000000..7b163c08f9fe4a0d811966bc85557af7225cdb38
 94--- /dev/null
 95+++ b/bench.sh
 96@@ -0,0 +1,32 @@
 97+#!/usr/bin/env bash
 98+
 99+
100+{
101+    echo "RELEASE FAST";
102+    zig build --release=fast;
103+    du -sh zig-out/bin/aoc2024;
104+    ./zig-out/bin/bench;
105+
106+    echo ""
107+    echo ""
108+
109+    echo "RELEASE SMALL";
110+    zig build --release=small;
111+    du -sh zig-out/bin/aoc2024;
112+    ./zig-out/bin/bench;
113+
114+# it panics for now
115+#    echo ""
116+#    echo ""
117+#
118+#    echo "Debug";
119+#    zig build;
120+#    du -sh zig-out/bin/aoc2024;
121+#    ./zig-out/bin/bench;
122+
123+    echo ""
124+
125+    echo "CPU INFO"
126+    lscpu
127+} > BENCH
128+
129diff --git a/src/input/day1 b/src/input/day1
130index f0f2e2539f8eeb15e0260db92af3e91b613e66b1..b019a8a085883d1bfe2f8a83ba8de8e9af73c088 100644
131Binary files a/src/input/day1 and b/src/input/day1 differ
132diff --git a/src/input/day2 b/src/input/day2
133index e25e1dfab5ef285fcab6de587bba923f671d1cd2..b4d57483841e7d058fe0102397a9e62952eed0f1 100644
134Binary files a/src/input/day2 and b/src/input/day2 differ
135diff --git a/src/input/day3 b/src/input/day3
136index 98c171568b84dc3e4111e407cc1c8d45c940bc27..ebc1243c27873fe866f1331777d2b39a3d3368a4 100644
137Binary files a/src/input/day3 and b/src/input/day3 differ
138diff --git a/src/input/day4 b/src/input/day4
139index 077dbbc3692bea9874c6efe168d843a119543f08..04d8926333b63bb04ee9967c74c9195f65d27a76 100644
140Binary files a/src/input/day4 and b/src/input/day4 differ
141diff --git a/src/input/day5 b/src/input/day5
142index aac99a99cc189b46b9af621a08218c5bc2d051fd..d504baf89978a11981b5bf574bf6e00653f30684 100644
143Binary files a/src/input/day5 and b/src/input/day5 differ