Quatre technologies de base sont introduites pour rendre la charge applicative des utilisateurs en cours d'exécution plus efficace.
Dec 12, 2022| Tout d'abord, Occlum v1.0 propose une idée de conception asynchrone et repense toute l'architecture du code Occlum. En utilisant la propriété asynchrone du langage Rust, Occlum implémente un mécanisme de planification de threads efficace dans Enclave basé sur la coroutine légère Rust et le runtime asynchrone. En particulier pour les applications volumineuses telles que l’apprentissage automatique et la chorégraphie distribuée, cela peut grandement améliorer les performances informatiques.
Deuxièmement, io{{0}}uring, une nouvelle génération d'interfaces d'opération d'E/S asynchrones de Linux, est introduite dans Occlum v1.0 et prend en charge la plupart des opérations d'E/S (y compris les E/S réseau/E/S disque). Grâce à cette nouvelle fonctionnalité, associée au runtime asynchrone Rust, Occlum offre des performances d'E/S réseau natives proches de celles de Linux.
Troisièmement, Occlum v1.0 a absorbé les périphériques de bloc virtuels de confiance de nouvelle génération basés sur une structure de journal développée indépendamment par Ant Group, ce qui peut donner au système de fichiers grand public existant la capacité de protection de sécurité des E/S disque, et le la sécurité est supérieure à celle de divers schémas de protection des E/S de fichiers ou des E/S de disque dans le noyau Linux. Dans le même temps, le système de protection est supérieur à celui de TEE similaires, tels que SGX-PFS. Étant donné que le périphérique de bloc virtuel de confiance adopte la nouvelle conception de structure de journal d'ajout, les performances d'E/S seront considérablement améliorées.
Quatrièmement, en utilisant la conception de gestion dynamique de la mémoire basée sur l'allocation à la demande, Occlum v1.0 augmente non seulement l'utilisation de la mémoire physique de l'Enclave, mais réduit également considérablement le temps de chargement des applications sur le TEE.
Les données des tests de performances d'Occlum v1.0 et de la version communautaire précédente 0.29 ont été comparées. Les performances de planification des threads d'Occlum v1.0 sont 5 fois supérieures à celles de la version précédente. Lorsque le nombre de threads d'application augmente, l'avantage en termes de performances de planification de la v1.0 devient plus évident. En termes de vitesse de transfert réseau et de débit d'E/S de fichiers, par rapport à la version précédente, il présente également des performances 2x et 3x améliorées, notamment en termes d'E/S réseau, qui peuvent approcher la vitesse de transfert réseau Linux natif dans le même environnement.



