Une solution aux failles liées à l'exécution spéculative ? |
————— 16 Juin 2018 à 15h37 —— 32714 vues
Une solution aux failles liées à l'exécution spéculative ? |
————— 16 Juin 2018 à 15h37 —— 32714 vues
Avec la série de failles récentes découlant de Meltdown et Spectre, bon nombre d'industriels ont dû avoir froid dans le dos. Il faut dire que malgré les fix (parfois coûteux en performances) proposés par les constructeurs, de nouvelles vulnérabilités se basant sur le même principe sont découvertes régulièrement, signe d'une faiblesse de design relativement profonde. Des chercheurs de l'université de Californie se sont ainsi penchés sur une modification simple des circuits actuels dans le but d'éviter tout problème liés à l'exécution spéculative.
Si, du côté privé, un fix matériel est bien sur les rails, aucune information technique n'a été communiquée à ce sujet ; et selon certaines discussions avec des ingénieurs schtroumpf, le patch proposé par Google pour contrer Spectre (les fameux retpolines) pourrait même être inefficace pour les prochaines architectures du fondeur de Santa Clara !
La solution proposée consiste simplement à rajouter une structure annexe dans laquelle sont stockées les informations chargées spéculativement, qui est ensuite validée ou jetée selon que la prédiction se soit révélée juste ou fausse. Selon leurs simulations, aucune perte de performance ne serait à déplorer, mais cela est très biaisé étant donné que ces changements induisent une augmentation la taille totale de cache disponible, ce qui est peu probable pour les prochaines générations de processeurs dans un futur proche.
En gris, les modifications nécessaires : ajout d'un cache supplémentaire au niveau de chaque cache, TLB inclus
![]() | Un poil avant ?Pascal à n'en plus pouvoir : deux nouvelles GTX 1050 3Go chez GIGABYTE | Un peu plus tard ...Le tout premier Cannon Lake disséqué ! | ![]() |
Typiquement, je me vois mal devoir installer un client lourd pour accéder aux sites des impôts, de ma banque, de tous les sites d'informations, forum...
J'ai travaillé pour MMA, pourquoi ce casser la tête avec le déploiement de toutes les nouvelles version des logiciels utilisés par les milliers d'agents tous les mois (enfin, je ne connais pas la fréquence exacte), quand il suffit simplement de déployer les livrables sur les serveurs. (Et là, on parle de pleins de techno différentes en fonction des sous-parties de l'application principale... des pages web, des interfaces en lignes de commande... Un joli bordel)
Après, pour un usage spécifique : typiquement bornes SNCF / DAB... Oui, encore que, l'interface peut très bien être une page Web légère, le serveur derrière servant à gérer les interactions entre les billets et le SI entre les banques...
Faire du client lourd pour faire du client lourd ça n'a pas de sens. Ce serait comme développer Half Life 3 en javascript (à part pour le défi/se faire plaisir...).
D'une certaine façon, un navigateur est un client lourd. Alors oui, c'est sûr qu'étant un logiciel qui doit s'adapter à des technos/normes "monstrueuses" (html/css/js... c'est déjà un joli pavé ), il est logique qu'il doivent jouer avec des dizaines de Mo pour tourner. C'est même d'ailleurs assez léger 20 Mo pour une page web ultra simple. Et il est sûr que l'on pourra faire plus léger avec un client lourd "mono-tâche".