An OpenCL runtime library for embedded multi-core accelerator

Ryuichi Sakamoto, Mikiko Sato, Yusuke Koizumi, Hideharu Amano, Mitaro Namiki

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

1 Citation (Scopus)

Abstract

In recent years, improvements of energy efficiency and computational performance have become a major issue, because smartphones and tablets become popular. To implement high performance, multi-core accelerator consists of general purpose processors and accelerators are often used. But to use these multi-core accelerator efficiently, programmers have to consider synchronization and data transfer between accelerators, memory and I/O. Therefore frameworks such as OpenCL have been proposed for effective use of parallel computing resources of multi-core processors. OpenCL frameworks for GPGPU, Intel multi-core and many other kind of multi-core processors have been developed on Linux. However, in order to use those multi-core accelerators effectively, it is necessary to control accelerators with software environment aiming effective use of accelerators. Generally user mode application program calls OS to synchronize of accelerator's data transfer and termination of the its execution with overhead. In this paper, accelerators are controlled from collaborated OS and OpenCL library, instead of user mode application program. Our feature of these methods is that OS cooperates with library to reduce overhead of control accelerators. The proposed framework in this paper integrates the execution and data transfer control in an OpenCL library and an embedded OS. The OpenCL library creates task automaticity generated from the description of the user program. The OpenCL library gives scheduling information such as execution order about tasks to the scheduler of the embedded OS. The embedded OS's scheduler handles events of execution, termination and synchronization of data transfer via interrupts from accelerators. The scheduler determines to execute next task from the scheduling information passed by the OpenCL library. By the schemes to control accelerators are managed in OS, accelerators can be worked efficiently. The poster presentation shows the implemented OpenCL and OS framework for "Cube" processor embedded multi-core accelerator.

Original languageEnglish
Title of host publicationProceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA
Pages419-422
Number of pages4
DOIs
Publication statusPublished - 2012
Event18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - Seoul, Korea, Republic of
Duration: 2012 Aug 192012 Aug 22

Other

Other18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012
CountryKorea, Republic of
CitySeoul
Period12/8/1912/8/22

Fingerprint

Particle accelerators
Data transfer
Application programs
Synchronization
Scheduling
Smartphones
Parallel processing systems
Energy efficiency
Data storage equipment

Keywords

  • Embedded
  • Multi-Core Accelerator
  • OpenCL Runtime Library

ASJC Scopus subject areas

  • Artificial Intelligence
  • Hardware and Architecture
  • Computer Vision and Pattern Recognition

Cite this

Sakamoto, R., Sato, M., Koizumi, Y., Amano, H., & Namiki, M. (2012). An OpenCL runtime library for embedded multi-core accelerator. In Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA (pp. 419-422). [6300244] https://doi.org/10.1109/RTCSA.2012.67

An OpenCL runtime library for embedded multi-core accelerator. / Sakamoto, Ryuichi; Sato, Mikiko; Koizumi, Yusuke; Amano, Hideharu; Namiki, Mitaro.

Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA. 2012. p. 419-422 6300244.

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

Sakamoto, R, Sato, M, Koizumi, Y, Amano, H & Namiki, M 2012, An OpenCL runtime library for embedded multi-core accelerator. in Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA., 6300244, pp. 419-422, 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012, Seoul, Korea, Republic of, 12/8/19. https://doi.org/10.1109/RTCSA.2012.67
Sakamoto R, Sato M, Koizumi Y, Amano H, Namiki M. An OpenCL runtime library for embedded multi-core accelerator. In Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA. 2012. p. 419-422. 6300244 https://doi.org/10.1109/RTCSA.2012.67
Sakamoto, Ryuichi ; Sato, Mikiko ; Koizumi, Yusuke ; Amano, Hideharu ; Namiki, Mitaro. / An OpenCL runtime library for embedded multi-core accelerator. Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA. 2012. pp. 419-422
@inproceedings{0947efbfeb614444979f8ba99e9d189a,
title = "An OpenCL runtime library for embedded multi-core accelerator",
abstract = "In recent years, improvements of energy efficiency and computational performance have become a major issue, because smartphones and tablets become popular. To implement high performance, multi-core accelerator consists of general purpose processors and accelerators are often used. But to use these multi-core accelerator efficiently, programmers have to consider synchronization and data transfer between accelerators, memory and I/O. Therefore frameworks such as OpenCL have been proposed for effective use of parallel computing resources of multi-core processors. OpenCL frameworks for GPGPU, Intel multi-core and many other kind of multi-core processors have been developed on Linux. However, in order to use those multi-core accelerators effectively, it is necessary to control accelerators with software environment aiming effective use of accelerators. Generally user mode application program calls OS to synchronize of accelerator's data transfer and termination of the its execution with overhead. In this paper, accelerators are controlled from collaborated OS and OpenCL library, instead of user mode application program. Our feature of these methods is that OS cooperates with library to reduce overhead of control accelerators. The proposed framework in this paper integrates the execution and data transfer control in an OpenCL library and an embedded OS. The OpenCL library creates task automaticity generated from the description of the user program. The OpenCL library gives scheduling information such as execution order about tasks to the scheduler of the embedded OS. The embedded OS's scheduler handles events of execution, termination and synchronization of data transfer via interrupts from accelerators. The scheduler determines to execute next task from the scheduling information passed by the OpenCL library. By the schemes to control accelerators are managed in OS, accelerators can be worked efficiently. The poster presentation shows the implemented OpenCL and OS framework for {"}Cube{"} processor embedded multi-core accelerator.",
keywords = "Embedded, Multi-Core Accelerator, OpenCL Runtime Library",
author = "Ryuichi Sakamoto and Mikiko Sato and Yusuke Koizumi and Hideharu Amano and Mitaro Namiki",
year = "2012",
doi = "10.1109/RTCSA.2012.67",
language = "English",
pages = "419--422",
booktitle = "Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA",

}

TY - GEN

T1 - An OpenCL runtime library for embedded multi-core accelerator

AU - Sakamoto, Ryuichi

AU - Sato, Mikiko

AU - Koizumi, Yusuke

AU - Amano, Hideharu

AU - Namiki, Mitaro

PY - 2012

Y1 - 2012

N2 - In recent years, improvements of energy efficiency and computational performance have become a major issue, because smartphones and tablets become popular. To implement high performance, multi-core accelerator consists of general purpose processors and accelerators are often used. But to use these multi-core accelerator efficiently, programmers have to consider synchronization and data transfer between accelerators, memory and I/O. Therefore frameworks such as OpenCL have been proposed for effective use of parallel computing resources of multi-core processors. OpenCL frameworks for GPGPU, Intel multi-core and many other kind of multi-core processors have been developed on Linux. However, in order to use those multi-core accelerators effectively, it is necessary to control accelerators with software environment aiming effective use of accelerators. Generally user mode application program calls OS to synchronize of accelerator's data transfer and termination of the its execution with overhead. In this paper, accelerators are controlled from collaborated OS and OpenCL library, instead of user mode application program. Our feature of these methods is that OS cooperates with library to reduce overhead of control accelerators. The proposed framework in this paper integrates the execution and data transfer control in an OpenCL library and an embedded OS. The OpenCL library creates task automaticity generated from the description of the user program. The OpenCL library gives scheduling information such as execution order about tasks to the scheduler of the embedded OS. The embedded OS's scheduler handles events of execution, termination and synchronization of data transfer via interrupts from accelerators. The scheduler determines to execute next task from the scheduling information passed by the OpenCL library. By the schemes to control accelerators are managed in OS, accelerators can be worked efficiently. The poster presentation shows the implemented OpenCL and OS framework for "Cube" processor embedded multi-core accelerator.

AB - In recent years, improvements of energy efficiency and computational performance have become a major issue, because smartphones and tablets become popular. To implement high performance, multi-core accelerator consists of general purpose processors and accelerators are often used. But to use these multi-core accelerator efficiently, programmers have to consider synchronization and data transfer between accelerators, memory and I/O. Therefore frameworks such as OpenCL have been proposed for effective use of parallel computing resources of multi-core processors. OpenCL frameworks for GPGPU, Intel multi-core and many other kind of multi-core processors have been developed on Linux. However, in order to use those multi-core accelerators effectively, it is necessary to control accelerators with software environment aiming effective use of accelerators. Generally user mode application program calls OS to synchronize of accelerator's data transfer and termination of the its execution with overhead. In this paper, accelerators are controlled from collaborated OS and OpenCL library, instead of user mode application program. Our feature of these methods is that OS cooperates with library to reduce overhead of control accelerators. The proposed framework in this paper integrates the execution and data transfer control in an OpenCL library and an embedded OS. The OpenCL library creates task automaticity generated from the description of the user program. The OpenCL library gives scheduling information such as execution order about tasks to the scheduler of the embedded OS. The embedded OS's scheduler handles events of execution, termination and synchronization of data transfer via interrupts from accelerators. The scheduler determines to execute next task from the scheduling information passed by the OpenCL library. By the schemes to control accelerators are managed in OS, accelerators can be worked efficiently. The poster presentation shows the implemented OpenCL and OS framework for "Cube" processor embedded multi-core accelerator.

KW - Embedded

KW - Multi-Core Accelerator

KW - OpenCL Runtime Library

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

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

U2 - 10.1109/RTCSA.2012.67

DO - 10.1109/RTCSA.2012.67

M3 - Conference contribution

SP - 419

EP - 422

BT - Proceedings - 18th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, RTCSA 2012 - 2nd Workshop on Cyber-Physical Systems, Networks, and Applications, CPSNA

ER -