COMPTOIR
register

98 cœurs ARM testés, quelles performances face à la concurrence ?

Si l'architecture ARM fait ses premiers pas dans l'écosystème Windows, elle est déjà supportée par Linux depuis quelques temps, en témoigne le Raspberry Pi pour les solution légères, mais également quelques monstres proposé par Cavium (et bientôt d'autres concurrents ?) pouvant offrir jusqu'à 48 cœurs par CPU.

 

Phoronix a eu un accèes distant à un FOXCONN C2U4N_MB, un bi-socket contenant deux CPU ThunderX en 28 nm cadencés à 2.5 GHz pour un TDP inférieur à 100 W chacun ; pour un total de 96 cœurs. Cela a été l'occasion parfaite pour pour lancer quelques programmes afin de juger des performances du bouzin. Le reste de la configuration comprend 4x32 Go de DDR4 @ 2133 MHz, 250 Go de SSD Samsung ; du côté de la distribution, on retrouve un classique Ubuntu 16.04, en aarch64 bien sûr.

 

Au niveau des concurrents, un bon panel d'autres CPU répondent à l'appel, allant de Ryzen 3/Core i3 aux Threadripper et autres EPYC ou core i9. Les performances sont assez hétérogènes, pouvant aller de pair avec le simple R3 1300X en encodage vidéo et pourtant concurrence un i9-7980XE sur John The Ripper. Sans surprise, ces CPU trouveront leur intérêt lorsque des multiples petites tâches simples et indépendantes sont lancées en parallèle, par exemple lors de benchmarks de traçage de rayons ; mais pour une utilisation de type gaming (non testée), le faible IPC rendra de toute manière injouable toute configuration dans l'immédiat. Peut être pour un futur plus lointain ?

 

cavium soc arm thunderx

 

Un poil avant ?

La 4G s'invite sur la Lune !

Un peu plus tard ...

Dell ne compte pas offrir un catalogue équilibré entre AMD et Intel de sitôt

Les 24 ragots
Les ragots sont actuellement
ouverts à tous, c'est open bar !
par shrd, le Vendredi 02 Mars 2018 à 21h16  
Tous les algos ne sont pas parallelisables, il faudra toujours des coeurs rapides energivores. Et les ordis quantiques programmables a la volée ne sont pas pour tout de suite.
par Un ragoteur tout mignon embusqué, le Vendredi 02 Mars 2018 à 14h32  
 

Et c'est pas un choix de philosophique, mais une obligation absolue imposé par la technologie.


Tout ce que tu viens de débiter ici démontre clairement un aveuglement idéologique.

Je rappelle simplement qu'un microprocesseur informatique est un circuit généraliste exécutant une séquence d'instructions.

Actuellement il existe 2 types de microprocesseur: le RISC à jeu d'instructions réduit (e.g. architectures ARM) et le CISC à jeu d'instructions complexe (e.g. architectures x86).

Aujourd'hui le marché PC est essentiellement composé de microprocesseurs CISC car la complexité (cf. décodage d'instructions) de la programmation est déléguée au matériel pour un coût acceptable (cf. prix ciblé ) et cela permet de limiter le coût de la main d'oeuvre allouée au développement logiciel.

Si le parallélisme peut être une solution parmis d'autre pour augmenter les performances, cependant ce n'est pas la seule.

Le but d'un logiciel est de proposer une solution technique à un problème donné. Il peut le faire aussi bien en employant uniquement un circuit généraliste comme un CPU ou s'appuyer sur un circuit spécialisé comme un GPU.

Il est évident que pour un nombre de transistors fixé, un circuit spécialisé est beaucoup plus efficace qu'un circuit généraliste.

De plus, le parallélisme ce n'est pas que la multiplication des coeurs car un pipeline est une autre forme de parallélisme qui est déjà présente sur l'ensemble des CPU.

Plutôt que de multiplier bêtement les coeurs, on peut imaginer les fusionner en SuperALU et SuperFPU avec une autovectorisation matérielle. Ainsi tous les logiciels profiteront du parallélisme pour un coût de développement logiciel proche de zéro.

En effet, l'optimisation logicielle représente un coût non négligeable.
par Un ragoteur tout mignon embusqué, le Vendredi 02 Mars 2018 à 14h02  
par Un ragoteur macagneur embusqué le Vendredi 02 Mars 2018 à 09h11
De moins point de vue, la parallélisation est la seule solution pour l'augmentation des performance,s parce que les gains en terme d'IPC, ou de fréquence ne sont plus que très relatif.
Ici tes propos s'inscrivent plus dans un dogme religieux que dans une vérité scientifique.

 

La seule solution pour augmenter significativement la puissance des CPUs passe par l'augmentation du nombre de cœurs.
[/quote@

Il n'y a pire aveugle que celui qui ne veut pas voir...

[quote]
Si on veut pouvoir en tirer partit, il va falloir paralléliser, et le faire correctement.
C'est le software qui va devoir s'adapter au hardware, pas l'inverse.


Tu pars du postulat erroné que la technologie est figée pour l'éternité.
par Un #ragoteur déconnecté embusqué, le Vendredi 02 Mars 2018 à 11h08  
par Un ragoteur macagneur embusqué le Vendredi 02 Mars 2018 à 09h11
Si on veut pouvoir en tirer partit, il va falloir paralléliser, et le faire correctement.
C'est le software qui va devoir s'adapter au hardware, pas l'inverse.
Ca commence mal dès l'instant où tu penses que les "multi-coeurs" tels qu'on les conçoit maintenant c'est encore quelque chose de "normal"... le SMT outrepasse déjà pas mal cette notion, mais surtout il faut tenir compte de l'existence d'architectures nettement plus adaptées au traitement parallèle, qui auraient dû nous inciter à alléger les CPU de pas mal de trucs à l'utilité discutable dans ce contexte.

La meilleure solution pour avoir de bonnes perfs, c'est le processeur central single core in order avec des co-processeurs plus ou moins spécialisés, passé ça toute notion d'optimisation passe déjà sérieusement à la trappe.
par Un ragoteur macagneur embusqué, le Vendredi 02 Mars 2018 à 09h16  
par Un ragoteur sans nom embusqué le Jeudi 01 Mars 2018 à 23h48
C'est un argument complètement foireux! Tous système qui se respecte gère l'exécution multitâche sous forme de priorité. Réserver un coeur surnuméraire pour le système est une fausse bonne idée car c'est une source de gaspillage des ressources systèmes (cf. temps d'occupation processeur).
Tu n'as pas compris son message.
Si un jeu utilisent deux cores à 100%, ou pas loin, le CPU peut ne pas être limitant, mais à condition que rien ne tourne à côté.
Si, comme dans la vrai vie, pleins d'auters choses tournent, avoir des cores en plus donne une réserve de puissance pour l'exécution de ces taches.

Lorsque la presse spécialisé fait des benchmarks, afin de ne pas se retrouver pollué par d'autres facteurs, les machines de test sont épurées pour ne faire tourner que le benchmark en question. Ce qui ne reflète pas complètement la réalité.
Un logiciel qui tourne bien sur un dual core lors de benchmark, pourra voir ses performances chuter significativement dans la vrai vie, pour cause de limitation CPU, à cause de ça.
par Un ragoteur macagneur embusqué, le Vendredi 02 Mars 2018 à 09h11  
par Un ragoteur sans nom embusqué le Jeudi 01 Mars 2018 à 23h43
La réponse est très simple: tout peut être parallélisé.

La véritable question est de savoir si parallélisme est l'alpha et l'oméga de la progression des performances.
De mon point vue, c'est un leurre technologique car paralléliser des algorithmes foireux n'est qu'un plâtre sur une jambe de bois. De plus, le parallélisme forcené est complètement contre-productif du fait d'un fort risque de déséquilibre entre routines souvent interdépendantes.
De moins point de vue, la parallélisation est la seule solution pour l'augmentation des performance,s parce que les gains en terme d'IPC, ou de fréquence ne sont plus que très relatif.
La seule solution pour augmenter significativement la puissance des CPUs passe par l'augmentation du nombre de cœurs.
Si on veut pouvoir en tirer partit, il va falloir paralléliser, et le faire correctement.
C'est le software qui va devoir s'adapter au hardware, pas l'inverse.
Et c'est pas un choix de philosophique, mais une obligation absolue imposé par la technologie.
par $k embusqué, le Vendredi 02 Mars 2018 à 03h57  
Non sans déconner c'est le gpu qui limite et qui lisse donc les résultats entre proc en 4k...

Mais on y va pas tous à court ou à moyen terme dans la 4k ? Dans la meilleure résolution et donc le top actuel il n'y pas de différence avec une 1080Ti en un 2c/4t et un 8c/16t, mais il ne faut pas le signaler, il faut inciter les gens à changer leurs procs dés maintenant ?

Puis c'est bien connu que les mecs qui font des tests ne le font pas sur un os et que donc ce n'est pas compris dans leurs résultats...
par Lol hélène 101 embusqué, le Vendredi 02 Mars 2018 à 00h48  
par $k embusqué le Jeudi 01 Mars 2018 à 18h37
1080p, moi je parle de 4k...
Comme godwin.
Facteur limitant est le GPU.
Tu testera le même jeu avec les même CPU mais avec plusieurs generation TTHGD de carte graphique Nvidia genre 2022-2024. Il y aura surement une difference entre des double coeur et du octocoeur (à même freg et archi.)
Je crois que Assassin C: origin tire même partie de plus de 8 coeur (ou du moins le resultat est à signaler)
par Un ragoteur sans nom embusqué, le Jeudi 01 Mars 2018 à 23h48  
par Un ragoteur Gaulois embusqué le Jeudi 01 Mars 2018 à 19h48
De toute façon il est toujours utile d'avoir un peu plus de coeurs que le nombre utilisé par l'application, surtout si elle les monopolise car cela permet au système et aux taches de fond de ne pas empiéter dessus.
C'est un argument complètement foireux! Tous système qui se respecte gère l'exécution multitâche sous forme de priorité. Réserver un coeur surnuméraire pour le système est une fausse bonne idée car c'est une source de gaspillage des ressources systèmes (cf. temps d'occupation processeur).
par Un ragoteur sans nom embusqué, le Jeudi 01 Mars 2018 à 23h43  
par Un champion du monde embusqué le Jeudi 01 Mars 2018 à 18h22
Donc qu'est-ce qui peut être parallélisé dans un jeu vidéo sachant que le jeu ne "doit pas allé trop vite" pour ne pas perdre les lents humains que nous sommes ?
La réponse est très simple: tout peut être parallélisé.

La véritable question est de savoir si parallélisme est l'alpha et l'oméga de la progression des performances.

De mon point vue, c'est un leurre technologique car paralléliser des algorithmes foireux n'est qu'un plâtre sur une jambe de bois. De plus, le parallélisme forcené est complètement contre-productif du fait d'un fort risque de déséquilibre entre routines souvent interdépendantes.
par Thibaut G., le Jeudi 01 Mars 2018 à 20h32  
par Un ragoteur Gaulois embusqué le Jeudi 01 Mars 2018 à 19h48
De toute façon il est toujours utile d'avoir un peu plus de coeurs que le nombre utilisé par l'application, surtout si elle les monopolise car cela permet au système et aux taches de fond de ne pas empiéter dessus.
exactement, y a toujours un coeur pompé par l'OS et les tâches de maintenance/fonctionnement qui tournent et qui donc ne participe pas au jeu
par Un ragoteur Gaulois embusqué, le Jeudi 01 Mars 2018 à 19h48  
par Un adepte de Godwin embusqué le Jeudi 01 Mars 2018 à 19h20
Comment être aussi stupide pour ne pas comprendre qu'augmenter la définition lisse les différences de perfs entre les CPU car c'est le GPU le facteur limitant. Cela ne permet en rien d'affirmer que les jeux ne profitent jamais de la présence de plus de 4 coeurs, surtout sur la base d'une seul exemple et d'une seule définition peu appropriée pour effectuer une comparaison sensée.
De toute façon il est toujours utile d'avoir un peu plus de coeurs que le nombre utilisé par l'application, surtout si elle les monopolise car cela permet au système et aux taches de fond de ne pas empiéter dessus.