Annotatable systrace: An extended linux ftrace for tracing a parallelized program

Daichi Fukui, Mamoru Shimaoka, Hiroki Mikami, Dominic Hillenbrand, Hideo Yamamoto, Keiji Kimura, Hironori Kasahara

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Investigation of the runtime behavior is one of the most important processes for performance tuning on a computer system. Profiling tools have been widely used to detect hot-spots in a program. In addition to them, tracing tools produce valuable information especially from parallelized programs, such as thread scheduling, barrier synchronizations, context switching, thread migration, and jitter by interrupts. Users can optimize a runtime system and hardware configuration in addition to a program itself by utilizing the attained information. However, existing tools provide information per process or per function. Finer information like task-or loop-granularity should be required to understand the program behavior more precisely. This paper has proposed a tracing tool, Annotatable Systrace, to investigate runtime execution behavior of a parallelized program based on an extended Linux ftrace. The Annotatable Systrace can add arbitrary annotations in a trace of a target program. The proposed tool exploits traces from 183.equake, 179.art, and mpeg2enc on Intel Xeon X7560 and ARMv7 as an evaluation. The evaluation shows that the tool enables us to observe load imbalance along with the program execution. It can also generate a trace with the inserted annotations even on a 32-core machine. The overhead of one annotation on Intel Xeon is 1.07 us and the one on ARMv7 is 4.44 us, respectively.

Original languageEnglish
Title of host publicationSEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems
PublisherAssociation for Computing Machinery, Inc
Pages21-25
Number of pages5
ISBN (Print)9781450339100
DOIs
Publication statusPublished - 2015 Oct 27
Event2nd International Workshop on Software Engineering for Parallel Systems, SEPS 2015 - Pittsburgh, United States
Duration: 2015 Oct 27 → …

Other

Other2nd International Workshop on Software Engineering for Parallel Systems, SEPS 2015
CountryUnited States
CityPittsburgh
Period15/10/27 → …

Fingerprint

Jitter
Linux
Synchronization
Computer systems
Tuning
Scheduling
Hardware

Keywords

  • Automatic parallelization
  • Ftrace
  • Linux
  • Multicore
  • Systrace

ASJC Scopus subject areas

  • Hardware and Architecture
  • Computational Theory and Mathematics
  • Software

Cite this

Fukui, D., Shimaoka, M., Mikami, H., Hillenbrand, D., Yamamoto, H., Kimura, K., & Kasahara, H. (2015). Annotatable systrace: An extended linux ftrace for tracing a parallelized program. In SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems (pp. 21-25). Association for Computing Machinery, Inc. https://doi.org/10.1145/2837476.2837479

Annotatable systrace : An extended linux ftrace for tracing a parallelized program. / Fukui, Daichi; Shimaoka, Mamoru; Mikami, Hiroki; Hillenbrand, Dominic; Yamamoto, Hideo; Kimura, Keiji; Kasahara, Hironori.

SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems. Association for Computing Machinery, Inc, 2015. p. 21-25.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Fukui, D, Shimaoka, M, Mikami, H, Hillenbrand, D, Yamamoto, H, Kimura, K & Kasahara, H 2015, Annotatable systrace: An extended linux ftrace for tracing a parallelized program. in SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems. Association for Computing Machinery, Inc, pp. 21-25, 2nd International Workshop on Software Engineering for Parallel Systems, SEPS 2015, Pittsburgh, United States, 15/10/27. https://doi.org/10.1145/2837476.2837479
Fukui D, Shimaoka M, Mikami H, Hillenbrand D, Yamamoto H, Kimura K et al. Annotatable systrace: An extended linux ftrace for tracing a parallelized program. In SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems. Association for Computing Machinery, Inc. 2015. p. 21-25 https://doi.org/10.1145/2837476.2837479
Fukui, Daichi ; Shimaoka, Mamoru ; Mikami, Hiroki ; Hillenbrand, Dominic ; Yamamoto, Hideo ; Kimura, Keiji ; Kasahara, Hironori. / Annotatable systrace : An extended linux ftrace for tracing a parallelized program. SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems. Association for Computing Machinery, Inc, 2015. pp. 21-25
@inproceedings{fe32f053edad4c8da6a0a548be79feaa,
title = "Annotatable systrace: An extended linux ftrace for tracing a parallelized program",
abstract = "Investigation of the runtime behavior is one of the most important processes for performance tuning on a computer system. Profiling tools have been widely used to detect hot-spots in a program. In addition to them, tracing tools produce valuable information especially from parallelized programs, such as thread scheduling, barrier synchronizations, context switching, thread migration, and jitter by interrupts. Users can optimize a runtime system and hardware configuration in addition to a program itself by utilizing the attained information. However, existing tools provide information per process or per function. Finer information like task-or loop-granularity should be required to understand the program behavior more precisely. This paper has proposed a tracing tool, Annotatable Systrace, to investigate runtime execution behavior of a parallelized program based on an extended Linux ftrace. The Annotatable Systrace can add arbitrary annotations in a trace of a target program. The proposed tool exploits traces from 183.equake, 179.art, and mpeg2enc on Intel Xeon X7560 and ARMv7 as an evaluation. The evaluation shows that the tool enables us to observe load imbalance along with the program execution. It can also generate a trace with the inserted annotations even on a 32-core machine. The overhead of one annotation on Intel Xeon is 1.07 us and the one on ARMv7 is 4.44 us, respectively.",
keywords = "Automatic parallelization, Ftrace, Linux, Multicore, Systrace",
author = "Daichi Fukui and Mamoru Shimaoka and Hiroki Mikami and Dominic Hillenbrand and Hideo Yamamoto and Keiji Kimura and Hironori Kasahara",
year = "2015",
month = "10",
day = "27",
doi = "10.1145/2837476.2837479",
language = "English",
isbn = "9781450339100",
pages = "21--25",
booktitle = "SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems",
publisher = "Association for Computing Machinery, Inc",

}

TY - GEN

T1 - Annotatable systrace

T2 - An extended linux ftrace for tracing a parallelized program

AU - Fukui, Daichi

AU - Shimaoka, Mamoru

AU - Mikami, Hiroki

AU - Hillenbrand, Dominic

AU - Yamamoto, Hideo

AU - Kimura, Keiji

AU - Kasahara, Hironori

PY - 2015/10/27

Y1 - 2015/10/27

N2 - Investigation of the runtime behavior is one of the most important processes for performance tuning on a computer system. Profiling tools have been widely used to detect hot-spots in a program. In addition to them, tracing tools produce valuable information especially from parallelized programs, such as thread scheduling, barrier synchronizations, context switching, thread migration, and jitter by interrupts. Users can optimize a runtime system and hardware configuration in addition to a program itself by utilizing the attained information. However, existing tools provide information per process or per function. Finer information like task-or loop-granularity should be required to understand the program behavior more precisely. This paper has proposed a tracing tool, Annotatable Systrace, to investigate runtime execution behavior of a parallelized program based on an extended Linux ftrace. The Annotatable Systrace can add arbitrary annotations in a trace of a target program. The proposed tool exploits traces from 183.equake, 179.art, and mpeg2enc on Intel Xeon X7560 and ARMv7 as an evaluation. The evaluation shows that the tool enables us to observe load imbalance along with the program execution. It can also generate a trace with the inserted annotations even on a 32-core machine. The overhead of one annotation on Intel Xeon is 1.07 us and the one on ARMv7 is 4.44 us, respectively.

AB - Investigation of the runtime behavior is one of the most important processes for performance tuning on a computer system. Profiling tools have been widely used to detect hot-spots in a program. In addition to them, tracing tools produce valuable information especially from parallelized programs, such as thread scheduling, barrier synchronizations, context switching, thread migration, and jitter by interrupts. Users can optimize a runtime system and hardware configuration in addition to a program itself by utilizing the attained information. However, existing tools provide information per process or per function. Finer information like task-or loop-granularity should be required to understand the program behavior more precisely. This paper has proposed a tracing tool, Annotatable Systrace, to investigate runtime execution behavior of a parallelized program based on an extended Linux ftrace. The Annotatable Systrace can add arbitrary annotations in a trace of a target program. The proposed tool exploits traces from 183.equake, 179.art, and mpeg2enc on Intel Xeon X7560 and ARMv7 as an evaluation. The evaluation shows that the tool enables us to observe load imbalance along with the program execution. It can also generate a trace with the inserted annotations even on a 32-core machine. The overhead of one annotation on Intel Xeon is 1.07 us and the one on ARMv7 is 4.44 us, respectively.

KW - Automatic parallelization

KW - Ftrace

KW - Linux

KW - Multicore

KW - Systrace

UR - http://www.scopus.com/inward/record.url?scp=84964749931&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84964749931&partnerID=8YFLogxK

U2 - 10.1145/2837476.2837479

DO - 10.1145/2837476.2837479

M3 - Conference contribution

SN - 9781450339100

SP - 21

EP - 25

BT - SEPS 2015 - Proceedings of the 2nd International Workshop on Software Engineering for Parallel Systems

PB - Association for Computing Machinery, Inc

ER -