完整後設資料紀錄
DC 欄位 | 值 | 語言 |
---|---|---|
dc.contributor.author | Chiu, Ming-Tsung | en_US |
dc.contributor.author | You, Yi-Ping | en_US |
dc.date.accessioned | 2019-12-13T01:09:56Z | - |
dc.date.available | 2019-12-13T01:09:56Z | - |
dc.date.issued | 2019-09-01 | en_US |
dc.identifier.issn | 1383-7621 | en_US |
dc.identifier.uri | http://dx.doi.org/10.1016/j.sysarc.2019.06.008 | en_US |
dc.identifier.uri | http://hdl.handle.net/11536/153031 | - |
dc.description.abstract | Heterogeneous computing has become popular in the past decade. Many frameworks have been proposed to provide a uniform way to program for accelerators, such as GPUs, DSPs, and FPGAs. Among them, an open and royalty-free standard, OpenCL, is widely adopted by the industry. However, many OpenCL-enabled accelerators and the standard itself do not support preemptive multitasking. To the best of our knowledge, previously proposed techniques are not portable or cannot handle ill-designed kernels (the codes that are executed on the accelerators), which will never ever finish. This paper presents a framework (called CLPKM) that provides an abstraction layer between OpenCL applications and the underlying OpenCL runtime to enable preemption of a kernel execution instance based on a software checkpointing mechanism. CLPKM includes (1) an OpenCL runtime library that intercepts OpenCL API calls, (2) a source-to-source compiler that performs the preemption-enabling transformation, and (3) a daemon that schedules OpenCL tasks using priority-based preemptive scheduling techniques. Experiments demonstrated that CLPKM reduced the slowdown of high-priority processes from 4.66x to 1.52-2.23x under up to 16 low-priority, heavy-workload processes running in the background and caused an average of 3.02-6.08x slowdown for low-priority processes. | en_US |
dc.language.iso | en_US | en_US |
dc.subject | GPGPU | en_US |
dc.subject | OpenCL | en_US |
dc.subject | Preemption | en_US |
dc.subject | Software checkpointing | en_US |
dc.title | CLPKM: A checkpoint-based preemptive multitasking framework for OpenCL kernels | en_US |
dc.type | Article | en_US |
dc.identifier.doi | 10.1016/j.sysarc.2019.06.008 | en_US |
dc.identifier.journal | JOURNAL OF SYSTEMS ARCHITECTURE | en_US |
dc.citation.volume | 98 | en_US |
dc.citation.spage | 53 | en_US |
dc.citation.epage | 62 | en_US |
dc.contributor.department | 資訊工程學系 | zh_TW |
dc.contributor.department | Department of Computer Science | en_US |
dc.identifier.wosnumber | WOS:000487166300005 | en_US |
dc.citation.woscount | 0 | en_US |
顯示於類別: | 期刊論文 |