Academic publishing in Europe and N. America

Archive Publication ethics Submission Payment Contacts
In the original languageTranslation into English

Advanced Linux Profiling in a TUI

Authors

Alice Rogers

Rubric:Engineering sciences in general
60
0
Download articleQuote
60
0

Annotation

As software complexity increases, performance profiling remains an essential practice for identifying CPU bottlenecks and optimizing resource allocation. Flamegraphs (Gregg, B., 2016) have emerged as a near-universal visualization tool for this purpose. The data used to make a flamegraph may be large and is traditionally rendered as a web page or as a GUI component within an IDE. When development is split between a local development machine and a remote cloud server, the need to copy profile data is slow and burdensome.

At the same time, with cloud development being a new normal, there has been a renaissance in using the command line. The command line is well-suited to the new AI chat-based tools (Agarwal et al., 2020). The console for the command line has become richer, supporting broad color palettes and mouse interaction. To use the new rich console environment, Text-based User Interface (TUI) libraries have appeared, mirroring user interface development for modern web applications.

This work presents the combination of advanced profiling with modern TUI design, removing the need to gather remote profile data and analyze it locally. Instead, the tooling can work where the data is, be rich, and support the features that users are accustomed to in traditional web or GUI applications.

Authors

Alice Rogers

Rubric:Engineering sciences in general
60
0

References:

Agarwal, M. & Barroso, J. & Chakraborti, T. & Dow, E. M. & Fadnis, K. & Godoy, B. & Pallan, M. & Talamadupula, K. (2020) IBM Research. Project CLAI: Instrumenting the Command Line as a New Environment for AI Agents.

Arm (2024) Statistical Profiling Extension for the Armv8-A Architecture. Arm Developer Documentation. https://developer.arm.com/documentation/102557/latest/

Davis, J. E. (2022) The S-Lang Programming Library [Computer software]. Jedsoft. https://www.jedsoft.org/slang/.

Drongowski, P. J. (2007) Instruction-Based Sampling: A New Approach to Performance Analysis for AMD Family 10h Processors. AMD Open Source Lab.

Google (2026) Perfetto: System profiling, app tracing and trace analysis. Android Open Source Project. https://perfetto.dev/.

Google Cloud (2026) PMU overview | Compute Engine Documentation. Google Cloud. https://cloud.google.com/compute/docs/pmu-overview.

Graham, S. L. & Kessler, P. B. & Mckusick, M. K. (1982) Gprof: A call graph execution profiler. Published in ACM SIGPLAN Notices, Volume 17, Issue 6, 120 - 126 https://doi.org/10.1145/872726.806987.

Gregg, B. (2016) The flame graph. Published in Communications of the ACM, Volume 59, Issue 6, 48 - 57, https://doi.org/10.1145/2909476.

Gregg, B. (2019) Book: BPF Performance Tools: Linux System and Application Observability. Addison-Wesley Professional. ISBN-13: 978-0136554820.

Intel (2026) Intel® VTune™ Profiler User Guide. https://www.intel.com/content/www/us/en/developer/tools/oneapi/vtune-profiler.html

Intel Corporation (2026) Intel 64 and IA-32 Architectures Software Developer’s Manual, Volume 3B: System Programming Guide, Part 2. (See Chapter 19: Performance Monitoring).

Levon, J. (2004) OProfile manual. Victoria University of Manchester.

McGrath, R. & Drepper, U. (2026) Elfutils: A collection of utilities and libraries for ELF files and DWARF data. Sourceware. https://sourceware.org/elfutils/

McGugan, W. & Contributors, T. (2021–2026) Textual: A Rapid Application Development framework for Python [Computer software]. Textualize.io. https://github.com/Textualize/textual

Melo, A. C. D. (2010) The New Linux ’perf’ tools, presentation from Linux Kongress.

Molnar, I. (2008) [Announcement] Performance Counters for Linux. Linux Kernel Mailing List. Available at: https://lwn.net/Articles/310176/.

Mosberger, D. & Eranian, S. (2002) IA-64 Linux Kernel: Design and Implementation. Prentice Hall. (See Chapter 6: Stack Unwinding).

Mozilla (2026) Firefox Profiler: Web app for Firefox performance analysis. https://profiler.firefox.com/

Rogers, A, Rogers, I. (2026) Perf script: New treport script. https://lore.kernel.org/linux-perf-users/20250725082425.20999-1-irogers@google.com/

Wong, J. (2026) speedscope: An interactive flamegraph visualizer. https://www.speedscope.app/

Ylonen, T. (1996) SSH - Secure Login Connections over the Internet. Proceedings of the 6th USENIX Security Symposium, 37–42.

Other articles of the issue

Yuxuan Liu Discovery of TIGIT-Targeted Small Molecules as Cancer Therapies
Download article in PDF132 views
cc-license
About us Journals Books
Publication ethics Terms of use of services Privacy policy
Copyright 2013-2025 Premier Publishing s.r.o.
Praha 8 - Karlín, Lyčkovo nám. 508/7, PSČ 18600, Czech Republic pub@ppublishing.org