Vue d'ensemble et tests comparatifs du PC "Elbrus 401 - PC". Quatrième partie - Repères

La dernière partie de l'article est consacrée à comparer les performances d'un nouvel ordinateur russe avec des concurrents étrangers et ses propres prédécesseurs.

Vue avant et latérale de l'unité centrale Elbrus 401-PCRésultats du test Pgbench simplifié (Postgresql)

Attention: beaucoup de lettres et d'images!



Nous rappelons le contenu des parties précédentes:

  1. examen du matériel :
    • processus d'acquisition;
    • matériel
  2. revue du logiciel :
    • lancement du système d'exploitation;
    • logiciel ordinaire;
  3. aperçu des outils de développement :
    • caractéristiques de l'architecture;
    • langage machine;
    • outils de développement;
  4. analyse comparative des performances:

Bonne lecture!

Clause de non-responsabilité


L'auteur s'est profondément trompé pendant longtemps, estimant que cet ordinateur avait été acheté par l'entreprise pour ses propres besoins - en plus de la technologie exploitée d'une génération antérieure. Et seulement au moment de la réception, il est devenu clair que le nouveau produit est destiné à une livraison ultérieure dans le cadre du complexe. Par conséquent, au lieu de la lecture réfléchie initialement prévue de la documentation, de la connaissance pratique de toutes les subtilités, d'une sélection rigoureuse des outils de test et d'autres activités méditatives, nous avons dû agir rapidement, sinon chaotique. Le degré d'insuffisance a en outre augmenté grâce à l'urgence avant et après le Nouvel An, à l'élimination possible de laquelle l'auteur a participé en parallèle.

« . .   , ». (nutanix)

Nous ne nous sommes pas fixés pour obtenir une sorte de résultat «vraiment correct», qui révèle avec précision les avantages ou les inconvénients uniques d'une plate-forme particulière. Je voulais juste avoir une idée commune de la puissance de calcul du nouvel Elbrus dans le contexte d'échantillons d'électronique domestique et occidentale déjà connus, du point de vue d'un utilisateur ordinaire utilisant des programmes prêts à l'emploi sous forme assemblée ou les compilant à partir de codes source sans utiliser de connaissances ésotériques sur l'optimisation et le portage. Par conséquent, l'article n'aura pas de sensations comme «Elbrus a déchiré Xeon lors du cryptage selon l'algorithme GOST» ou «Elbrus en mode d'émulation x86 fonctionne encore plus rapidement que l'exécution de code natif» (qui peut être lu ici et là sur Internet, et toujours sans divulgation pour une raison quelconque) détails). Cependant, dans un souci de vérité et d'intrigue, il convient de noterque dans une série de tests, le protagoniste de cette revue a vraiment montré des résultats plusieurs fois plus élevés qu'un ordinateur similaire basé sur Core i7.

Participants aux tests


Étant donné que les valeurs absolues des résultats obtenus dans les benchmarks sont généralement des valeurs très abstraites, même lorsque les algorithmes de test sont basés sur le code de programme d'applications réelles, il a été décidé d'effectuer une série de mesures identiques sur un certain nombre de plates-formes informatiques aussi différentes que possible et couvrant en même temps la quasi-totalité une gamme de technologies pertinentes dans un but similaire.

Ordinateur d'architecture x86‑64 basé sur Intel Atom
Vue de la carte mère Intel D2500CC et de l'unité centrale Chieftec IX-01B depuis le nord-estVue sud-ouest de la carte mère Intel D2500CC

Peut-être que le rival idéal pour Elbrus serait un Intel Celeron ou Atom moderne avec quatre cœurs et une basse fréquence, ou un analogue sous la marque AMD; mais à partir de ce qu'il y avait dans les bacs, il n'y avait qu'un Atom D2500 double cœur soudé sur une carte mère Intel D2500CC au format mini-ITX. La configuration de cet ordinateur compact et visiblement pas trop fringant, sans doute, n'a pas besoin d'explications supplémentaires; elle n'avait qu'un seul composant atypique - un disque dur de 3,5 pouces (bien que la série initiale), mais comme les performances d'E / S n'étaient pas au centre de l'étude, ce fait peut être négligé. Pour assurer une similitude programmatique maximale, le kit de distribution Debian 7.9.0 pour l'architecture x86-64 avec le noyau Linux 3.2.0 a été choisi comme système d'exploitation (en particulierque l'installation et la mise à jour des anciennes versions de Debian n'est pas une quête pour les âmes sensibles).

L'ordinateur d'architecture x86-64 basé sur Intel Core i7 Le deuxième participant naturel était un ordinateur du pôle opposé de fonctions et de vitesse - la mini-tour de bureau Dell OptiPlex 990 avec un processeur Core i7-2600 et une carte mère originale basée sur le chipset Q67. Le système fonctionnait dans son mode quotidien - avec la fonction Turbo Boost désactivée, mais avec Hyper-Threading activé, exécutant openSUSE 13.2 pour l'architecture x86-64 avec le noyau Linux 3.16.7. Ordinateur Elbrus-90mikro basé sur le MTsST R500
Vue avant et latérale de l'unité centrale Dell OptiPlex 990Vue de l'unité centrale Dell OptiPlex 990 avec la paroi latérale retiréeDell OptiPlex 990




‑90   «»   ‑90   «»  ‑90   «»

Cependant, il serait incorrect de faire des comparaisons uniquement avec le courant dominant, car le nouvel Elbrus-4C est principalement un remplacement pour les anciens représentants de la gamme de produits Elbrus, qui comprend non seulement les ordinateurs d'architecture E2K, mais aussi SPARC. Malheureusement, notre entreprise ne dispose pas de l'équipement d'architecture moderne SPARC V9, comme le MTsST R1000, mais "nous avons la chance" de jouer avec toute la couvée R500 - de la génération SPARC V8, qui est toujours 32 bits. Le premier représentant de la vieille garde était l'ordinateur Elbrus-90mikro au format d'une mini-tour ordinaire avec deux processeurs R500 soudés, une carte vidéo discrète de sa propre conception, un disque dur ordinaire et un lecteur optique. Le système d'exploitation de cet ordinateur est MSVS 3.0 pour l'architecture SPARC avec le noyau Linux 2.4.25, le compilateur GCC 3.3.6 et la bibliothèque GNU LibC 2.2.5.

Un autre ordinateur d'architecture SPARC V8 basé sur RAR (vue exemplaire, photo du site ICST)
‑90   «»‑90   «»

Un autre ordinateur est également équipé d'une paire de processeurs R500, mais il est fabriqué dans la conception modulaire Euromechanics 6U, il n'a que 512 Mo de RAM et une carte flash de niveau industriel comme lecteur principal (le modèle Meltron P7 est fièrement appelé «SSD», mais les performances réelles dans ce l'ordinateur est plus proche des anciens lecteurs flash lents). La différence fondamentale avec le participant précédent est que le système d'exploitation Elbrus (OS 311-03) est installé ici, daté du début de 2011, avec le noyau Linux 2.6.16, le compilateur LCC 1.16.12 (la compatibilité avec GCC 3.4.6 est déclarée) et la bibliothèque GNU LibC 2.16.0. Comme nous le verrons plus loin, ces différences de programmation par rapport au MSWS entraînent parfois une différence de vitesse significative, les échelles étant inclinées dans un sens ou dans l'autre. Par conséquent, les deux séries de résultats sont répertoriées ci-dessous.marqué respectivement "R500 / E" pour un ordinateur avec un système Elbrus et "R500 / M" pour un ordinateur avec un système MSVS.

Coremark


Comme déjà brièvement mentionné, le logiciel comprend une collection assez étendue d'utilitaires de test pour vérifier le bon fonctionnement de l'équipement et des bibliothèques système, ainsi que pour mesurer les performances. Certains de ces utilitaires sont développés par la société MTsST, et certains sont des programmes bien connus d'auteurs tiers. Parmi ces derniers, il existe également des versions spécialement adaptées pour Elbrus: par exemple, CoreMark requiert que chaque plateforme implémente sa propre interface, en tenant compte des fonctionnalités du compilateur et des bibliothèques, des appels système et des structures de données, du multithreading et des outils de mesure du temps. Ce portage ne donne cependant aucun avantage caché, d'autant plus que les résultats de l'exécution principale sont ensuite vérifiés à l'aide du profileur.

Le test CoreMark a été créé par le Consortium for Measuring Embedded Microprocessors (EEMBC) et comprend plusieurs tâches synthétiques, notamment le traitement des matrices et des listes liées, la commutation de l'état d'une machine d'état et le calcul d'une somme de contrôle. Apparemment, pour la raison que l'enregistrement est nécessaire pour télécharger les codes sources et publier les résultats, ce test n'a pas gagné en popularité: il y a actuellement 406 entrées dans la base de données .

CoreMark

Modei7‑2600D2500E2S-800R500 / ER500 / M
un noyau15'2183'5952'260602434
tous les cœurs88'5707'1088'8501'214850


Le résultat obtenu par le processeur Elbrus-4C en mode simple thread est légèrement supérieur à l'ancien AMD Athlon XP-M avec la même vitesse d'horloge, et lorsque les quatre cœurs sont utilisés, il est proche de l'Athlon 64 X2 QL-65 double cœur, Intel Atom 330, D525 , D2500, Core 2 Duo E4300, dont la fréquence est au moins deux fois plus élevée.

Un comportement étrange a été démontré par le R500 avec le système d'exploitation Elbrus: lors de l'utilisation de deux threads ou de deux processus, ils partageaient tous les deux un même noyau, et seul le troisième et les threads ou processus suivants étaient également distribués au deuxième noyau, et la saturation ne se produisait qu'à un degré de parallélisme égal à 8. Par conséquent, la ligne pointillée montre également des résultats supplémentaires avec le nombre de threads dépassant le nombre de cœurs d'un ordinateur: comme vous pouvez le voir, tous les autres participants au test ont ces lignes en pointillés en mémoire vayutsya dans une ligne horizontale - la façon dont il devrait être, quand chaque thread consomme toutes les ressources disponibles. Il n'a pas été possible de trouver les raisons de l'anomalie: ce sont peut-être les caractéristiques des paramètres du planificateur de tâches dans le système Elbrus sur cet ordinateur.

7 - Zip


L'idée d'inclure le test de l'archiveur intégré dans le programme de test a mûri après avoir lu une critique sur CNews en 2014, qui a également comparé les performances du Core i7-2600 (sans Hyper-Threading, mais avec Turbo Boost, apparemment) et Elbrus-4C, bien qu'à une fréquence 700 MHz, ainsi que Elbrus-2C +, qui n'a que deux cœurs et une fréquence de 500 MHz, mais il y a quatre autres cœurs de traitement de signal ElCore9 DSP d'Elvis (cependant, ils n'ont pas été impliqués dans ce test). A en juger par les valeurs qui y sont données, l’auteur a lancé « 7z b"Et divisé le résultat par le nombre de cœurs. Nous publions les résultats dans leur forme d'origine, et sur le diagramme, en tant que mesure de la vitesse, le nombre estimé d'opérations entières sur tous les cœurs par unité de temps (MIPS) est sélectionné, et le tableau montre la vitesse absolue de traitement des données et la note relative d'un cœur, en tenant compte de la charge réelle du processeur dans autre mode de fonctionnement.

7-Zip Benchmark

Indicateuri7‑2600D2500E2S-800R500 / ER500 / M
compression, Mo / s17'2001'3002'144228247
déballage, Mo / s211'28224'73838'8943'2272'430
évaluation, MIPS18'7811'8232'920269241
évaluation du noyau2'6621'000843263243


Ici, nous pouvons observer comment le nouvel Elbrus ne traîne presque pas derrière Atom, même en mode mono-thread, et les performances totales de tous les cœurs dépassent déjà considérablement - d'une fois et demie.

Les deux ordinateurs R500 ont montré cette fois une réticence à évoluer sur deux threads. De plus, pour une raison quelconque, le 7-Zip dans le système MSWS n'a pas pu déterminer le degré de charge du noyau pendant le déballage - il était nécessaire de le prendre égal à 99% par analogie avec la compression et de calculer la note manuellement.

Openssl


Comme pour le test précédent, la décision de conduire OpenSSL est venue naturellement après une rencontre répétée avec des thèses comme «Les processeurs domestiques sont très efficaces en cryptographie, en particulier sur les algorithmes GOST» (dont la mise en œuvre des algorithmes est hélas non précisée). Les recherches de fichiers contenant le mot « gost » dans leur nom ont donné un résultat plutôt modeste:

/usr/include/nettle/gosthash94.h
/usr/include/php/ext/hash/php_hash_gost.h

L'OpenSSL 0.9.8zc le plus commun fourni avec le système ne pouvait pas non plus se vanter de quoi que ce soit. Par conséquent, pour les tests, des algorithmes de hachage, de cryptage symétrique et de calcul de signature numérique plus populaires ont été choisis.

OpenSSL Speed    MD5  OpenSSL Speed    MD5  

OpenSSL Speed    SHA-1  OpenSSL Speed    SHA-1  

OpenSSL Speed    SHA-512  OpenSSL Speed    SHA-512  

Algorithmei7‑2600D2500E2S-800R500 / ER500 / M
MD5615/3546320/635125/50010/1930/59
SHA-1534/2181192/381165/6586.3 / 1317/34
SHA-512301/1227119/23789/3550,7 / 1,4-

Voici et ci-dessous les valeurs maximales, exprimées en mégaoctets "décimaux" par seconde. La fraction indique les résultats lors de l'utilisation d'un cœur et de tous les cœurs. Un tiret signifie que cet algorithme n'est pas pris en charge dans la version standard d'OpenSSL: pour l'ancien système Elbrus, il est de 0,9,8 b, pour MSVS, il est de 0,9,7 b (oui, nous ne sommes pas vulnérables à Heartbleed!).

OpenSSL Speed     RC4   128   OpenSSL Speed     RC4   128   

OpenSSL Speed     AES   CBC  IGE   256   OpenSSL Speed     AES   CBC  IGE   256   

Algorithmei7‑2600D2500E2S-800R500 / ER500 / M
RC4797/4060202/40161/2465.8 / 1212/24
AES-CBC81/35143/7932/1282.1 / 4.15.1 / 10
AES-IGE78/34120/4043/170--

Alors que la cryptographie symétrique prend généralement le même temps lors du cryptage et du décryptage des messages de volume égal (à l'exception peut-être des coûts de génération de l'état initial), les algorithmes asymétriques traitent les données d'une taille fixe, mais nécessitent un ensemble ou un nombre d'actions différent pour se former et vérifier signature numérique. Par conséquent, d'autres résultats sont présentés séparément et sont exprimés en nombre d'opérations par seconde.

Algorithmei7‑2600D2500E2S-800R500 / ER500 / M
RSA-4096, signature105/47722/116.6 / 270,8 / 1,70,8 / 1,5
Test RSA-40966496 / 30'176700/1400453/179056/12649/98
DSA-2048, signature2396 / 11'200267/534157/63420/4018/37
Vérification DSA-20482052/9531220/440136/53417/3415/29
ECDSA-p384, signature4896 / 22'480782/1560273/108555/108-
ECDSA-p384, vérification1135/4994157/31249/19821/10-
Échange ECDH-p3841367/6014187/37458/23325/12-

Les performances globales d'Elbrus-4C dans ces tests se situent également au niveau de l'Atom D2500, démontrant un avantage ou un décalage d'un algorithme à l'autre. Les résultats du R500 avec le système d'exploitation Elbrus sont donnés pour 4 flux - c'est dans ce mode qu'il a atteint le maximum, tout en perdant beaucoup à son frère sous le contrôle de MSWS sur le hachage et le chiffrement, mais se réhabilitant légèrement avec une cryptographie asymétrique.

Unixbench


Cet ensemble de tests synthétiques, couvrant divers aspects du fonctionnement de l'ordinateur, des opérations arithmétiques élémentaires aux appels système et aux opérations sur disque, a été développé au début des années 80 et, évoluant progressivement, a survécu jusqu'à nos jours, sans perdre en popularité en tant qu'outil multiplateforme. évaluation intégrée des performances du système en général et des composants individuels en particulier.

Testi7‑2600D2500E2S-800R500 / ER500 / M
Dhrystone 23240 / 13'735595/1190185/73867/13259/118
Wheatstone820/5344171/382126/50527/5223/46
Execl886/5630257/52482/31447/8588/136
Fichier, 1024/20003040/2994451/683287/37344/4737/32
Fichier, 256/5001983/1890307/479185/23234/3430/23
Fichier, 4096/80004273/5664807/1112618/90455/5738/42
Pipe1747/8922419/851209/82459/115107/181
Contexte585/4865214/428175/68851/9962/116
Fourchette1260/4537264/57063/22278/8583/120
Coquille, 11968/6990458/703210/55145/65123/183
Coquille, 85465/7113670/684490/56268/68166/166
Syscall2978/6584781/1183333/108279/152133/223
au total1920/5550403/682203/51952/7666/92

Il convient de noter que dans le progiciel Elbrus 401 - PC, il y avait une version d'UnixBench 5.1.2, mais par souci de cohérence, la version actuelle 5.1.3 était utilisée partout, d'autant plus que la version standard affichait les mêmes indicateurs (dans le cadre de l'erreur de mesure).

Pgbench (Postgresql)


Il était difficile de contourner l' article sur l'  accélération Postgresql sur IBM Power8 , qui décrivait le processus d'optimisation du code de programme pour cette architecture en particulier et donnait une évaluation positive du développement du projet dans son ensemble, sans devenir infecté par le désir de vérifier dans quelle mesure la technique la plus modeste est présentée à partir des indicateurs de performance incroyablement élevés . Une autre chose est que les personnels sélectionnés pour les testsles ordinateurs ne prétendent pas être un serveur de base de données sérieux, non seulement parce qu'ils ont beaucoup moins de cœurs de processeur et de threads d'exécution, mais aussi moins de cache, de RAM et de système de disque «sans». Cependant, le volume de la base de test (moins de 0,5 Go) s'inscrit dans le cadre d'un stockage de données personnelles approprié sur un ordinateur personnel et, de plus, s'intègre complètement dans la RAM de la plupart des machines sélectionnées. Par conséquent, ce test peut être considéré comme une mesure complète de la vitesse de l'ensemble de l'ordinateur dans son ensemble, qui, contrairement à UnixBench, a une nature réaliste, quoique unilatérale, de la charge.

Le système d'exploitation informatique "Elbrus 401 - PC" intègre Postgresql 9.2.3, et il a été décidé de faire de cette version un point de référence pour tous les autres participants, sans oublier les versions plus actuelles. Après avoir copié le référentiel des développeurs au  3 décembre 2015 , nous avons essayé d'assembler indépendamment la version actuelle, ci-après dénommée «9.6devel», mais même au stade de la configuration, il s'est avéré que chaque architecture nécessite une implémentation spécifique de la plate-forme de verrous tournants (ce qu'elle est, et comment il diffère des autres types de verrous utilisés par Postgresql, est décrit dans l'article mentionné ci-dessus), et pour E2K, il n'est pas dans la ligne principale, bien sûr. En guise de solution de rechange, vous pouvez utiliser le mode « -‐disable-spinlocks » .»Cependant, comme le prévient la documentation, au prix d'une baisse tangible - bien que non catastrophique - de la productivité. De plus, si la version 9.6devel auto-assemblée s'est avérée être plus lente que la norme 9.2.3, alors la version 9.2.3, qui a ensuite été également collectée auprès de sources publiques, était encore plus lente que 9.6devel. Et le redémarrage de la version standard 9.2.3 après la fin de tous les autres tests a confirmé que la baisse des performances ne peut pas être expliquée par les seules caractéristiques du disque SSD (bien qu'il n'aurait pas pu se passer d'eux dans le test combiné de lecture et d'écriture). Par conséquent, la conclusion suggère elle-même que les programmeurs MCST ont apporté les modifications nécessaires à la version régulière, c'est-à-dire qu'ils ont effectué le portage complet, et donc nous désignerons cette version avec le suffixe " e2k ", et la version auto-assemblée sans verrou avec le suffixe "ds . "

Au contraire, aucun problème lors de la construction de la version 9.2.3 à partir de sources publiques ne s'est posé sur la plate-forme SPARC, car elle est officiellement prise en charge. Cependant, une tentative de consolidation du succès avec la version 9.6devel a échoué au stade de la compilation, car les barrières de mémoire (un mécanisme pour garantir un ordre strict des opérations de mémoire sur les processeurs avec une exécution extraordinaire des instructions) ne sont désormais prises en charge que sur SPARC V9. La même erreur s'est produite lors de la construction de la version 9.4.5 (la branche stable principale à l'époque), bien que la documentation prenne toujours en charge l'ancienne architecture.
La méthodologie de test était aussi simple que possible: le SGBD a été démarré avec les paramètres par défaut immédiatement après l'initialisation du référentiel, une base de données de test y a été créée, qui a été remplie avec l'utilitaire Pgbench pour 32 flux parallèles, puis une série de lancements Pgbench a été effectuée pendant 60 secondes chacun avec un nombre variable de clients simulés, chacun fonctionnant dans son propre thread (les résultats étaient donc plus élevés que lorsque plusieurs clients partageaient le même thread). Le nombre de requêtes transmises au sein de chaque session est resté par défaut (10 requêtes par connexion), et comme les clients fonctionnaient sur la même machine que le serveur, le temps passé à établir des connexions n'a pas été pris en compte.

Le scénario de chargement principal de Pgbench imite la suite de tests TPC-B développée par le Data Processing Performance Council dans les années 1990 et se compose de diverses requêtes pour récupérer et modifier des données. De toute évidence, le goulot d'étranglement dans ce cas est le sous-système de disque, ce qui n'est pas significatif pour nous. Par conséquent, nous avons également effectué des tests en lecture seule (SELECT uniquement), - comme déjà mentionné, la base de données entière tient en même temps dans la RAM; en outre, c'est ce scénario qui a été utilisé par les auteurs des correctifs pour Power8 et leurs prédécesseurs du camp x86-64 pour démontrer leurs améliorations.

Pgbench   TPC-BPgbench   SELECT-only

Le scripti7‑2600D2500E2S-800R500 / ER500 / M
Tpc-b307/542248/285991/99116/1687/87
SELECT82'304 / 83'2804076/40768732/8732650/650766/766

Le tableau des résultats contient les indicateurs maximum atteints, exprimés en nombre de requêtes traitées par seconde: la fraction indique les valeurs obtenues avec la version 9.2.3 et dans toutes les versions testées en général. Ce maximum correspond généralement au nombre de clients desservis en parallèle, égal au nombre de cœurs de processeur pour la lecture des données uniquement; lorsque les données sont également écrites sur le disque, le maximum est atteint avec plus de parallélisme, apparemment en raison de la réorganisation des commandes par le disque (ou le cache système, si le test le permet).

La corrélation des résultats des trois premiers participants est tout à fait attendue: Elbrus 401 - PC était en avance sur tout le monde en mode mixte grâce à son SSD rapide, ce qui rappelle encore une fois que le processeur central n'est pas le seul important pour la réactivité de l'ordinateur. L'image lors de l'échantillonnage des données est complètement différente, mais on ne peut manquer de remarquer que le processeur Elbrus-4C est à égalité avec l'Atom D2500 même avec le nombre de threads dans le nombre de cœurs de ce dernier, malgré l'avantage plus que double de la fréquence; apparemment, la différence de quantité de cache au deuxième niveau (8 Mo contre 1 Mo) joue un rôle. Pas hier, la formule de succès inventée «Beaucoup de mémoire et un entraînement rapide» ne perd pas de sa pertinence!

Les résultats fragmentaires d'un ordinateur basé sur le R500 avec le système d'exploitation Elbrus nécessitent une explication distincte. Soit en raison d'un manque de RAM, soit en raison d'autres circonstances, l'utilitaire Pgbench a simplement cessé de montrer des signes de vie après avoir été exécuté en mode 2 flux pour l'écriture ou 3 flux pour la lecture. De plus, la situation ne s'est pas améliorée même avec une diminution du volume de la base de test (due à une diminution du paramètre du facteur d'échelle; le résultat est indiqué par une ligne pointillée sur le diagramme) et, par conséquent, l'apparition d'une quantité suffisante de mémoire libre. Ce qui est caractéristique, cependant, la pile d'appels du programme "endormi" ressemblait à ceci:

#0  0x00.... in __lll_lock_wait_private () from /lib/libc.so.6
#1  0x00.... in __lll_lock () from /lib/libc.so.6
#2  0x00.... in free () from /lib/libc.so.6
#3  0x00.... in doCustom ()
#4  0x00.... in main ()

Oh, ces serrures!

Quant aux performances déplorables dans les tests de cet ordinateur pour l'enregistrement, il serait naïf de s'attendre à des performances élevées d'une carte flash.

En commentant les résultats dans leur ensemble, on peut noter qu'une telle différence de performance révolutionnaire entre les versions testées de Postgresql, qui a été montrée dans l'article susmentionné, n'a pas été possible de remarquer dans notre expérience: à part la version pour E2K qui a été indépendamment montée sous une forme non optimale, les différences étaient dans la marge d'erreur mesures, y compris à charge mixte, lorsque la vitesse du disque dur a été statistiquement mal prédite pour la durée sélectionnée du test.

En outre, les plans étaient de tester le SGBD "Linter VS" (à ne pas confondre avec " Linter "), qui est natif de MSVS, bien qu'il ne fasse pas partie de la suite logicielle standard , dont la version  707.3.4 est basée sur Postgresql 8.4.3 avec des extensions originales pour prendre en charge obligatoire contrôle d'accès. Cependant, l'utilitaire Pgbench en option n'est pas inclus dans le package de livraison de ce produit, et une version auto-assemblée à partir de codes sources publics s'est avérée incompatible avec le modèle de droits et privilèges utilisé.

LCC, GCC


Construire Postgresql s'est avéré être une bonne référence en soi: ce n'est pas un très petit projet de sorte que la configuration et la compilation scintillent sur l'écran en un rien de temps, mais en même temps, ce n'est pas trop grand pour que le processus s'étire longtemps ou se termine avec une erreur due à des dépendances ou à une plate-forme manquantes incompatibilités. Le seul inconvénient du point de vue des tests complets est que Postgresql est entièrement écrit en C - il n'y a pas un seul module en C ++.

Le temps de compilation total de la version 9.2.3 en mode multithread avec différents niveaux d'optimisation a été mesuré: les résultats indiqués dans le tableau sont exprimés en heures, minutes et secondes en fonction du temps astronomique, et le temps total du processeur utilisateur dans tous les threads est indiqué entre parenthèses (les coûts système sont relativement faibles). et sont très probablement associés aux E / S de fichiers, ce qui n'est pas très intéressant pour nous dans ce contexte). Le temps de configuration de l'assemblage n'a pas été pris en compte: bien qu'il puisse être important et même comparable au temps de compilation, la configuration n'est généralement effectuée qu'une seule fois à une étape particulière du projet, tandis que le compilateur est souvent appelé lorsque des modifications sont apportées. N'oubliez pas non plusque lors de la construction d'une version stable avec les paramètres par défaut, les utilitaires facultatifs tels que Pgbench ne sont pas compilés, contrairement à la construction de la version actuelle à partir du référentiel.

i7‑2600D2500E2S-800R500/ER500/M
-O00:00:17 (0:01:15)0:03:00 (0:05:08)0:02:00 (0:06:17)0:25:51 (0:42:09)0:14:18 (0:23:53)
-O10:00:24 (0:02:12)0:04:31 (0:07:56)0:05:25 (0:15:18)1:33:35 (2:02:02)0:19:14 (0:33:10)
-O20:00:32 (0:03:01)0:06:02 (0:10:47)0:13:12 (0:34:50)1:38:30 (2:46:51)0:27:31 (0:46:57)
-O30:00:38 (0:03:37)0:07:02 (0:12:41)0:33:04 (1:22:04)2:17:38 (4:05:42)0:30:20 (0:51:40)

Ces résultats montrent uniquement à quelle vitesse une version particulière d'un projet particulier sera compilée avec les paramètres par défaut - une version spécifique du compilateur à temps plein sur une plate-forme particulière. Les représentants de l'architecture x86-64 ont utilisé respectivement le compilateur GCC 4.8.3 et 4.7.2, un ordinateur exécutant MSWS a utilisé GCC 3.3.6 pour l'architecture SPARC, et les participants avec le système d'exploitation Elbrus avaient respectivement LCC 1.16.12 et 1.19.18 De plus, le compilateur d'optimisation LCC pour l'architecture SPARC et pour l'architecture E2K sont deux compilateurs complètement différents qui effectuent une quantité de travail différente et produisent un code de performance différent. Par conséquent, une comparaison directe est impossible ici, et aucune conclusion ne peut être tirée sur la vitesse de l'équipement sur la base des résultats de ce test. Une autre chosequ'il serait bon d'étudier l'efficacité des optimisations, mais pour cela nous avons besoin d'une qualification remarquable, de sorte qu'il ne s'avère pas que nousnous mesurons le taux d'incrément et tirons des conclusions basées sur cette échelle cosmique.

Java Micro Benchmark


Ayant une idée très vague de Java, l'auteur a décidé de simplement essayer tous les résultats de recherche dans l'ordre, et la première chose qu'il a faite a été de regarder ce projet, qui s'est avéré assez compact et facile à exécuter. Il implémente des estimations de base des performances du processeur et du disque dur, qui sont également combinées dans les scénarios «Desktop» et «Server»: le premier crée une charge de manière plus cohérente, et le second essaie de prendre en charge de nombreuses tâches en même temps.

Le scripti7‑2600D2500E2S-800
CPU, millions3927196356
Disque2546164126
Bureau3238181241
Serveur7568378405

Si vous ne faites pas attention à l'évaluation des performances du disque, les résultats semblent plausibles - le rapport approximatif de 10: 1 entre Core i7 et Elbrus-4C, observé dans d'autres tests (avec des applications natives), est également visible ici, et il y a une plus grande différence dans le scénario "Serveur" »Pourrait s'expliquer par les caractéristiques de la charge ou les propriétés objectives des plates-formes de test. Cependant, le même rapport de la vitesse des opérations sur les fichiers, malgré le fait que l'ordinateur Elbrus 401 - PC est équipé d'un SSD rapide et que les autres ordinateurs disposent de disques d'entrée de gamme réguliers, fait douter de l'adéquation du test lui-même ou de la formule de calcul de la note. En effet, en regardant le journal détaillé du script Disk, vous pouvez voir que la vitesse de lecture du disque dur Seagate Barracuda 7200.9 équivaut à 325 Mo / s dans chacun des deux flux de l'Atom D2500, et la vitesse de lecture de WD Caviar Blue est généralement effrayante - 1650 Mo / s dans chacun des huit flux du Core i7. Ces indicateurs dépassent la vitesse de l'interface SATA-2 par laquelle les disques sont connectés et ne peuvent donc même pas refléter la vitesse d'accès au tampon de disque, sauf peut-être au cache système.

D'autres tests montreront que l'évaluation des performances du processeur dans Java Micro Benchmark, apparemment, n'est pas implémentée correctement. Ce cas nous rappelle une fois de plus que la rédaction des bons repères n'est pas si facile, et croire aveuglément le premier venu, sans vérifier avec d'autres sources, serait une erreur.

Speckjvm


La Standardized Performance Assessment Corporation (SPEC), le développeur du CPU SPEC référencé et bien d'autres, ne semble pas avoir besoin d'être présenté, et le professionnalisme de ses programmeurs ne fait aucun doute. Habituellement, leurs produits coûtent beaucoup d'argent, mais pour SPECjvm98 et SPECjvm2008, ils ont fait une exception et les ont distribués entièrement gratuitement - c'était un péché de ne pas les utiliser.

Testi7‑2600D2500E2S-800
compilateur533.1134,244,54
compresser292,9421,482,74
crypto269,8719.143.10
derby427,7724,855,00
mpegaudio184,7912,482.29
scimark.large45,885,461.13
scimark.small414,4220,434,02
série207.0513,861,45
démarrage32,315.190,69
flux solaire110,516,850,89
xml621,6636,765,25
au total206,5015.032,30

Maintenant, le rapport entre le Core i7 et Elbrus-4C est d'environ 100: 1, et dans tous les tests à l'unanimité, sans exception. Eh bien, l'Elbrus à 4 cœurs est désespérément derrière même l'Atom à 2 cœurs! Compte tenu de l'expérience précédente infructueuse de l'analyse comparative Java, il était difficile de croire à ce résultat: il semble que la charge ne va qu'au processeur et à la mémoire, et l'image est si radicalement différente des programmes natifs.

L'hypothèse que Core i7 bénéficie de l'utilisation de la nouvelle version de Java - 1.7.0, alors qu'Elbrus n'a que 1.6.0 à sa disposition - a été réfutée en testant la même version 1.6.0 sur Atom; cependant, la JVM dans ce dernier cas était la version 23.25 contre 20.0 (l'auteur ne sait pas à quel point c'est important). L'hypothèse a également été vérifiée qu'une trop grande partie de la mémoire allouée pour Java est tout aussi mauvaise que trop petite: conformément à la documentation, 512 Mo ont été alloués par cœur, mais le résultat n'a oscillé que dans l'erreur par rapport à quand s'est démarqué deux fois plus, et quand quatre fois.

Nous le répétons, il n'est pas nécessaire de douter des qualifications des développeurs de tests: au moins ils savent que "Java est si sérieux qu'il faut le réchauffer avant le lancement", cette préparation dure 2 minutes pour chaque test, ce qui n'a été trouvé dans aucun autre Java évalué référence. Il semble que l'échauffement n'ait aucun effet, et la machine virtuelle continue d'interpréter le pseudo-code, au lieu de le traduire en instructions machine.

Bien que, pour être honnête, au début, une certaine méfiance est apparue quand il s'est avéré que le test n'était pas compatible avec les nouvelles versions de Java, telles que 1.8.0, et que les diagrammes des résultats des tests étaient enregistrés au format JPEG. Mais des recherches plus poussées ont montré que les performances Java sont apparemment vraiment ce qu'elles sont.

Mise à jour au 5 février 2016.Pour finalement confirmer ou réfuter l'hypothèse selon laquelle il n'y a pas de diffusion binaire sur Elbrus, nous avons essayé d'interdire de force son utilisation sur un ordinateur avec Core i7 dans les commentaires, en transmettant le paramètre supplémentaire « -Djava.compiler = NONE » à la machine virtuelle . Hélas, cela a rendu le benchmark SPECjvm lui-même impossible, car la série de tests du compilateur en fait partie intégrante. Le processus se bloque simplement lors des premiers (tests): la charge du processeur central tombe à zéro et rien ne se passe en 12 heures, tandis qu'en mode normal, il faut 2 heures pour terminer l'ensemble du test.

Scimark


Ce test est utilisé dans le cadre de SPECjvm2008, mais est connu en soi. Le site Web des auteurs suggère de lancer SciMark 2.0 directement dans le navigateur sous forme d'applet, mais un avertissement est donné que cette méthode peut être associée à une certaine dégradation des performances. Par conséquent, et aussi parce que Firefox dans le système Elbrus n'a pas de plug-in correspondant, nous avons choisi la version console du test.

Taille de la tâchei7‑2600D2500E2S-800
par défaut, total1715.45 / 76.60206.0617,92
FFT (1K)996.14 / 23.80123,8516,89
DORS (100)1435.35 / 153.27375,4832,87
Monte carlo745,65 / 15,9297.124.24
Matmult clairsemé (1000, 5000)1579,66 / 85,78206,6115h15
LU (100)3820.45 / 104.22227,2520,44
grand, total1562.90 / 78.49176,9014,65
FFT (1M)171.20 / 21.6926,689.11
DORS (1000)1314.13 / 151.12365,3328,46
Monte carlo745.40 / 16.0395,944,25
Matmult clairsemé (100k, 1M)1329.01 / 90.91180,8513,26
LU (1000)4254,75 / 112,73215,6818,20

Comme vous pouvez le voir, la différence fondamentale de deux ordres de grandeur se manifeste dans ce test. Mais il faut également garder à l'esprit que ce test est effectué indépendamment uniquement en mode mono-thread, - contrairement au travail dans SPECjvm. De plus, le temps d'exécution du test était beaucoup plus court, ce qui nous a permis d'expérimenter avec les paramètres de la JVM: exécuter avec une indication explicite du mode client ou  serveur , définir le début et la quantité maximale de mémoire allouée - tout cela n'affectait en rien le résultat.

Mise à jour au 5 février 2016.Pour le Core i7, après la fraction, les résultats obtenus avec la diffusion désactivée sont également indiqués. Il est facile de voir que l'équilibre des forces dans ce cas passe à l'habituel 4: 1 - 6: 1. Cela signifie que la raison de la faible productivité de Java sur la plate-forme Elbrus réside vraiment dans le fait que le code octet est toujours interprété par la machine virtuelle, et non traduit en instructions machine du processeur si nécessaire.

Linpack Java


En fait, ce test particulier a été testé en premier, grâce au mot familier «Linpack» dans le titre. Cependant, la version trouvée était datée de 1997, ne savait pas comment répartir la charge entre les cœurs de processeur et avait des valeurs de paramètres codées en dur pertinentes pour cette période «préhistorique», ce qui a permis de calculer la durée d'exécution en fractions de seconde maximum. Par conséquent, ce programme semblait inutile et ne valait même pas la peine d'être mentionné. Mais les résultats contradictoires d'autres tests nous ont obligés à reconsidérer le verdict et à prendre en compte au moins ces preuves. Pour au moins augmenter d'une manière ou d'une autre la signification statistique, nous avons simplement fait la moyenne des lectures de 100 lancements (en fait, de graves fluctuations ne concernaient que le Core i7 - il semble que la granularité de la mesure du temps était insuffisante pour capturer clairement de si petits intervalles).

Indicateuri7‑2600D2500E2S-800
MFLOPS236,33 / 70,4414,692,25

Ces résultats nous ont finalement convaincus que Java sous la forme à laquelle il est désormais disponible sur Elbrus ne convient que pour l'écriture d'une interface utilisateur ou d'autres choses minimalement liées aux performances de l'ordinateur: par exemple, l'interface graphique du programme d'installation SPECjvm s'est comportée de manière très responsable.

Mise à jour au 5 février 2016. Pour le Core i7, après la fraction, le résultat obtenu avec une interprétation forcée est également indiqué. Le rapport est toujours très important (30: 1), mais n'oubliez pas que ce test ne peut pas être considéré comme précis en raison de la courte durée frivole.

SunSpider, JetStream, Peacekeeper


Après l'analyse comparative de Java, la prochaine étape logique consistait à tester les performances JavaScript, d'autant plus que cette technologie est beaucoup plus courante dans la vie d'un utilisateur typique, à moins qu'il n'ait été complètement bloqué pour accéder à presque tous les sites Web sur Internet. Cependant, ici, nous avons échoué. Lorsqu'il a été lancé sur Elbrus, le test SunSpider immédiatement après l'échauffement a produit un tableau de résultats, où il était indiqué en face de chaque scénario qu'il s'était écrasé. Son successeur recommandé, JetStream, a été mis en boucle au milieu de la première des trois pistes. Le test Futuremark Peacekeeper a également pratiquement cessé de faire quoi que ce soit lorsqu'il s'agissait de traiter des photos en parallèle. Par conséquent, nous publions des résultats JetStream partiels,pour avoir au moins une idée du niveau de performance des scripts dans le navigateur.

i7‑2600D2500E2S-800
Latency80,4512,80
3d-cube45,737,080,74
3d-raytrace64,407,111,17
base6450,2212,110,83
cdjs60,2912,70/
code-first-load78,5913,875,55
code-multi-load77,0312,964,73
crypto-aes66,6711,971,20
crypto-md572,2911,580,71
crypto-sha163,7810,040,50
date-format-tofte100,6015,611,84
date-format-xparb70,159,901,79
mandreel-latency145,8010,16
n-body107,8014,770,33
regex-dna108,3027,950,50
splay-latency294,3054,033,57
tagcloud77,2811,091,63
typescript59,169,251,86
Throughput244,1636,68
bigfib.cpp246,6048,82
mandreel219,4023,81NaN
splay195,2031,150,70
Geometric Mean150,4723,18

En comparant les résultats de différents participants, il convient de rappeler que bien que Firefox lui-même soit une application multithread, les scripts d'une page sont exécutés dans un thread. De plus, Elbrus a été testé avec le standard Firefox 3.6.28, tandis que d'autres ordinateurs avaient un navigateur de version moderne (38.5.0 et 42.0.0) avec un moteur JavaScript optimisé. Cependant, un tel duel ne peut pas être qualifié d'injuste, car il est peu probable qu'il obtienne une version plus récente du navigateur sur la plate-forme Elbrus, sauf si vous le construisez vous-même, mais cette tâche n'est clairement pas pour l'utilisateur moyen, compte tenu de la taille du projet et de la chaîne complexe de ses dépendances.

Mplayer


Le lecteur multimédia dans le système d'exploitation Elbrus n'est pas entièrement absent - il l'est, mais uniquement avec une interface de ligne de commande, et il n'est donc pas mentionné dans le menu de l'environnement graphique. La version mplayer 1.1 a pu, en mode purement programme, sans l'aide d'un accélérateur matériel d'une carte vidéo, lire du matériel dynamique de qualité Full HD encodé au format MPEG-4.10 (AVC). Certes, pour cela, il était nécessaire de spécifier le paramètre -lavdopts threads = 4 lors du démarrage du lecteurpour le décodage pour utiliser tous les cœurs. Deux flux ne suffisaient pas: parfois la vidéo «ralentissait». En mode monothread, cela commençait déjà à ressembler à une prise de vue au ralenti - mplayer a presque immédiatement émis un avertissement que le système était faible et ne pouvait pas faire face. Mais pour lire une vidéo en définition normale (SD), la puissance d'un cœur est plus que suffisante: la charge est généralement de l'ordre de 10%.

Initialement, nous avions prévu d'illustrer quantitativement le comportement ci-dessus avec les statistiques mplayer résultantes avec l'option -benchmarkCependant, les valeurs affichées semblaient, pour le moins, étranges. Par exemple, en mode monothread, Elbrus-4C consacre près de 98% du cœur au décodage des pistes vidéo Full HD; les miettes restantes vont au décodage du son et à la sortie de tout cela à l'écran et à la carte audio. Lorsque 2 flux sont utilisés, mplayer rapporte un coût total de 85%, et lorsque 4 flux, puis 15%. Même si ces indicateurs doivent être multipliés par le nombre de threads, quelque chose ne converge clairement pas ici. Par conséquent, vous devez vous limiter aux impressions verbales: la lecture de vidéo HD n'est pas un problème pour le nouvel Elbrus. Et c'est vraiment un grand progrès dans le contexte du R500, qui, en conjonction avec l'adaptateur MGA dans nos expériences précédentes, tirait à peine 352 × 288 MJPEG à une vitesse de 8 à 9 images par seconde.

Dans les cas extrêmes, le pack logiciel comprend un convertisseur FFmpeg 1.0, qui vous permet de convertir la vidéo d'un format à un autre: changer le type de conteneur, le compresser avec un autre codec, etc.

FIO, DD


Le sens de mesurer les performances d'E / S disque, comme déjà mentionné, nous ne l'avons pas vu. Tout d'abord parce que les disques de la série Kingston SSDNow mS200 n'ont pas encore été testés uniquement par les paresseux. Deuxièmement, parce que le faire correctement n'est pas si simple, et le résultat sera toujours mitigé. Et le fait que le nouvel Elbrus n'ait eu aucun problème très fatal avec le contrôleur de disque était clair. Juste pour nous en assurer, nous avons lancé l'utilitaire fio 2.3 pour la lecture avec une grande taille de bloc (16 Mo suffisait pour la saturation) et avons atteint un pic au niveau de 185 Mo / s. Pour le test, les enregistrements de données bien compressibles ont utilisé un simple

dd if = / dev / zero of = myfile oflag = direct bs = 16M count = 64

et a obtenu le résultat 63 Mo / s. La vitesse d'enregistrement des données incompressibles (vidéo) par la même méthode était de 34 Mo / s. Oui, c'est beaucoup moins que ce qui est mentionné dans les études tierces de ce modèle de lecteur, mais pour les tâches quotidiennes effectuées sur cet ordinateur, ce sera certainement suffisant. Quelles sont les raisons de ce comportement est une autre question, car il est impossible de tout expliquer avec seulement les limitations de l'interface SATA-2, et la charge du processeur ne dépasse pas 10-15%.

iPerf


Il est également difficilement possible d'évaluer sans ambiguïté les performances du sous-système réseau, et encore une fois, nous nous sommes contentés de mesurer simplement le débit maximal - en utilisant iPerf 3.1.1. Le partenaire dans cette entreprise pour Elbrus 401 - PC était l'ordinateur décrit ci-dessus basé sur Core i7 avec un contrôleur réseau intégré Intel 82579LM fonctionnant sous openSUSE 13.2; les ordinateurs étaient câblés directement. Les paramètres IPerf pour TCP sont restés par défaut et pour UDP, un tampon de 60 Ko a été utilisé.

DirectionTCPUDP
envoi, Mbps725820
recevoir, Mbps665n / a

Il n'a pas été possible de vérifier l'entrée UDP, car openSUSE, situé à l'extrémité opposée du câble, limite traditionnellement la bande de sortie UDP à 10 Mbps quelle que soit la vitesse de l'interface; comme nous le voyons, le système d'exploitation Elbrus n'a pas de telles restrictions cachées.

Conclusions


Les processeurs d'architecture Elbrus-2000 (E2K) ont une organisation originale qui permet de paralléliser la charge entre les appareils exécutifs de chaque cœur au stade de la compilation des programmes. Cette caractéristique est à la fois leurs forces et leurs faiblesses, car il est rarement possible de mettre en pratique un terrain théorique prometteur, en particulier lorsqu'il s'agit de programmes à usage général qui ne sont pas optimisés spécifiquement pour Elbrus. De plus, l'optimisation statique est impuissante face aux langages de programmation dynamiques.

Une autre caractéristique distinctive de l'E2K est la technologie intégrée pour l'exécution sécurisée des programmes, en raison du contrôle matériel de l'accès à la mémoire, révélant des erreurs typiques lors de l'utilisation des pointeurs et de la gestion manuelle de la mémoire. Si vous croyez la description, ce n'est qu'une panacée, guérissant à la fois vos programmes de presque tous les maux de la manipulation imprudente de la mémoire - plus précisément, vous aidant à trouver tous ces problèmes, même au stade du développement, et non après l'avoir mis en service commercial.

Le fabricant déclare également la possibilité d'exécuter des programmes compilés pour l'architecture x86 / x86-64 directement «à la volée» par le biais de la diffusion binaire, ce qui promet de larges possibilités d'utiliser des systèmes d'exploitation populaires (Windows, * nix) et toute la variété des programmes d'application ouverts et fermés code source. Dommage que nous n'ayons pas pu tester cette fonctionnalité; bien que, si vous vous rappelez tous les problèmes de sécurité que x86 apporte avec vous, vous devriez plutôt demander comment bloquer cette compatibilité transparente une fois pour toutes.

La performance totale des quatre cœurs du processeur Elbrus-4C, fonctionnant à 800 MHz, correspond approximativement à celle du processeur Intel Atom D2500 bicœur à une fréquence un peu plus du double de la fréquence (1866 MHz), en tout cas avec la nature de la charge testée. nous programmes. Cependant, dans la vie quotidienne, les tâches à fil unique prévalent généralement et, par conséquent, de nombreux cœurs lents donneront à l'utilisateur l'impression d'un système moins réactif. Il est prématuré de rêver de jeux vidéo dynamiques sur un tel ordinateur, bien que les expériences pour lancer Doom 3 semblent avoir réussi. La lecture de films Full HD est également possible, mais en l'absence d'accélération matérielle, la charge entière tombe sur le processeur central. Pour le travail de bureau, cependant, la capacité disponible est suffisante en excès; de plus, comme nous l'avons vu,le confort n'est pas assuré par un seul processeur. Et seule la version antédiluvienne du navigateur Web laisse perplexe, car peu de sites sur Internet sont compatibles avec cette relique.

Nous n'avons eu aucune plainte sérieuse au sujet de la composition des composants de l'ordinateur Elbrus 401 - PC, car les composants ont été sélectionnés principalement dignes. Je souhaite plutôt plus de liberté dans la configuration de la commande, jusqu'à l'exclusion complète de tout ce qui n'est pas nécessaire pour un client particulier. Cela ne nuirait pas à la capacité d'installer le système d'exploitation par vous-même, marquant le disque selon vos préférences.

En bref, l'auteur a vraiment aimé le nouvel "Elbrus", surtout par rapport à ce que l'industrie informatique russe pouvait offrir plus tôt. Oui, même si ce n'est pas le Core i7 (ou Xeon E7, pour être précis), même l'énorme société AMD avec ses milliards de budgets de recherche et de production est toujours incapable de dépasser et de dépasser Intel. Oui, laissez le prix «mordre» pour le moment, effrayant les consommateurs ordinaires et même les entreprises - maintenant, seul un grand optimiste peut rêver de conquérir le marché civil. Mais des progrès sont déjà visibles, d'autant plus que "l'Elbrus-8C" se profile distinctement à l'horizon, qui a plus de cœurs, plus de mégahertz et, je voudrais le croire, pour moins de dollars. Nous espérons qu'un jour nous aurons l'occasion d'écrire un article sur lui, et encore mieux si d'autres propriétaires d'équipements domestiques commencent à partager leur expérience.La plate-forme n'a alors qu'une chance de devenir massive lorsqu'elle apprend à être ouverte.

Post scriptum


Aujourd'hui, 02/09/2016, un représentant de la société MCST nous a téléphoné et a proposé de travailler ensemble pour éliminer les «points noirs» - en particulier, pour comprendre la technologie de traduction binaire du code x86, pour enquêter sur les performances de la nouvelle version de la machine Java, pour sélectionner des repères supplémentaires pour démontrer les forces d'Elbrus », Ainsi que d'effectuer des tests approfondis avec la participation d'autres échantillons d'équipements propriétaires. Jusqu'à présent, il s'agit d'un accord préliminaire, il est donc trop tôt pour faire des prédictions sur ce que pourrait devenir cette entreprise, mais nous n'espérons pas des ajouts fragmentaires au matériel actuel, mais un nouvel article ou même une série d'articles - selon la quantité de matériel tapé. Veuillez être patient - tout cela est destiné précisément à des fins de publication.

Mise à jour au 3 mars 2016.Le premier résultat de la collaboration est « Addendum à l'examen: questions et réponses ».

Source: https://habr.com/ru/post/fr390099/


All Articles