Add Xcode Instruments to the "Using C++ profilers with Godot" page. (#5037)

* Add Xcode Instruments to the "Using C++ profilers with Godot" page.
This commit is contained in:
bruvzg
2021-07-06 08:12:10 +03:00
committed by Hugo Locurcio
parent 594b086995
commit 43dd5808e0
5 changed files with 34 additions and 0 deletions

View File

@@ -15,6 +15,7 @@ Recommended profilers
- `VerySleepy <http://www.codersnotes.com/sleepy/>`__ (Windows only)
- `HotSpot <https://github.com/KDAB/hotspot>`__ (Linux only)
- `Xcode Instruments <https://developer.apple.com/xcode/>`__ (macOS only)
These profilers may not be the most powerful or flexible options, but their
standalone operation and limited feature set tends to make them easier to use.
@@ -140,3 +141,36 @@ HotSpot
Process(es)**.
This process attachment-based workflow is similar to the one used by VerySleepy.
Xcode Instruments
^^^^^^^^^^^^^^^^^
- Open Xcode. Select **Open Developer Tool** - **Instruments** from the **Xcode** app menu:
- Double-click on **Time Profiler** in the **Instruments** window:
.. image:: img/cpp_profiler_xcode_menu.png
- In the Time Profiler window, click on the **Target** menu, select **Choose target...**
and specify the path to the Godot binary, command line arguments and environment variables
in the next window.
.. image:: img/cpp_profiler_time_profiler.png
- You can also attach the Time Profiler to a running process by selecting it from the **Target**
menu.
- Click the **Start an immediate mode recording** button to start profiling.
.. image:: img/cpp_profiler_time_profiler_record.png
- Perform the actions you wish to profile in the editor or project. When you're done,
click the **Stop** button.
- Wait for the results to appear.
- At the bottom of the window you will see a call tree for all CPU threads started, and
the **Heaviest Stack Trace** overview.
- Select **Hide system libraries** in the **Call Tree** menu (at the bottom of window) to
remove external modules.
- You can use the timeline at the top of the window to display details for the specific time period.
.. image:: img/cpp_profiler_time_profiler_result.png