Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Utilisation des profileurs C++
Pour optimiser les performances de Godot, vous devez d'abord savoir ce qu'il faut optimiser. À cette fin, les profileurs sont des outils utiles.
Note
There is a built-in GDScript profiler in the editor, but using a C++ profiler may be useful in cases where the GDScript profiler is not accurate enough or is missing information due to bugs in the profiler.
Il existe deux types principaux de profileurs : profileurs d'échantillonnage et profileurs de traçage.
Sampling profilers periodically interrupt the running program and take a "sample", which records which functions are running. Using this information, the profiler estimates which functions the program spent the most time in.
Tracing profilers work by recording application-specific events (such as the start and end of a single frame), producing a log called a "trace". The profiler can use the trace to produce a graph showing an accurate high-level timeline of what happened. However, any code that is not explicitly instrumented will not appear in a tracing profiler's timeline!
Godot supports both sampling profilers and tracing profilers, and already includes the logging code for common Godot events for use with a tracing profiler!
Different problems may be easier to debug with one kind of profiler over the other, but it's difficult to provide a set of rules for which to use. Give both a try, and see what you can learn from them!
Sampling profilers
We recommend the following sampling profilers:
VerySleepy (Windows seulement)
Hotspot (Linux seulement)
Instruments (Apple only)
Ces profileurs ne sont peut-être pas les options les plus puissantes ou les plus flexibles, mais leur fonctionnement autonome et leur ensemble limité de fonctionnalités tendent à les rendre plus faciles à utiliser.
Configuration de Godot
Pour obtenir des informations de profilage utiles, il est absolument nécessaire d'utiliser une version de Godot qui inclut des symboles de débogage. Les binaires officiels n'incluent pas les symboles de débogage, car ceux-ci augmenteraient considérablement la taille du téléchargement.
Pour obtenir des données de profilage qui correspondent le mieux à l'environnement de production (mais avec des symboles de débogage), vous devez compiler les binaires avec les options SCons production=yes debug_symbols=yes.
It is possible to run a profiler on less optimized builds (e.g. target=template_debug without LTO),
but results will naturally be less representative of real world conditions.
Avertissement
N'enlevez pas les symboles de débogage sur les binaires en utilisant la commande strip après avoir compilé les binaires. Sinon, vous n'obtiendrez plus d'informations de profilage utiles lorsque vous utiliserez un profileur.
Analyse comparative(Benchmarking) des temps de démarrage et d'arrêt
If you're looking into optimizing Godot's startup/shutdown performance,
you can tell the profiler to use the --quit command line option on the Godot binary.
This will exit Godot just after it's done starting.
The --quit option works with --editor, --project-manager, and
--path <path to project directory> (which runs a project directly).
Voir aussi
Voir Tutoriel de ligne de commande pour plus d'arguments de ligne de commande supportés par Godot.
Tracing profilers
Godot currently supports three tracing profilers:
Instruments (Apple only)
Note
Perfetto is the default tracing system for Android, so pre-built export templates with Perfetto built-in and enabled are provided from the GitHub Releases page.
In order to use either of them, you'll need to build the engine from source.
If you've never done this before, please read
these docs for the platform you want to profile on.
You'll need to perform the same steps here, but with some additional arguments
for scons.