[FFmpeg-devel] CI
Timo Rothenpieler
timo at rothenpieler.org
Thu Aug 21 01:31:46 EEST 2025
On 8/20/2025 9:25 PM, Michael Niedermayer via ffmpeg-devel wrote:
> Hi
>
> On Wed, Aug 20, 2025 at 05:56:27PM +0200, Timo Rothenpieler via ffmpeg-devel wrote:
>> On 8/20/2025 1:26 AM, Michael Niedermayer via ffmpeg-devel wrote:
>>> Hi
>>>
>>> It seems the forgejo CI takes about
>>> 13min to do fate on aarch64 and x86-64 and build on win64
>>>
>>> Locally i run
>>> fate + install on x86-64
>>> build on x86-32, mingw64, arm32, mips, ppc, x86-64 + shared libs
>>> testprogs alltools examples build on x86-64, x86-32 and arm32
>>> in 2min 44sec
>>>
>>> can we improve the speed vs amount of tests ratio ?
>>> (its not a problem ATM, i did in fact not even notice as i never waited on it)
>>>
>>> Iam just seeing the difference in time and i think there is potential for
>>> optimization here
>>>
>>> I dont think my box here is really special, just a
>>> AMD Ryzen 9 3950X 16-Core + Samsung SSD 970 PRO
>>
>> Well, the test runners are 4 cores and 8GB of RAM. So that'll be the primary
>> difference in speed.
>> I think they're performing pretty good for being just that.
>>
>> We could of course throw money at the problem and turn them into 16 core
>> machines. That would up the hosting cost of the runners from currently
>> 3*7.5€ a month to 3*30€ a month. Just for the runners.
>>
>> imo the current CI turnaround times are fine. 15-20 minutes per job is fine,
>> as long as they can all run in parallel.
>
> Option 1: 15-20 min CI turnaround, 270 € per year
> Option 2: 4-5? min CI turnaround, 1080 € per year
>
> we have over 150k $ it seems
>
> Good use of capital can also lead to more donations
>
> I think the main question is, "would we benefit from the faster trunaround"?
> or not ?
You have to keep in mind, 4 Core 8GB is also the swarm of runners we get
for free from Microsoft via GitHub.
So the choice is actually "Be able to process 20+ jobs in parallel that
take 15-20 minutes each" vs. "Be able to process 3 or so at a time
(roughly one PR/push) in 5 minutes".
So realistically, unless we also pay for an actual swarm of runners
ourselves(which would cost 10k or more a year while being idle 95% of
the time) the total turnaround time including wait for a free runner is
probably still better with more of the smaller runners than less of the
big ones.
It'd also make it a lot more pressing to think about every single CI job
we add, vs. having a bit of leeway due to the over-abundance of runners.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4742 bytes
Desc: S/MIME Cryptographic Signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20250821/f279d06d/attachment.bin>
More information about the ffmpeg-devel
mailing list