Direct answer
Convert cycles to joules directly (cycles times joules-per-cycle), convert the battery's mAh-and-voltage rating to joules (amp-hours times volts times 3600 seconds/hour), then divide. For this specific input, the compute burst consumes about 7.5×10−5% of the battery, which is negligible in isolation. That is the real point of the exercise: a single billion-cycle burst almost never matters for battery life on its own, what matters is how often it repeats, plus everything else on the device (radio, screen) that usually dwarfs a single CPU burst.
Structured elaboration
Energy consumed by the computation:
Ecompute=Ncycles×Ecycle=109×3×10−11 J=0.03 J
Energy available in the battery, converting amp-hours and volts to joules via 1 Ah=3600 C and E=Q×V:
Ebattery=3.0 Ah×3.7 V×3600 hs=39,960 J(≈11.1 Wh)
Fraction of battery consumed:
%consumed=EbatteryEcompute×100=39,9600.03×100≈7.51×10−5%
The step that makes the repeat-rate question answerable: how long does one burst take? Energy per cycle says nothing about time, so add the one missing quantity, the clock. At a 2.5 GHz core:
tburst=2.5×109 cycles/s109 cycles=0.4 s
That single number bounds everything that follows. One core can start this computation at most 1/0.4=2.5 times per second, so any proposed repetition rate above 2.5 per second per core is not a heavier workload, it is an impossible one. It is worth checking a proposed duty cycle against this before computing its energy, because a rate that exceeds the core's throughput produces a perfectly correct-looking energy number for a scenario that cannot occur.
Assumptions made explicit: 3×10−11 J/cycle is treated as an already-averaged, workload-representative figure, when in reality per-cycle energy varies a lot with the DVFS (dynamic voltage and frequency scaling) state, which core cluster (performance versus efficiency) is active, and instruction mix, so a single constant is a simplification, not a measurement of this exact workload. A quick sanity check on it: 3×10−11 J/cycle×2.5×109 cycles/s=0.075 W of sustained core power, which is an efficiency-core figure; a performance core under sustained load is around an order of magnitude higher, so if this work lands on the big cluster every percentage below scales up with it. The calculation also ignores DVFS transition overhead and other components drawing power during the burst (memory controller, caches), and treats 3.7 V as the battery's nominal average voltage rather than its true instantaneous voltage, which drifts as a Li-ion cell discharges.
Worked example
The arithmetic above is the worked example. To show why the headline number is deceptively small, extend it to a sustained workload, using the 0.4 s burst time to keep the scenario physically possible. A core doing nothing but this computation back to back runs 86,400/0.4=216,000 bursts in 24 hours:
Etotal=216,000×0.03 J=6,480 J
%consumed (one core saturated, 24 h)=39,9606,480×100≈16.2%
The same per-event cost at lower, more realistic duty cycles:
| repetition rate | bursts per hour | energy per hour | battery per day |
|---|
| once per minute | 60 | 1.8 J | 0.11% |
| once per 10 seconds | 360 | 10.8 J | 0.65% |
| back to back (one core saturated) | 9,000 | 270 J | 16.2% |
The exact same per-event energy cost is irrelevant as a one-shot number and material as a sustained workload: the repetition rate, not the per-event cost, is what actually decides whether this matters for battery life. It is also worth noticing that even the saturated-core row, a full day of one core doing nothing else, costs only about a sixth of the battery at the assumed per-cycle energy, which is the sanity check that the assumed 3×10−11 J/cycle describes a small, efficient core rather than a peak-performance one.
Trade-offs & pitfalls
Reporting only the single-shot percentage (as the headline framing invites) massively understates real-world impact for anything that runs repeatedly, so an energy-optimization decision needs the duty cycle, not just the per-operation cost. Equally, a duty cycle quoted without checking it against the burst's wall-clock time can describe work the hardware cannot physically perform, which is the mirror-image error and just as easy to make. A workload can also look cheap in cycles yet still be expensive in energy if it forces a higher DVFS state (waking the performance cluster) or keeps the radio or GPS active longer than the compute itself takes, both of which this simple per-cycle model does not capture at all.