6
votes

Journalisation Xcode: "Validation API métal activée"

Je crée une application macOS via Xcode. Chaque fois que je construis, j'obtiens la sortie du journal:

Validation de l'API Metal activée

À ma connaissance, mon application n'utilise aucune fonctionnalité Metal. Je n'utilise pas de graphiques ou de shaders 3D à accélération matérielle ou de fonctionnalités de jeux vidéo ou quoi que ce soit de ce genre.

Pourquoi Xcode imprime-t-il la sortie du journal de l'API Metal?

Le métal est-il utilisé dans mon application? Puis-je ou devrais-je le désactiver?

Comment puis-je désactiver ce message de journal "Metal API Validation Enabled"?


0 commentaires

3 Réponses :


16
votes

Activez la validation de l'API Metal via votre schéma Xcode:

Schéma> Modifier le schéma ...> Exécuter> Diagnostics> Validation de l'API Metal.

C'est une case à cocher, donc les options possibles sont Enabled ou Disabled .

La désactivation définit la clé enableGPUValidationMode = 1 dans votre fichier .xcscheme .

Après la désactivation, Xcode n'enregistre plus le message de journal «Metal API Validation Enabled».

Remarque: dans Xcode 11 et ci-dessous, l'option apparaît dans l'onglet "Options" de l'éditeur de schéma (au lieu de l'onglet "Diagnostics").


1 commentaires

@Bryan quelle version de Xcode voyez-vous cela changé pour être sous Diagnostics? Il est toujours sous Options dans la version 11.6.



1
votes

J'ai eu exactement le même message.

J'ai eu un .onDelete(perform: deleteLocations) à la fin d'une fermeture de scrollview.

J'ai changé la vue de défilement en une liste et le message est parti.


0 commentaires

0
votes

J'ai récemment commencé à travailler pour une mise à jour de mon application macos.

Cela a bien fonctionné sans erreurs, mais j'ai ensuite ajouté un fichier de storyboard d'un ancien projet xcode et quand je lance .loadWindow (), je les ai vus sur mon journal:

  • "Validation de l'API Metal activée"
  • "fopen a échoué pour le fichier de données: errno = 2 (aucun fichier ou répertoire de ce type)"

Ensuite, j'ai regardé le constructeur d'interface et l'une de mes étiquettes était dans une position étrange. J'ai donc centré cette étiquette et exécuté à nouveau l'application et l'avertissement "fopen a échoué pour le fichier de données: errno = 2 (aucun fichier ou répertoire de ce type)" disparu. Il dit toujours "Metal API Validation Enabled" chaque fois que je charge cette fenêtre à partir de ce fichier .storyboard mais cela ne me dérange pas.

Donc, je pense que c'est quelque chose sur la façon dont le système d'exploitation dessine les fenêtres et les vues ou peut-être quelque chose sur la différence de version du constructeur d'interface.


0 commentaires