[Xiaomi Poco X3 Pro] Haldi4803:
WiFi vs Mobile Network Deepsleep.​

Tested on Android 12 ArrowOS build 2012_12_07 Gapps.

View attachment 5479343

As you can see in the Graphs the file from #1 2021-12-10_06-30-34 uses Mobile Network and the #2 2021-12-09_06-30-28 is on WiF

The upper has some Red cluttered points for "Mobile Radio active" and the lower one has the green "Wifi radio".

The most obvious difference is the "Screen off uptime" which is less than half with Mobile Network. "Userspace Wakelock Time" is about the same, which is good! This proofs it's not our fault for the difference. But the "Kernel Overhad Time" is reduced to a third.

Aggregated Checkin Stats:
Metric | Value (bugreport-vayu_global-SD1A.210817.036.A8-2021-12-10-06-30-34.zip) | Value (bugreport-vayu_global-SD1A.210817.036.A8-2021-12-09-06-30-28.zip)
Screen Off Discharge Rate (%/hr) | 0.12 (Discharged: 1%) | 0.30 (Discharged: 2%)
Screen On Discharge Rate (%/hr) | 0.00 (Discharged: 0%) | 0.00 (Discharged: 0%)
Screen On Time (%) | 1m24.509s (0.29%) | 41.214s (0.17%)
Screen Off Uptime | 7m15.992s (1.50%) | 16m3.072s (3.95%)
Userspace Wakelock Time | 2m32.372s (0.52%) | 2m57.366s (0.73%)
Kernel Overhead Time | 4m43.62s (0.97%) | 13m5.706s (3.23%)
Mobile KBs/hr | 311.36 | 0.00
WiFi KBs/hr | 0.00 | 378.99
Mobile Active Time | 28m19.947s (5.84%) | 0 (0.00%)
Signal Scanning Time | 0 (0.00%) | 0 (0.00%)
Full Wakelock Time | 25.71s (0.09%) | 19.549s (0.08%)
Interactive Time | 1m24.041s (0.29%) | 40.302s (0.17%)
Phone Call Time | 0 (0.00%) | 0 (0.00%)
Device Idle Mode Enabled Time | 6h53m44.534s (85.31%) | 5h27m46.544s (80.73%)
Device Idling Time | 6h54m44.82s (85.52%) | 5h28m46.856s (80.98%)

As Said before Userspace Wakelocks are "almost" the Same, so no reason to take a closer look at this here.
Userspace Wakelocks:
Name | Diff Sec/Hr | #1 Sec/Hr | #2 Sec/Hr | #1 Minimum Duration | #2 Minimum Duration | Diff Count/Hr | #1 Count/Hr | #2 Count/Hr | #1 Total Count | #2 Total Count
com.android.vending : *job*/com.android.vending/com.google.android.finsky.instantapps.InstantAppHygieneService | -3.07 | 0.00 | 3.07 | 0 | 19.783s | -0.15 | 0.00 | 0.15 | 0 | 1
ANDROID_SYSTEM : deviceidle_maint | -2.69 | 9.99 | 12.68 | 1m8.822s | 1m12.909s | -0.29 | 0.74 | 1.03 | 6 | 7
GOOGLE_SERVICES : wake:com.google.android.gms/.chimera.GmsIntentOperationService | -1.45 | 7.42 | 8.87 | 56.219s | 56.679s | -0.02 | 0.12 | 0.15 | 1 | 1
com.google.android.googlequicksearchbox : *job*/com.google.android.googlequicksearchbox/com.google.android.apps.gsa.tasks.BackgroundTasksJobService | -0.51 | 0.20 | 0.72 | 367ms | 1.19s | -0.76 | 0.87 | 1.63 | 7 | 11
GOOGLE_SERVICES : CryptauthEnroller | -0.50 | 0.00 | 0.50 | 0 | 887ms | -0.15 | 0.00 | 0.15 | 0 | 1
GOOGLE_SERVICES : *gms_scheduler*/com.google.android.gms/.phenotype.service.sync.PhenotypeConfigurator | -0.44 | 0.00 | 0.44 | 0 | 1.058s | -0.30 | 0.00 | 0.30 | 0 | 2
GOOGLE_SERVICES : *gms_scheduler*/com.google.android.gms/.clearcut.uploader.QosUploaderService | -0.37 | 0.57 | 0.94 | 1.746s | 2.133s | -0.56 | 0.62 | 1.18 | 5 | 8
org.mozilla.firefox : *job*/org.mozilla.firefox/androidx.work.impl.background.systemjob.SystemJobService | -0.28 | 0.55 | 0.83 | 2.203s | 2.039s | -0.05 | 0.25 | 0.30 | 2 | 2
ANDROID_SYSTEM : AnyMotionDetector | -0.25 | 1.26 | 1.50 | 7.13s | 7.432s | -0.02 | 0.12 | 0.15 | 1 | 1
ANDROID_SYSTEM : *job*/android/com.android.server.ZramWriteback | 0.25 | 0.25 | 0.01 | 371ms | 29ms | -0.02 | 0.12 | 0.15 | 1 | 1

Mobile Traffic and WiFi Traffic are separate therefore cannot be compared here. But the traffic is almost the same.

Kernel Wakesources:
Name | Diff Sec/Hr | #1 Sec/Hr | #2 Sec/Hr | #1 Total Duration | #2 Total Duration | Diff Count/Hr | #1 Count/Hr | #2 Count/Hr | #1 Total Count | #2 Total Count
alarmtimer | -61.18 | 15.38 | 76.57 | 2m4.337s | 8m38.106s | -29.20 | 7.30 | 36.50 | 59 | 247
hal_bluetooth_lock | -6.92 | 0.00 | 6.92 | 0 | 46.804s | -6.06 | 0.00 | 6.06 | 0 | 41
dumpstate_wakelock | -6.68 | 0.00 | 6.68 | 0 | 45.215s | 0.00 | 0.00 | 0.00 | 0 | 0
NETLINK-health@2.1-serv | -3.00 | 1.84 | 4.85 | 14.891s | 32.796s | -1134.17 | 924.99 | 2059.16 | 7477 | 13934
NETLINK-hvdcp_opti | -2.40 | 1.45 | 3.85 | 11.755s | 26.072s | -1292.20 | 1043.01 | 2335.22 | 8431 | 15802
NETLINK-batterysecret | -2.32 | 1.38 | 3.70 | 11.148s | 25.009s | -1307.96 | 1054.89 | 2362.85 | 8527 | 15989
bq2597x-standalone | -1.36 | 0.96 | 2.31 | 7.734s | 15.651s | -104.20 | 50.23 | 154.43 | 406 | 1045
netmgr_wl | -0.40 | 0.18 | 0.58 | 1.432s | 3.903s | 20.49 | 20.78 | 0.30 | 168 | 2
c440000.qcom,spmi:qcom,pm8150b@2:qpnp,fg | -0.34 | 0.24 | 0.58 | 1.964s | 3.919s | -743.11 | 515.38 | 1258.49 | 4166 | 8516
-hvdcp_opti | -0.11 | 0.06 | 0.18 | 497ms | 1.185s | -193.21 | 122.60 | 315.81 | 991 | 2137

Now HERE Comes the interessing part!
Abort: Callback failed on alarmtimer happens WAY more often on WiFi!
Abort: Last active Wakeup Source: qrtr_0 only happens on Mobile
-1 misconfigured IRQ 666 glink-native_slpi is almost only in WiFi
And the last 3 are only happening in WiFi but are so rare and short that they don't really matter.

Kernel Wakeup Reasons:
Name | Diff Sec/Hr | #1 Sec/Hr | #2 Sec/Hr | #1 Total Duration | #2 Total Duration | Diff Count/Hr | #1 Count/Hr | #2 Count/Hr | #1 Total Count | #2 Total Count
Abort: Callback failed on alarmtimer in platform_pm_suspend+0x0/0x4c returned -16 | -63.30 | 15.87 | 79.17 | 2m8.279s | 8m55.717s | -28.88 | 7.18 | 36.06 | 58 | 244
-1 misconfigured IRQ 667 glink-native_modem | -2.63 | 9.71 | 12.35 | 1m18.529s | 1m23.557s | -11.02 | 24.74 | 35.76 | 200 | 242
-1 misconfigured IRQ 666 glink-native_slpi | -1.51 | 0.04 | 1.55 | 302ms | 10.46s | -6.23 | 0.12 | 6.35 | 1 | 43
556 qpnp_rtc_alarm | -1.05 | 0.93 | 1.98 | 7.505s | 13.397s | -4.33 | 11.63 | 15.96 | 94 | 108
Abort: Last active Wakeup Source: qrtr_0 | 0.99 | 0.99 | 0.00 | 7.981s | 0 | 1.73 | 1.73 | 0.00 | 14 | 0
Abort: Pending Wakeup Sources: IPA_CLIENT_APPS_LAN_CONS | -0.52 | 0.32 | 0.84 | 2.623s | 5.69s | 0.85 | 2.47 | 1.63 | 20 | 11
Abort: Pending Wakeup Sources: NETLINK-batterysecret NETLINK-hvdcp_opti NETLINK-health@2.1-serv | -0.25 | 0.00 | 0.25 | 0 | 1.708s | -0.74 | 0.00 | 0.74 | 0 | 5
Abort: Last active Wakeup Source: c440000.qcom,spmi:qcom,pm8150b@2:qpnp,fg | 0.25 | 1.91 | 1.66 | 15.429s | 11.216s | -1.03 | 1.48 | 2.51 | 12 | 17
Abort: Last active Wakeup Source: eventpoll-health@2.1-serv | -0.06 | 0.00 | 0.06 | 0 | 408ms | -0.15 | 0.00 | 0.15 | 0 | 1
Abort: Pending Wakeup Sources: NETLINK-batterysecret NETLINK-hvdcp_opti rmnet_ipa0 NETLINK-health@2.1-serv | -0.05 | 0.00 | 0.05 | 0 | 350ms | -0.15 | 0.00 | 0.15 | 0 | 1

You can find both tests in the ArrowOS Rom thread: Here