Je l’ai souvent remarqué avec des téléchargements volumineux tels que les mises à jour Xcode et OS X, etc.
Fondamentalement, nous voyons cela peu importe le temps nécessaire au téléchargement:
Aujourd'hui (actuellement) je télécharge Xcode 7.2.1.
Vous pouvez constater que stockésdés semble appartenir à un noyau entier et que 30% environ de ce travail est traité par le noyau.
Ce qui me rend perplexe, c'est quel est ce "travail"? Pourquoi a-t-il besoin de faire ce travail? Quelle quantité de traitement pourrait-il éventuellement effectuer, car le décryptage d'un flux à quelques mégaoctets par seconde ne nécessite pas autant de ressources. Je pourrais télécharger un fichier volumineux comme celui-ci en utilisant des centaines de connexions sur Internet et en effectuant des contrôles d'intégrité (avec un protocole comme bittorrent) et cela ne se rapprocherait pas de ce qui se passe ici avec l'utilisation des ressources.
la source
Réponses:
Nous avons rencontré le même problème aujourd'hui lors de la mise à jour de XCode:
storedownloadd
un noyau de processeur est bloqué pendant 20 minutes.J'ai essayé de pénétrer dansstockedownloadd avec un débogueur et j'ai vu des traces de pile très longues et beaucoup de temps passé à l'intérieur
Security::CodeSigning
.Je soupçonne qu'il vérifie de manière récursive les signatures numériques de nombreux fichiers minuscules, l'un après l'autre. Je ne sais pas pourquoi il ferait cela au lieu de vérifier l'ensemble du paquet au fur et à mesure de son téléchargement. Je vois aussi beaucoup de manipulations de chaînes à l'intérieur
Security_CodeSigning::RequirementLexer::RequirementLexer
.Quoi
storedownloadd
qu'il en soit , c'est trop lent!la source
L'utilisation du processeur est due à la fois au codage bâclé et au cryptage / décompression. Les ingénieurs sont devenus très négligents avec notre processeur à l'ère des ordinateurs portables quad core à huit cœurs virtuels.
Quelqu'un devrait chasser Apple pour optimiser la
storedownloadd
routine. Considérant que nous avons dû supporter un réseau défectueux pendant plus d'un an jusqu'à ce qu'Apple remplace le concept défectueuxdiscoveryd
parmDNSresponder
.Des pensées plus sombres pourraient suggérer que le magasin compresse également les données pour les télécharger et les envoyer. Microsoft a été surpris à le faire plusieurs fois, mais je n'ai pas vu de cas documenté dans le cas d'Apple.
la source
storedownloadd
est la décompression des données de paquet d'une manière très intensive informatiquement. Il n'y a pas beaucoup de raisons à l'heure actuelle de soupçonner quelque chose de particulièrement perversvient de le tuer dans le terminal ;-) ... prenant 1,5 Mo / s de mon haut débit lent
la source