Categories:
Loading... Search articles

Search for articles

Sorry, but we couldn't find any matches...

But perhaps we can interest you in one of our more popular articles?
How Mac Pro machines are saving you 50% of your mobile app build time

How Mac Pro machines are saving you 50% of your mobile app build time

Dec 6, 2020

Written by Souvik Biswas

Normally, the Codemagic CI/CD builds run on a macOS standard VM (which is basically a Mac mini system). You can upgrade to their “Pay as you go” or “Business” plan, which gives you access to their macOS premium VM (which is a more powerful Mac Pro system).

To learn more about Codemagic’s pricing options, click here.

But if your team has a large project and it takes a lot of time to complete the whole pipeline, then check out Codemagic’s Enterprise Plan. Along with giving you access to the Mac Pro systems, it will also provide you with a number of customization options as well as enhanced security for your build environment.

These Mac Pro systems can decrease your build times by up to 50%.

Comparison

To check how much faster Mac Pro systems are in reality, let’s run some tests with some real projects.

First of all, I will be building a project named sign_in_flutter.

This project is available on GitHub here.

There are three workflows in this project:

  1. Default Workflow (builds for both Android and iOS platforms)
  2. Android Workflow (builds for Android platform only)
  3. iOS Workflow (builds for iOS platform only)

Let’s start with building, testing and deploying the Default Workflow on both of the machines.

Default Workflow

Build comparison
Build comparison

The build on Mac mini took 8m 6s to finish, whereas on Mac Pro, the build finished in just 4m 57s.

So, on Mac Pro, the build was faster by about 61%.

Now, let’s see how it performs when running parallel workflow builds.

Parallel workflow

This time, I will be using a different project called counter_flutter, which has two workflows:

  1. Android Workflow
  2. iOS Workflow

This project is available on GitHub here.

On Mac mini, the Android Workflow took 5m 22s, and the iOS Workflow took 3m 55s. As they were running in parallel, the effective time for the build on Mac mini is 5m 22s.

On Mac Pro, however, the Android Workflow took only 2m 23s, and the iOS Workflow took merely 1m 51s. And as they were running in parallel, the effective time for the build on Mac Pro is just 2m 23s.

The Android Workflow was about 44% faster, and the iOS Workflow was about 47% faster on Mac Pro.

Effectively, the concurrent build was 44% faster on Mac Pro.

So, if you want to run multiple parallel workflows with different configurations and different platforms for each one of them, you will also benefit greatly from the powerful Mac Pros.

Though the build times may vary due to various other factors related to the build machine, after running a number of tests, the Mac Pro builds are faster by about 50% on average.

Codemagic for enterprises

If your team requires a more customized and secured environment for running your builds, check out Codemagic’s Enterprise Plan.

The Enterprise Plan provides the following benefits:

  • Access to Mac Pros for faster build times of up to 50% compared to the Mac mini.
  • Dedicated machines for running your build in an isolated environment with increased security.
  • A private cloud with full control over network access.
  • The ability to run concurrent builds.
  • In-app support to maximize your Codemagic experience.

You can contact Codemagic here for a tailored CI/CD experience.


Souvik Biswas is a passionate Mobile App Developer (Android and Flutter). He has worked on a number of mobile apps throughout his journey, and he loves open source contribution on GitHub. He is currently pursuing a B.Tech degree in Computer Science and Engineering from Indian Institute of Information Technology Kalyani. He also writes Flutter articles on Medium - Flutter Community.

How did you like this article?

Oops, your feedback wasn't sent

Latest articles

Show more posts