Os Xeons duplos melhorarão os tempos de construção do Android Studio?

7

Eu sou um desenvolvedor Android e gasto muito tempo esperando, então comecei a considerar uma configuração dupla do Xeon.

Eu sei que, por exemplo, para uma solução de renderização 3D - os núcleos adicionais melhoram a velocidade de forma bastante linear, então minha pergunta é: o tempo de construção do Android Studio diminuirá o mesmo? E se não linearmente, pelo menos notoriamente para fazer a atualização valer a pena?

Eu sei que o AS tem suporte para vários núcleos, mas só queria ter certeza de que ele usaria todos os 20 núcleos da mesma forma como faz 4 antes de eu sair e gastar o dinheiro.

Seria ótimo ouvir alguém com experiência comparando Xeons duplos com configurações do i7 para as mesmas construções de projeto, mas qualquer informação ajudará!

-

ATENÇÃO:

Antes de recomendar outras formas de melhorar a velocidade - garanto a você que tentei de tudo - SSD rápido, muita RAM, todas as opções possíveis de Gradle e IDE, abstraídas algumas dependências para construir apenas versões de lançamento para evitar multidex, a última versão do AS, Instant run / JRebel, etc.

    
por Alexandre G 19.08.2016 / 01:19

3 respostas

14

Então eu tive que descobrir isso da maneira mais difícil. No meu caso, com meu projeto e hardware, não usei todos os núcleos. Eu fiz alguns benchmarks básicos com hardware diferente que eu tinha, mas leve-os com um grão de sal - você deve entender que os requisitos e configurações podem afetar tremendamente o resultado.

Detalhes do teste

Então este é o hardware que eu tinha:

  • i7 6700k (4 núcleos)
  • i7 3770k (4 núcleos)
  • 2 x Xeon E2650 v4 (24 núcleos)

Tudo funcionando no clock base com hyperthreading. E os SSDs:

  • SSD básico Samsung 840 EVO de 240 GB
  • SSD 240GB da Mushkin ECO
  • Samsung SS951 NVMe SSD 250 GB

Cada unidade tinha o Windows 10 instalado, então eu tentei testar duas coisas - velocidade do processador e velocidade da unidade, trocando unidades entre computadores.

Xeons e 6700k tinham RAM DDR4 e 3770k tinham DDR3.

Leia o gráfico de baixo para cima:

Assim, o processo, que não era muito científico, envolvia a repetição de tarefas algumas vezes e depois a média delas.

Reconstrua depois de limpar: Criar - > Projeto limpo, construir - > Reconstruir projeto

Reconstruir: construir - > Projeto de reconstrução

Iniciar quando criado: inicie e observe o horário gradle no primeiro lançamento após a reconstrução

Inicie novamente: continue a execução sem alterações no daemon morno do gradle

Alterar um log: altere a string dentro do Log.v do Java e reconstrua-a

Com a instalação sem alterações: tempo decorrido desde o pressionamento do botão de execução até a abertura na tela

Horário de lançamento do simulador: acima do tempo menos o tempo de compilação do Gradle

As conclusões para mim foram:

  1. Os SSDs mais rápidos reduzem os segundos
  2. Por enquanto, um deve ficar com as CPUs de núcleo único mais rápidas

Espero que ajude alguém!

P.S tentou o benchmarking do Xcode no mesmo hardware - praticamente a mesma história

    
por 25.10.2016 / 06:52
1

Há mais uma opção para aumentar a velocidade de compilação: quando você torna seu aplicativo modular, ele é construído de forma assíncrona, de modo que cada módulo terá seu núcleo de CPU.

E mais uma coisa. Cuide de suas bibliotecas. Por exemplo, na maioria dos casos, você não precisa de toda a biblioteca de suporte do Google, excluir partes não usadas ou importar apenas as necessárias.

E mais uma coisa. Eu não sei como o sistema operacional influencia a velocidade de construção, mas acho que de alguma forma faz. Quando uso Linux vs Windows, é muito mais rápido construir o projeto.

    
por 02.09.2017 / 09:43
1

Tentei medir a velocidade do Android Studio 3.1.4 no mesmo hardware: MacBook Pro 2011, RAM 4 GB, SSD 240 GB Samsung, Core i5 2.4GHz. Eu instalei nesta máquina 3 sistemas operacionais diferentes: Windows 10, MacOS Hight Sierra 10.13, Ubuntu 18.04. O tempo de construção médio (execução do comando: gradlew clean build, gradlew clean assembleRelease) no MacOS / Ubuntu foi cerca de 30% mais rápido do que no Windows.

Na minha outra máquina de trabalho: Core i5 3.0 Ghz 7400, RAM 16Gb, SSD 250Gb. O tempo de compilação leva 4.34min na máquina com o Windows 10. O mesmo projeto em um processador um pouco mais lento, mas com a mesma RAM e SSD e ele está rodando o Ubuntu 16.04, o tempo de construção leva duas vezes mais rápido !! Bem, fiquei chocado com os resultados, mas ainda assim escolho o Windows como máquina de desenvolvimento, porque é muito mais confortável para mim usar teclado e sotfware utilizáveis do que em sistemas semelhantes a Unix. E mesmo se eu tivesse que escolher entre MacOS e Ubuntu - o mac é realmente muito mais fácil de configurar tudo, e O Ubuntu é muito complexo para ser usado por pessoas comuns. A escolha é sua.

    
por 04.09.2018 / 15:03