skip to main content
10.1145/3204919.3207894acmotherconferencesArticle/Chapter ViewAbstractPublication PagesiwoclConference Proceedingsconference-collections
poster

ViennaCL++: Enable TensorFlow/Eigen via ViennaCL with OpenCL C++ Flow

Published: 14 May 2018 Publication History

Abstract

This paper presents the ViennaCL++, an OpenCL C++ kernel library for Vienna Computing Library (ViennaCL) combined with TensorFlow/Eigen library to enable acceleration and optimization of linear algebraic computing. Previously, TensorFlow would invoke Eigen for solvers. To enable OpenCL flow, one can invoke Eigen via ViennaCL to generate kernel programs for GPU computation. In order to support the features of the latest specification, the linear algebraic kernel library is migrated to OpenCL C++ with C++ features in ViennaCL++ to construct the OpenCL flow for TensorFlow and its underlying computational library Eigen. The software flow is based on the state-of-the-art specification of OpenCL and OpenCL C++ kernel langauge, as well as SPIR-V binary intermediate representation. The experimental results of ViennaCL++ which includes C++ class and SPIR-V flow are achieving 8 times and 49 times speedup for BLAS2 and BLAS3 operations compared to Eigen library on the x86_64 of Intel hardware. Overall, these results indicate that the performance of ViennaCL++ runtime execution with OpenCL C++ and SPIR-V flow is similar to traditional OpenCL C flow. Note that the Intel OpenCL 2.1 compiler is equipped with most Khronos OpenCL 2.2 (OpenCL C++) linguistic to support the experiment.

References

[1]
OpenCL Overview. 2018. https://www.khronos.org/opencl/.
[2]
Karl Rupp, Philippe Tillet, Florian Rudolf, Josef Weinbub, Andreas Morhammer, Tibor Grasser, Ansgar JuÌĹngel, and Siegfried Selberherr. 2016. ViennaCL---Linear Algebra Library for Multi-and Many-Core Architectures. SIAM Journal on Scientific Computing 38, 5 (2016), S412--S439.
[3]
Shao-Chung Wang, Li-Chen Kan, Yuan-Shin Hwang, and Jenq-Kuen Lee. 2016. Energy efficient affine register file for GPU microarchitecture. In Parallel Processing Workshops (ICPPW), 2016 45th International Conference on. IEEE, 52--58.
[4]
Shao-Chung Wang, Li-Chen Kan, Chao-Lin Lee, Yuan-Shin Hwang, and Jenq-Kuen Lee. 2017. Architecture and Compiler Support for GPUs Using Energy-Efficient Affine Register Files. ACM Transactions on Design Automation of Electronic Systems (TODAES) 23, 2 (2017), 18.
[5]
Chun-Chieh Yang, Shao-Chung Wang, Min-Yi Hsu, Yuan-Ming Chang, Yuan-Shin Hwang, and Jenq-Kuen Lee. 2017. OpenCL 2.0 Compiler Adaptation on LLVM for PTX Simulators. In Parallel Processing Workshops (ICPPW), 2017 46th International Conference on. IEEE, 53--58.

Cited By

View all
  • (2023)Beehive SPIR-V Toolkit: A Composable and Functional API for Runtime SPIR-V Code GenerationProceedings of the 15th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages10.1145/3623507.3623555(61-72)Online publication date: 18-Oct-2023
  • (2022)C++OpenCL4TVM: Support C++OpenCL Kernel for TVM NN OperatorsProceedings of the 10th International Workshop on OpenCL10.1145/3529538.3530001(1-2)Online publication date: 10-May-2022
  • (2021)Enabling the Use of C++20 Unseq Execution Policy for OpenCLProceedings of the 9th International Workshop on OpenCL10.1145/3456669.3456674(1-2)Online publication date: 27-Apr-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
IWOCL '18: Proceedings of the International Workshop on OpenCL
May 2018
108 pages
ISBN:9781450364393
DOI:10.1145/3204919
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

In-Cooperation

  • Huawei Technologies Co. Ltd.: Huawei Technologies Co. Ltd.
  • Khronos: Khronos Group
  • Xilinx: Xilinx Inc.
  • Codeplay: Codeplay Software Ltd.
  • Intel: Intel
  • The University of Bristol: The University of Bristol

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 May 2018

Check for updates

Author Tags

  1. C++
  2. OpenCL
  3. SPIR-V
  4. Shared Virtual Memory
  5. TensorFlow
  6. ViennaCL

Qualifiers

  • Poster
  • Research
  • Refereed limited

Funding Sources

  • This work was supported in part by the Ministry of Science and Technology of Taiwan

Conference

IWOCL '18
IWOCL '18: International Workshop on OpenCL
May 14 - 16, 2018
Oxford, United Kingdom

Acceptance Rates

IWOCL '18 Paper Acceptance Rate 16 of 33 submissions, 48%;
Overall Acceptance Rate 84 of 152 submissions, 55%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)8
  • Downloads (Last 6 weeks)1
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Beehive SPIR-V Toolkit: A Composable and Functional API for Runtime SPIR-V Code GenerationProceedings of the 15th ACM SIGPLAN International Workshop on Virtual Machines and Intermediate Languages10.1145/3623507.3623555(61-72)Online publication date: 18-Oct-2023
  • (2022)C++OpenCL4TVM: Support C++OpenCL Kernel for TVM NN OperatorsProceedings of the 10th International Workshop on OpenCL10.1145/3529538.3530001(1-2)Online publication date: 10-May-2022
  • (2021)Enabling the Use of C++20 Unseq Execution Policy for OpenCLProceedings of the 9th International Workshop on OpenCL10.1145/3456669.3456674(1-2)Online publication date: 27-Apr-2021
  • (2020)Accelerating NNEF Framework on OpenCL Devices Using clDNNProceedings of the International Workshop on OpenCL10.1145/3388333.3388655(1-2)Online publication date: 27-Apr-2020
  • (2018)Scheduling Methods to Optimize Dependent Programs for GPU ArchitectureWorkshop Proceedings of the 47th International Conference on Parallel Processing10.1145/3229710.3229723(1-8)Online publication date: 13-Aug-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media