...
首页> 外文期刊>Pomiary Automatyka Kontrola >A conversion of 'while' and 'do-while' loops to allow dependency analysis by existing tools
【24h】

A conversion of 'while' and 'do-while' loops to allow dependency analysis by existing tools

机译:“ while”和“ do-while”循环的转换,以允许通过现有工具进行依赖性分析

获取原文
获取原文并翻译 | 示例
           

摘要

In this paper there are presented methods for conversion of "while" and "do-while" loops to the form of "for" loops. The aim of this conversion is to allow dependence analysis by many existing tools. The dependence analysis allows determining which parts of the analyzed program code must be executed sequentially, and which can be executed independently. Such an analysis is used to reduce the use of resources in embedded systems. Automating the analysis also allows specifying types of classes of algorithms and their implementation which can be the subject of optimization. The nature of optimization can also be determined.%Większość narzędzi analizujących zależności "LooPo", "Clan" I "Petit" posiada możliwość analizy pętli typu for, w których wykonuje się operacje na tablicach za pomocą operatorów indeksowania. W chwili obecnej pętle while są analizowane przez analizator "LooPo". Analizatory zależności "elan" I "petit" analizują jedynie pętle for. Zasadną więc jest koncepcja konwersji konstrukcji typu "while", "do-while" do postaci pętli "for", gdyż po wykonaniu konwersji możliwe staje się użycie dowolnego narzędzia do analizy zależności. Użycie różnych narzędzi do analizy zależności daje możliwość uzyskania wyników analizy w postaci odpowiedniej dla zaimplementowanych algorytmów zrównoleglających, co pozwala na uzyskanie większego zbioru propozycji zrównoleglenia kodu pętli. Wykonanie konwersji umożliwi również zastosowanie szeroko implementowanego popularnego standardu OpenMP w celu podziału przestrzeni iteracji między niezależne wątki. Docelowa postać pętli spełnia wymagania dotyczące pętli for przedstawione w specyfikacji OpenMP v3.0. Zastosowanie zgodności z tym standardem umożliwia analizę zależności w pętli przez większość analizatorów pętli w języku C I zapisanie zrównoleglonej postaci pętli zgodnie ze standardem. Algorytm opisany w tym artykule jest zrealizowany kompilatorze "Stepson", który jest aktualnie rozwijany. Informacje o skompilowanym programie są przechowywane w postaci drzewa. Opisany algorytm pozwala zwiększyć liczbę pętli, które można automatycznie analizować.
机译:在本文中,提出了将“ while”和“ do-while”循环转换为“ for”循环形式的方法。这种转换的目的是允许通过许多现有工具进行依赖性分析。依赖性分析允许确定所分析的程序代码的哪些部分必须顺序执行,哪些可以独立执行。这种分析用于减少嵌入式系统中资源的使用。使分析自动化还可以指定算法类别的类型及其实现,这些算法可以作为优化的主题。还可以确定优化的性质。%大多数“ LooPo”,“ Clan”和“ Petit”依赖性分析工具都可以选择分析使用索引运算符执行表操作的循环。目前,“ LooPo”分析器正在评估while循环。 “ elan”和“ petit”依赖性分析器仅分析循环。因此,将“ while”,“ do-while”构造转换为“ for”循环的概念是合理的,因为转换之后可以使用任何依赖关系分析工具。使用各种依赖关系分析工具可以使您有机会以适合于已实现的并行化算法的形式获得分析结果,这使您可以获取更多的建议来进行循环代码的并行化。执行转换还将允许使用广泛实施的流行OpenMP标准,以在独立线程之间划分迭代空间。目标循环形式满足OpenMP v3.0规范中概述的for循环要求。符合该标准的应用程序允许大多数C语言的循环分析器分析循环中的关系,并根据该标准保存循环的并行形式。本文中描述的算法由当前正在开发的“ Stepson”编译器实现。有关已编译程序的信息存储为树。所描述的算法允许增加可以自动分析的循环数。

著录项

  • 来源
    《Pomiary Automatyka Kontrola》 |2010年第12期|p.1501-1503|共3页
  • 作者单位

    West Pomeranian University Of Technology, Faculty Of Computer Science And Information Technology, Zolnierska 49, 71-210 Szczecin;

    West Pomeranian University Of Technology, Faculty Of Computer Science And Information Technology, Zolnierska 49, 71-210 Szczecin;

  • 收录信息
  • 原文格式 PDF
  • 正文语种 eng
  • 中图分类
  • 关键词

    compiler; loop conversion; dependency analysis;

    机译:编译器循环转换;依赖性分析;

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号