The Experts below are selected from a list of 9384 Experts worldwide ranked by ideXlab platform

Hiroaki Kobayashi - One of the best experts on this subject based on the ideXlab platform.

  • vectorization aware loop optimization with user defined Code transformations
    International Conference on Cluster Computing, 2017
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Thorsten Reimann, Kazuhiko Komatsu, Takashi Soga, Akihiro Musa, Hiroaki Kobayashi
    Abstract:

    The cost of maintaining an Application Code would significantly increase if the Application Code is branched into multiple versions, each of which is optimized for a different architecture. In this work, default and vector versions of a realworld Application Code are refactored to be a single version, and the differences between the versions are expressed as userdefined Code transformations. As a result, Application developers can maintain only the single version, and transform it to its vector version just before the compilation. Although Code optimizations for a vector processor are sometimes different from those for other processors, Application developers can enjoy the performance of the vector processor without increasing the Code complexity. Evaluation results demonstrate that vectorizationaware loop optimization for a vector processor can be expressed as user-defined Code transformation rules, and thereby significantly improve the performance of a vector processor without major Code modifications.

  • Directive Translation for Various HPC Systems Using the Xevolver Framework
    Sustained Simulation Performance 2016, 2016
    Co-Authors: Kazuhiko Komatsu, Hiroyuki Takizawa, Ryusuke Egawa, Hiroaki Kobayashi
    Abstract:

    This paper proposes a directive translation approach that translates a special placeholder to different directives, depending on the target HPC system. The special placeholder in an Application Code is used as a trigger for the directive translation. By employing a Code translation framework, Xevolver, the special placeholder can be translated to various directives that fit to any target HPC systems. Instead of using multiple directives, it can keep maintainability and readability of the original Code because only special placeholders are inserted into an Application Code. This paper also demonstrates a translation of a special placeholder into OpenMP directives to clarify the effectiveness of the proposed directive translation approach.

  • xevolver an xml based Code translation framework for supporting hpc Application migration
    IEEE International Conference on High Performance Computing Data and Analytics, 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

  • HiPC - Xevolver: An XML-based Code translation framework for supporting HPC Application migration
    2014 21st International Conference on High Performance Computing (HiPC), 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

Hiroyuki Takizawa - One of the best experts on this subject based on the ideXlab platform.

  • Xevolver: A User-Defined Code Transformation Approach to Streamlining Legacy Code Migration
    Advanced Software Technologies for Post-Peta Scale Computing, 2018
    Co-Authors: Hiroyuki Takizawa, Reiji Suda, Daisuke Takahashi, Ryusuke Egawa
    Abstract:

    Since different systems usually require different performance optimizations, an Application Code is likely “specialized” for a particular system configuration to fully extract the system performance. This is one major reason why migration of an existing Application Code, so-called legacy Code migration, is so labor-intensive and error-prone especially in the high-performance computing (HPC) area. To make matters worse, the diversity of system architectures would increase the number of system configurations that have to be considered during the life of an Application. As a result, the increasing system complexity and diversity will force programmers to further invest enormous time and effort on HPC Application development and maintenance. For long-term software development and maintenance, an HPC Application Code should not be optimized for a particular system configuration. However, simply excluding system-awareness from the Code just results in reducing the performance, because system-awareness can be regarded as the necessary information to exploit the performance of the target system. The goal of this project is to express system-awareness separately from the HPC Application Code to achieve high performance while keeping the Code maintainability. To this end, we have been developing a Code transformation framework, Xevolver, so that users can express system-awareness as user-defined Code transformation rules separately from HPC Application Codes. By defining custom Code transformations for individual cases, an HPC Application Code itself does not need to be modified for each system configuration and is transformed for each system by using the Code transformations defined separately from the Code.

  • vectorization aware loop optimization with user defined Code transformations
    International Conference on Cluster Computing, 2017
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Thorsten Reimann, Kazuhiko Komatsu, Takashi Soga, Akihiro Musa, Hiroaki Kobayashi
    Abstract:

    The cost of maintaining an Application Code would significantly increase if the Application Code is branched into multiple versions, each of which is optimized for a different architecture. In this work, default and vector versions of a realworld Application Code are refactored to be a single version, and the differences between the versions are expressed as userdefined Code transformations. As a result, Application developers can maintain only the single version, and transform it to its vector version just before the compilation. Although Code optimizations for a vector processor are sometimes different from those for other processors, Application developers can enjoy the performance of the vector processor without increasing the Code complexity. Evaluation results demonstrate that vectorizationaware loop optimization for a vector processor can be expressed as user-defined Code transformation rules, and thereby significantly improve the performance of a vector processor without major Code modifications.

  • Directive Translation for Various HPC Systems Using the Xevolver Framework
    Sustained Simulation Performance 2016, 2016
    Co-Authors: Kazuhiko Komatsu, Hiroyuki Takizawa, Ryusuke Egawa, Hiroaki Kobayashi
    Abstract:

    This paper proposes a directive translation approach that translates a special placeholder to different directives, depending on the target HPC system. The special placeholder in an Application Code is used as a trigger for the directive translation. By employing a Code translation framework, Xevolver, the special placeholder can be translated to various directives that fit to any target HPC systems. Instead of using multiple directives, it can keep maintainability and readability of the original Code because only special placeholders are inserted into an Application Code. This paper also demonstrates a translation of a special placeholder into OpenMP directives to clarify the effectiveness of the proposed directive translation approach.

  • xevolver an xml based Code translation framework for supporting hpc Application migration
    IEEE International Conference on High Performance Computing Data and Analytics, 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

  • HiPC - Xevolver: An XML-based Code translation framework for supporting HPC Application migration
    2014 21st International Conference on High Performance Computing (HiPC), 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

Ryusuke Egawa - One of the best experts on this subject based on the ideXlab platform.

  • Xevolver: A User-Defined Code Transformation Approach to Streamlining Legacy Code Migration
    Advanced Software Technologies for Post-Peta Scale Computing, 2018
    Co-Authors: Hiroyuki Takizawa, Reiji Suda, Daisuke Takahashi, Ryusuke Egawa
    Abstract:

    Since different systems usually require different performance optimizations, an Application Code is likely “specialized” for a particular system configuration to fully extract the system performance. This is one major reason why migration of an existing Application Code, so-called legacy Code migration, is so labor-intensive and error-prone especially in the high-performance computing (HPC) area. To make matters worse, the diversity of system architectures would increase the number of system configurations that have to be considered during the life of an Application. As a result, the increasing system complexity and diversity will force programmers to further invest enormous time and effort on HPC Application development and maintenance. For long-term software development and maintenance, an HPC Application Code should not be optimized for a particular system configuration. However, simply excluding system-awareness from the Code just results in reducing the performance, because system-awareness can be regarded as the necessary information to exploit the performance of the target system. The goal of this project is to express system-awareness separately from the HPC Application Code to achieve high performance while keeping the Code maintainability. To this end, we have been developing a Code transformation framework, Xevolver, so that users can express system-awareness as user-defined Code transformation rules separately from HPC Application Codes. By defining custom Code transformations for individual cases, an HPC Application Code itself does not need to be modified for each system configuration and is transformed for each system by using the Code transformations defined separately from the Code.

  • vectorization aware loop optimization with user defined Code transformations
    International Conference on Cluster Computing, 2017
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Thorsten Reimann, Kazuhiko Komatsu, Takashi Soga, Akihiro Musa, Hiroaki Kobayashi
    Abstract:

    The cost of maintaining an Application Code would significantly increase if the Application Code is branched into multiple versions, each of which is optimized for a different architecture. In this work, default and vector versions of a realworld Application Code are refactored to be a single version, and the differences between the versions are expressed as userdefined Code transformations. As a result, Application developers can maintain only the single version, and transform it to its vector version just before the compilation. Although Code optimizations for a vector processor are sometimes different from those for other processors, Application developers can enjoy the performance of the vector processor without increasing the Code complexity. Evaluation results demonstrate that vectorizationaware loop optimization for a vector processor can be expressed as user-defined Code transformation rules, and thereby significantly improve the performance of a vector processor without major Code modifications.

  • Directive Translation for Various HPC Systems Using the Xevolver Framework
    Sustained Simulation Performance 2016, 2016
    Co-Authors: Kazuhiko Komatsu, Hiroyuki Takizawa, Ryusuke Egawa, Hiroaki Kobayashi
    Abstract:

    This paper proposes a directive translation approach that translates a special placeholder to different directives, depending on the target HPC system. The special placeholder in an Application Code is used as a trigger for the directive translation. By employing a Code translation framework, Xevolver, the special placeholder can be translated to various directives that fit to any target HPC systems. Instead of using multiple directives, it can keep maintainability and readability of the original Code because only special placeholders are inserted into an Application Code. This paper also demonstrates a translation of a special placeholder into OpenMP directives to clarify the effectiveness of the proposed directive translation approach.

  • xevolver an xml based Code translation framework for supporting hpc Application migration
    IEEE International Conference on High Performance Computing Data and Analytics, 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

  • HiPC - Xevolver: An XML-based Code translation framework for supporting HPC Application migration
    2014 21st International Conference on High Performance Computing (HiPC), 2014
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Shoichi Hirasawa, Yasuharu Hayashi, Hiroaki Kobayashi
    Abstract:

    This paper proposes an extensible programming framework to separate platform-specific optimizations from Application Codes. The framework allows programmers to define their own Code translation rules for special demands of individual systems, compilers, libraries, and Applications. Code translation rules associated with user-defined compiler directives are defined in an external file, and the Application Code is just annotated by the directives. For Code transformations based on the rules, the framework exposes the abstract syntax tree (AST) of an Application Code as an XML document to expert programmers. Hence, the XML document of an AST can be transformed using any XML-based technologies. Our case studies using real Applications demonstrate that the framework is effective to separate platform-specific optimizations from Application Codes, and to incrementally improve the performance of an existing Application without messing up the Code.

Walter Stechele - One of the best experts on this subject based on the ideXlab platform.

  • Using Partial-Run-Time Reconfigurable Hardware to accelerate Video Processing in Driver Assistance System
    2007 Design Automation & Test in Europe Conference & Exhibition, 2007
    Co-Authors: Christopher Claus, Johannes Zeppenfeld, Florian Muller, Walter Stechele
    Abstract:

    In this paper we show a reconfigurable hardware architecture for the acceleration of video-based driver assistance Applications in future automotive systems. The concept is based on a separation of pixel-level operations and high level Application Code. Pixel-level operations are accelerated by coprocessors, whereas high level Application Code is implemented fully programmable on standard PowerPC CPU cores to allow flexibility for new algorithms. In addition, the Application Code is able to dynamically reconfigure the coprocessors available on the system, allowing for a much larger set of hardware accelerated functionality than would normally fit onto a device. This process makes use of the partial dynamic reconfiguration capabilities of Xilinx Virtex FPGAs

  • DATE - Using partial-run-time reconfigurable hardware to accelerate video processing in driver assistance system
    2007 Design Automation & Test in Europe Conference & Exhibition, 2007
    Co-Authors: Christopher Claus, Johannes Zeppenfeld, Florian Helmut Müller, Walter Stechele
    Abstract:

    In this paper we show a reconfigurable hardware architecture for the acceleration of video-based driver assistance Applications in future automotive systems. The concept is based on a separation of pixel-level operations and high level Application Code. Pixel-level operations are accelerated by coprocessors, whereas high level Application Code is implemented fully programmable on standard PowerPC CPU cores to allow flexibility for new algorithms. In addition, the Application Code is able to dynamically reconfigure the coprocessors available on the system, allowing for a much larger set of hardware accelerated functionality than would normally fit onto a device. This process makes use of the partial dynamic reconfiguration capabilities of Xilinx Virtex FPGAs.

Kazuhiko Komatsu - One of the best experts on this subject based on the ideXlab platform.

  • vectorization aware loop optimization with user defined Code transformations
    International Conference on Cluster Computing, 2017
    Co-Authors: Hiroyuki Takizawa, Ryusuke Egawa, Thorsten Reimann, Kazuhiko Komatsu, Takashi Soga, Akihiro Musa, Hiroaki Kobayashi
    Abstract:

    The cost of maintaining an Application Code would significantly increase if the Application Code is branched into multiple versions, each of which is optimized for a different architecture. In this work, default and vector versions of a realworld Application Code are refactored to be a single version, and the differences between the versions are expressed as userdefined Code transformations. As a result, Application developers can maintain only the single version, and transform it to its vector version just before the compilation. Although Code optimizations for a vector processor are sometimes different from those for other processors, Application developers can enjoy the performance of the vector processor without increasing the Code complexity. Evaluation results demonstrate that vectorizationaware loop optimization for a vector processor can be expressed as user-defined Code transformation rules, and thereby significantly improve the performance of a vector processor without major Code modifications.

  • Directive Translation for Various HPC Systems Using the Xevolver Framework
    Sustained Simulation Performance 2016, 2016
    Co-Authors: Kazuhiko Komatsu, Hiroyuki Takizawa, Ryusuke Egawa, Hiroaki Kobayashi
    Abstract:

    This paper proposes a directive translation approach that translates a special placeholder to different directives, depending on the target HPC system. The special placeholder in an Application Code is used as a trigger for the directive translation. By employing a Code translation framework, Xevolver, the special placeholder can be translated to various directives that fit to any target HPC systems. Instead of using multiple directives, it can keep maintainability and readability of the original Code because only special placeholders are inserted into an Application Code. This paper also demonstrates a translation of a special placeholder into OpenMP directives to clarify the effectiveness of the proposed directive translation approach.