-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnudt-pocl-use-case.html
More file actions
74 lines (53 loc) · 4.52 KB
/
nudt-pocl-use-case.html
File metadata and controls
74 lines (53 loc) · 4.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="robots" content="index, follow" />
<meta name="keywords" content="OpenCL portable OpenCL PoCL pocl Portable Computing Langauge" />
<meta name="description" content="PoCL - Portable Computing Language" />
<meta property="og:title" content="PoCL home page"/>
<meta property="og:site_name" content="PoCL"/>
<meta property="og:type" content="website"/>
<meta property="og:description" content="PoCL: a performance portable open source OpenCL implementation"/>
<meta property="og:url" content="http://portablecl.org"/>
<title>PoCL - Portable Computing Language | pocl and the Matrix-2000 co-processor</title>
<link rel="stylesheet" type="text/css" href="pocl-style.css" />
</head>
<body>
<div id="page">
<div id="header">
<h1 id="title"><span style="height: 100%; vertical-align: middle;"></span>
<a href="http://portablecl.org"><img src="img/pocl-80x60.png" border="0" style="vertical-align: middle;"></a>
<span style="height: 100%; vertical-align: middle;"> Portable Computing Language | pocl and the Matrix-2000 co-processor</span></h1>
</div>
<div id="navi">
<ul id="menu_item_list">
<li class="menu_item"><a href="index.html" class="menu_link">Main</a></li>
<li class="menu_item"><a href="download.html" class="menu_link">Download</a></li>
<li class="menu_item"><a href="docs/html" class="menu_link">Documentation</a></li>
<li class="menu_item"><a href="contact.html" class="menu_link">Contact</a></li>
<li class="menu_item"><a href="publications.html" class="menu_link">Publications</a></li>
</ul>
</div>
<div id="content">
<p><i>
The Matrix-2000 architecture is designed to replace the Intel Xeon Phi accelerators of the TianHe-2 supercomputer. While the Matrix-2000 accelerator provides the potential for higher performance, its potential can only be realized if the software can make effective use of it. To this end, the Compiler Lab from <a href="http://www.nudt.edu.cn/index_eng.htm">National University of Defense Technology (NUDT)</a> provides an efficient OpenCL implementation for such an architecture.</p>
<p>Overall, our OpenCL implementation is built on top of LLVM v5.0 and reuses code pieces from POCL as well. Thanks very much for the excellent work in POCL. When starting to develop our own OpenCL implementation, we have selected POCL with the CUDA support as the starting point. Based on this, we have customized POCL to adapt to the Matrix-2000 architecture. In particular, we have rewritten the device-side runtime scheduler, as well as reimplementing all the OpenCL APIs based on the Xeon-Matrix2000 driver. To unlock the hardware potential, our device runtime uses a push-based task dispatching strategy and the performance of the kernel atomics is improved significantly. This new implementation has led to a lot of coding work and thus we give it a new name "MOCL", which is detailed in our article <a href="https://jianbinfang.github.io/files/2018-03-15-mocl.pdf">Zhang et al. MOCL: an efficient OpenCL implementation for the matrix-2000 architecture.</a> CF 2018: 26-35".</p>
<p>This MOCL framework has been deployed on the TH-2A system and is readily available to the public. In the near future, we plan to upstream our improved runtime scheduler to POCL, so as to provide users with more options. Again, we thank the very nice work in POCL for this community. We sincerely thank Dr. Pekka Jääskeläinen from Tampere University of Technology, Dr. James Price from Bristol University, and other POCL contributors, for their hands-on help.</p>
<p>Regards,<br/>
Dr. Jianbin Fang<br/>
2018-09-18<br/>
</p>
</i>
<p>As always, if you have found any other interesting use cases for pocl code base, <a href="http://portablecl.org/discussion.html">please let us know</a>, we'll be more than happy to post them to pocl web page.</p>
</div>
<div id="footer">
<span style="height: 100%; vertical-align: middle;"></span>
<a href="http://portablecl.org"><img src="img/pocl-80x60.png" border="0" style="vertical-align: middle;"></a>
<span style="height: 100%; vertical-align: middle;">Portable Computing Language © 2010-2025 PoCL developers
</span>
</div>
</div>
</body>
</html>