An integrated development environment (IDE) (e.g., Visual Studio, Eclipse, Visual Studio Code, Android Studio, etc.) executed by a computing device (e.g., a desktop computer, a laptop computer, a tablet computer, etc.) may display a graphical user interface (GUI) that includes information for detecting and analyzing frames that are missing their deadline (i.e., “janky frames”). For example, the IDE may include information about aspects of a frame that tend to cause delay within the GUI, such as the corresponding application, wait period for a graphics processing unit (GPU), composition, threads, processes, etc. The IDE GUI may also include expected and actual timelines for frames and visually identify (e.g., via color-coding) frames that met their deadline (e.g., the end of the actual timeline occurred at or before the end of the expected timeline for the frame), frames that missed their deadlines (e.g., the end of the actual timeline occurred after the end of the expected timeline for the frame) because their actual duration exceeded their expected duration, frames that missed their deadlines in spite of the actual duration being equal to or less than the expected duration because of earlier janky frames, etc. Presenting such information to a user of the IDE may help the user to identify the portions of code that are causing a stutter or unreliable frame display, which may in turn help the user more efficiently reduce the occurrence of janky frames.
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 License.
Ramakumar, Adhithya; Nguyen, Phillip; Yang, Yi; Rapaport, Lily; and Zhou, Shukang, "DETECTING AND PROFILING SLOW FRAMES IN AN INTEGRATED DEVELOPMENT ENVIRONMENT", Technical Disclosure Commons, (March 24, 2022)