1

Are there concrete reasons to select one agent OS over another for cross-platform apps? I see the choice frequently being made based on the developer's OS preference. I created a .net core console app this morning and a pipeline to build it against both windows and ubuntu hosted agents.

stages:
- stage: windows
  jobs:
  - template: build.yml
    parameters:
      pool: windows-latest 
- stage: ubuntu
  jobs:
  - template: build.yml
    parameters:
      pool: ubuntu-latest

I ran the pipeline several times. The windows build time vs ubuntu was considerably larger. I was able to use the analytics right out of the box in AzDO to get some insight:

enter image description here

I shared this internally and another dev tried switching their pipeline to Ubuntu. They saw roughly a 30% decrease in run time.

Questions following this experiment:

Are there types of tasks that run faster on Ubuntu vs Windows and vis versa due to the OS architecture?

Is it possible to "score" a pipeline in order to estimate the best OS to run it on?

Is it reasonable to make a recommendation to build cross-platform apps on Ubuntu agents over Windows? It seems this could reduce build times leading to less developer wait time and reduced spending on hosted parallel jobs.

JDH
  • 2,618
  • 5
  • 38
  • 48
  • 4
    I request this be reopened. It does not invite opinion based responses. The first sentence of the post does not invite opinions by asking, "Are there concrete reasons...". The continues by providing the evidence I was able to obtain by experimentation, and calls out that this was further supported by independent experimentation. None of this is opinion based nor does it invite opinion based responses. I have further refined the question to invite fact based responses and narrow the response topics. – JDH Apr 22 '21 at 18:04

1 Answers1

2

Is it reasonable to make a recommendation to build cross-platform apps on Ubuntu agents over Windows?

Thank you for your sharing. I've tested some cross-platform scripts and found that they generally run less on Ubuntu agent than on Windows agent.

So, it's fair to say that if you don't care about the agent operating system, using Ubuntu is generally more time efficient than using Windows.

Jane Ma-MSFT
  • 4,461
  • 1
  • 6
  • 12