Nous achetons un serveur pour exécuter divers logiciels de bioinformatique. Le paquet principal sur notre machine de test est multi-fil et est totalement lié au CPU, l'IO et la RAM ne limitent pas la performance - le CPU fonctionne à 100% tandis que la RAM et l'IO du disque sont à des niveaux minimaux.
Nous voulons être sûrs d'obtenir le(s) meilleur(s) processeur(s) pour notre charge de travail, mais étant donné la liste assez large de Xeon d'Intel à choisir, comment pouvons-nous sélectionner le meilleur pour nos besoins ?
Je comprends qu'à un niveau fondamental, "plus" = "mieux", mais comment puis-je savoir si, par exemple, une vitesse de bus plus rapide fait une plus grande différence par rapport à un grand cache ou si plus de cœurs sont meilleurs que la vitesse d'horloge.
Existe-t-il donc un moyen de profiler notre logiciel pour savoir quel processeur choisir ? Le logiciel en question est une collection de scripts Python, donc nous pouvons faire le profilage sur Linux ou Windows.