Teste de desempenho do site: como melhor aproximar o desempenho do computador?

Eu tenho alguns CSS e animação intensiva para navegadores na minha página da Web e gostaria de determinar se o usuário tem um PC rápido ou não, para que eu possa dimensionar as coisas de acordo para fornecer a melhor experiência.

estou usandohttp://detectmobilebrowser.com's script para detectar todos os dispositivos móveis, e eu vou incluir a cláusula/android|ipad|ipod|playbook|silk/i.test(a) para incluir todos os tablets também.

No entanto, isso não faz e não pode realmente abordar o hardware real. Não é muito longe para pintar uma imagem do que estou procurando.

Um iPhone 4S, por exemplo, será muito mais capaz do que muitos dos dispositivos combinados pelo detector de agente de usuário móvel, e isso não permite que ele se diferencie. Alguém pode executar o Google Chrome em uma máquina Pentium II (de alguma forma) e deseja visualizar minha página. (Essa pessoa provavelmente não tem um iPhone 4S)

Obviamente, para realmente ter uma ideia para isso, terei que fazer alguns testes de desempenho reais e, como no teste de desempenho com qualquer tipo de aplicativo, faz sentido testar apenas o desempenho do tipo de tarefas que o aplicativo realmente executa.

Mesmo com isso em mente, acho que seria difícil obter números razoavelmente precisos antes que a rotina de testes de desempenho demorasse demais e o usuário ficasse impaciente. Então, isso provavelmente significa ir adiante, a menos que eu queira que a primeira impressão inicial seja perfeita. Bem, isso realmente acontece ser o caso. Portanto, não posso me sair com a medição de desempenho "após a primeira execução" e ajustar os parâmetros posteriormente.

Então, o que eu tenho é basicamente tentar executar uma tarefa semelhante no carregamento inicial da página, de uma maneira que depende da velocidade de processamento e renderização do navegador, sem apresentar nada para o usuário (para que o usuário ainda pense a página está sendo carregada) e, em seguida, preferencialmente, dentro de um segundo ou dois, obtenha números precisos o suficiente para definir parâmetros para a página real para animar e apresentar de uma maneira agradável que não se assemelhe a uma apresentação de slides.

Talvez eu pudesse colocar um branco de página inteira<div> sobre o meu caso de teste para que eu possa evitar que o usuário veja o que está acontecendo e espero que o navegador não seja inteligente, evitando fazer todo o trabalho.

Alguém já fez isso?

Eu sei que as pessoas vão dizer "você provavelmente não precisa fazer isso", ou "tem que haver uma maneira melhor" ou "reduzir a quantidade de efeitos".

A razão para fazer qualquer uma das coisas que estou fazendo na página é para que pareça bom. Esse é o ponto inteiro disso. Se eu não me importasse com isso, essa questão não existiria. O objetivo é dar ao javascript a capacidade de determinar parâmetros suficientes para fornecer uma experiência incrível em um computador poderoso e também uma experiência aceitável em um computador menos capaz. Quando mais energia estiver disponível, ela deve ser aproveitada. Então, espero que isso possa explicar por que tais sugestões não são respostas válidas para a pergunta.

questionAnswers(3)

yourAnswerToTheQuestion