The Epiphany is a many-core, low power, low on-chip memory architecture and one can very cheaply gain access to a number of parallel cores which is beneficial for HPC education and prototyping. The very low power nature of these architectures also means that there is potential for their use in future HPC machines, however there is a high barrier to entry in programming them due to the associated complexities and immaturity of supporting tools. In this paper we present our work on ePython, a subset of Python for the Epiphany and similar many-core co-processors. Due to the limited on-chip memory per core we have developed a new Python interpreter and this, combined with additional support for parallelism, has meant that novices can take advantage of Python to very quickly write parallel codes on the Epiphany and explore concepts of HPC using a smaller scale parallel machine. The high level nature of Python opens up new possibilities on the Epiphany, we examine a computationally intensive Gauss-Seidel code from the programmability and performance perspective, discuss running Python hybrid on both the host CPU and Epiphany, and interoperability between a full Python interpreter on the CPU and ePython on the Epiphany. The result of this work is support for developing Python on the Epiphany, which can be applied to other similar architectures, that the community have already started to adopt and use to explore concepts of parallelism and HPC.
翻译:幽灵是一个多极、低功率、低芯存储结构,而且人们可以非常廉价地获得一些平行核心,这有利于高频PC教育和原型设计。这些结构的极低功率性质还意味着在未来的HPC机器中可能使用它们,然而,由于相关的复杂性和辅助工具的不成熟性,在编程中存在很大的障碍。在本文中,我们介绍了关于ePython的工作,这是关于Epipany和类似的许多核心共同处理器的Python的一组Python。由于我们开发了一个新的Python解释器核心的有限软体内存,我们开发了一个新的Python解释器。 由于我们开发了一个新的Pyphon解释器的有限性结构,再加上对平行解释器的更多支持,因此,Nypy Py Py Phon 的高级性质在运行一个可计算化的Eedeidel Ceformality 和Excial 之间, 正在运行一个可操作的Cy Phy Phy Phon 的Cy 和Cy Cy Cy 版本。