Kento EMOTO's Home Page
Research Topics
- Skeletal Parallel Programing on Two-Dimensional
Arrays
We have been working on "Skeletal Parallelism",
in which we are encouraged to build efficient parallel programs by
composing the ready-made components, called skeletons. Computations
on two-dimensional arrays, such as matrix computations, image
processing, and relational database managements, are one of the most
fundamental and ubiquitous computations in computational science and
its vast application areas. However, development of efficient parallel
programs on two-dimensional arrays is known to be hard. Therefore, we
have been studying (1) a design of general parallel skeletons, i.e.,
useful basic patterns of parallel computation on two-dimensinal
arrays, (2) implementation of such skeletons on various parallel
computer architectures, and (3) a methodology to derive efficient
parallel program systematically or automatically from ones naively
composed with skeletons.
- Generator-based parallel programming
We are
trying to develop a novel parallel programming style called
generator-based parallel programming, in which we develop parallel
programs naively using generators, and get efficient execution via
drastic optimization driven by generators based on mathematical
properties of computation objects. Basically, parallelization of
sophisticated sequential programs is very hard, and not necessarily
results in good parallel programs. Rather, naively composed parallel
programs can be optimized drastically into efficient ones, keeping
their parallelism, which enables development of reliable and efficient
parallel programs. Therefore, we are studying generators that bring
naive generate-and-test parallel programs and their effective
optimization based on our theories of skeletons. This research topic
is of parallelism oblivious programming, in the sense that programmers
do not have to be aware of parallelism and can just concentrate on
making naive correct programs with generators that hide parallelism
from them.
Research Activities
- SkeTo
Project
We have been developing a practical
parallel skeleton library named 'SkeTo', which provides a set of
parallel skeletons (basic patterns of common parallel computation) to
be composed with each other to form parallel programs naively. Also,
we have been trying to implement an optimization mechanism on
skeletons within the library.
- Collaboration Work with Sun
Microsystems Laboratories on Parallel Programming
We have been developing growing libraries for reliable, easy parallel
programming in Fortress based
on our knowledge about skeletal parallel programming. One of the most
important features of our libraries is that libraries themselves
implement optimization mechanisms to provide efficient execution to
naively composed parallel programs. Some results have been included
in the standard library of Fortress.
Publications
Japanese publications are listed in Japanese Page
Refereed Papers
-
Kiminori Matsuzaki, Kento Emoto
Lessons from Implementing the BiCGStab Method with SkeTo Library
In Proceedings of the Fourth International Workshop on
High-level Parallel Programming and Applications (HLPP 2010), pp. 15-24, ACM, 2010.
-
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Kiminori Matsuzaki, Masato Takeichi
Generators-of-generators Library with Optimization Capabilities in Fortress
In Euro-Par 2010, Parallel Processing, Part II, pages 26 - 37, Lecture Notes in Computer Science 6272, Springer, 2010.
-
Kiminori Matsuzaki, Kento Emoto
Implementing fusion-equipped parallel skeletons by expression templates
In Post Proceedings of the 21st International Symposium on Implementation and Application of Functional Languages (IFL 2009), Lecture Notes in Computer Science, Vol. 6041, pp. 72--89, 2010.
-
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Domain-Specific Optimization Strategy for Skeleton Programs
In Proceedings of 13th International European Conference on Parallel and Distributed Computing (EuroPar 2007), Lecture Notes in Computer Science 4641, pp. 705-714, Springer, 2007.
-
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
A Compositional Framework for Developing Parallel Programs on Two Dimensional Arrays
International Journal of Parallel Programming (IJPP), Volume 35, Number 6, pp. 615-658, Springer, 2007.
-
Yasushi Hayashi, Dongxi Liu, Kento Emoto, Kazutaka Matsuda, Zhenjiang Hu, Masato Takeichi
A Web Service Architecture for Bidirectional XML Updating
Joint conference of the 9th Asia-Pacific Web Conference and the 8th International Conference on Web-Age Information Management (APWeb/WAIM 2007), pp. 721-732, Huangshan, China, June 16-18, 2007.
-
Kazuhiko Kakehi, Kiminori Matsuzaki, Kento Emoto
Efficient Parallel Tree Reductions on Distributed Memory Environments
In Fourth International Workshop on Practical Aspects of High-level Parallel Programming (PAPP 2007), part of The International Conference on Computational Science (ICCS 2007), pp. 601-608, Beijing, China, May 27-30, 2007.
-
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Surrounding Theorem: Developing Parallel Programs for Matrix-Convolutions
In 12th International Euro-Par Conference, Dresden, Germany, August/September 2006, Proceedings, pages 605 - 614, Lecture Notes in Computer Science 4128, 2006.
-
Kiminori Matsuzaki, Kento Emoto, Hideya Iwasaki, Zhenjiang Hu
A Library of Constructive Skeletons for Sequential Style of Parallel Programming
First International Conference on Scalable Information Systems (InfoScale 2006), Hong Kong, May 29 - June 1, 2006. Available from ACM Digital Library.
Presentations/Non-Refereed Papers/Technical Reports
-
Kento Emoto, Sebastian Fischer, Zhenjiang Hu
Generate, Test, and Aggregate---A Calculation-based Framework for Systematic Parallel Programming with MapReduce
Technical Report METR 2011-34, 28 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2011. Available from METR List 2011.
-
Yu Liu, Sebastian Fischer, Kento Emoto, Zhenjiang Hu
Implementing Generate-Test-and-Aggregate Algorithms on Hadoop
日本ソフトウェア科学会第28回大会論文集, 那覇, 2011年9月27日-29日.
-
Kento Emoto
An Algebraic Approach to Efficient Parallel Algorithms for Nested Reductions
第13回プログラミングおよびプログラミング言語ワークショップ (PPL 2011)(カテゴリ1), 札幌市, 2011年3月9日-11日.
-
Kento Emoto
Semirings for Free! ---An Algebraic Approach to Efficient Parallel Algorithms for Nested Reductions
Presentation at the fourth DIKU-IST Workshop, Jan 10-13, 2011.
-
Kento Emoto
An Algebraic Approach to Efficient Parallel Algorithms for Nested Reductions
Technical Report METR 2011-01, 31 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2011. Available from METR List 2011.
-
Kento Emoto
GoG Style Parallel Programming for Non-numeric Computation
2nd Parallelism-Oblivious Programming (POP) Workshop, Kochi, September 9-10, 2010.
-
Kento Emoto
Active Libraries for Parallel Programming in Fortress
4th International Workshop on Bidirectional Transformation in Architecture-Based Component Composition, Kanagawa, Japan, March 12-14, 2010.
-
Kiminori Matsuzaki, Kento Emoto
Implementing fusion-equipped parallel skeletons by expression templates
In Draft Proceedings of the 21st International Symposium on Implementation and Application of Functional Languages (IFL 2009), pp. 100-115, 2009.
-
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Kiminori Matsuzaki, Masato Takeichi
Generator-based GG Fortress Library --Collection of GGs and Theories--
Technical Report METR 2008-17, 19 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2008. Available from METR List 2008.
-
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Kiminori Matsuzaki, Masato Takeichi
Generator-based GG Fortress Library
Technical Report METR 2008-16, 19 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2008. Available from METR List 2008.
-
Kento Emoto
Domain-Specific Optimization Strategy for Skeleton Programs
Workshop on Parallelism Oblivious Programming, Tokyo, July 26-27, 2007.
-
Kento Emoto, Kiminori Matsuzaki, Zhenjiang Hu, Masato Takeichi
Domain-Specific Optimization for Skeleton Programs Involving Neighbor Elements
Technical Report METR 2007-05, 29 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2007. Available from METR List 2007.
-
Kazuhiko Kakehi, Kiminori Matsuzaki, Kento Emoto, Zhenjiang Hu
An Practicable Framework for Tree Reductions under Distributed Memory Environments
Technical Report METR 2006-64, 21 pages, Department of Mathematical Engineering and Information Physics, University of Tokyo, 2006. Available from METR List 2006.
-
Kazuhiko Kakehi, Kiminori Matsuzaki, Akimasa Morihata, Kento Emoto, Zhenjiang Hu
Parallel Dynamic Programming using Data-Parallel Skeletons
In Proceedings of the 22nd JSSST Conference, Sep, 2005.
-
Kento Emoto, Zhenjiang Hu, Kazuhiko Kakehi, Masato Takeichi
A Compositional Framework for Developing Parallel Programs on Two Dimensional Arrays
Technical Report METR2005-09, Department of Mathematical Informatics, University of Tokyo, 2005.
-
Zhenjiang Hu, Kento Emoto, Shin-Cheng Mu, Masato Takeichi
Bidirectionalizing Tree Transformations
Workshop on New Approaches to Software Construction (WNASC 2004), The University of Tokyo, Komaba, Tokyo, Japan, September 13-14, 2004. pp.3-22.
Thesis
-
Kento Emoto
Homomorphism-based Structured Parallel Programming
Graduate School of Information Science and Technology, University of Tokyo, 2009.
Curriculum Vitae
Other information about me can be found in CV
page.
© 2004-2011 Kento EMOTO<emoto_remove_@ipl.t.u-tokyo.ac.jp>. All rights reserved.