Support for Conditional Execution in Selective Scheduling
Conditional execution is a hardware feature available in some CPUs that allows assigning instruction a predicate so that instruction will only execute if the predicate is true. In this paper we propose a method for supporting conditional execution in the instruction scheduler and discuss the advanta...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
Ivannikov Institute for System Programming of the Russian Academy of Sciences
2018-10-01
|
Series: | Труды Института системного программирования РАН |
Subjects: | |
Online Access: | https://ispranproceedings.elpub.ru/jour/article/view/1031 |
_version_ | 1818393366923051008 |
---|---|
author | Dmitry Melnik Alexandr Monakov |
author_facet | Dmitry Melnik Alexandr Monakov |
author_sort | Dmitry Melnik |
collection | DOAJ |
description | Conditional execution is a hardware feature available in some CPUs that allows assigning instruction a predicate so that instruction will only execute if the predicate is true. In this paper we propose a method for supporting conditional execution in the instruction scheduler and discuss the advantages of this approach compared to a stand-alone optimization pass that precedes the instruction scheduling. We have implemented the proposed optimization in the selective scheduling in GCC compiler. Experimental results show an average improvement of 2% (and up to 16% on selected tests) for SPECFP part of SPEC CPU2000 benchmark. |
first_indexed | 2024-12-14T05:44:11Z |
format | Article |
id | doaj.art-68afa5d2c9bc4b9fbd6fd6a0bd3e4883 |
institution | Directory Open Access Journal |
issn | 2079-8156 2220-6426 |
language | English |
last_indexed | 2024-12-14T05:44:11Z |
publishDate | 2018-10-01 |
publisher | Ivannikov Institute for System Programming of the Russian Academy of Sciences |
record_format | Article |
series | Труды Института системного программирования РАН |
spelling | doaj.art-68afa5d2c9bc4b9fbd6fd6a0bd3e48832022-12-21T23:14:56ZengIvannikov Institute for System Programming of the Russian Academy of SciencesТруды Института системного программирования РАН2079-81562220-64262018-10-012101031Support for Conditional Execution in Selective SchedulingDmitry Melnik0Alexandr Monakov1ИСП РАНИСП РАНConditional execution is a hardware feature available in some CPUs that allows assigning instruction a predicate so that instruction will only execute if the predicate is true. In this paper we propose a method for supporting conditional execution in the instruction scheduler and discuss the advantages of this approach compared to a stand-alone optimization pass that precedes the instruction scheduling. We have implemented the proposed optimization in the selective scheduling in GCC compiler. Experimental results show an average improvement of 2% (and up to 16% on selected tests) for SPECFP part of SPEC CPU2000 benchmark.https://ispranproceedings.elpub.ru/jour/article/view/1031планирование командусловное выполнениеgcc |
spellingShingle | Dmitry Melnik Alexandr Monakov Support for Conditional Execution in Selective Scheduling Труды Института системного программирования РАН планирование команд условное выполнение gcc |
title | Support for Conditional Execution in Selective Scheduling |
title_full | Support for Conditional Execution in Selective Scheduling |
title_fullStr | Support for Conditional Execution in Selective Scheduling |
title_full_unstemmed | Support for Conditional Execution in Selective Scheduling |
title_short | Support for Conditional Execution in Selective Scheduling |
title_sort | support for conditional execution in selective scheduling |
topic | планирование команд условное выполнение gcc |
url | https://ispranproceedings.elpub.ru/jour/article/view/1031 |
work_keys_str_mv | AT dmitrymelnik supportforconditionalexecutioninselectivescheduling AT alexandrmonakov supportforconditionalexecutioninselectivescheduling |