FIBER Project Home Page
Abstract of this project
FIBER project is a synthetical project for development of software with auto-tuning facilities (basic software and middle-software). To establish auto-tuning technologies, FIBER project contains the following working groups.
Working group of FIBER software architecture study
This working group is to study software architecture for generalized auto-tuning
facilities.
Working group of ABC-LIB development
This working group is to develop ABC-LIB, which is a numerical library
with auto-tuning facilities.
Working group of ABCLibScript development
This working group is to study specification and tools of ABCLibScript, which can support code development for auto-tuning facility by users.
Working group of optimizing MPI job tools development
This working group is to study job migration methods and its tools for
MPI job in Grid environments.
The first aim of FIBER project is focused on the adaptation to numerical
libraries. The goal of FIBER project, however, is not limited on numerical
libraries or numerical processing, since the concept of auto-tuning facility
is for general processes, and general parts of the target program. The
evaluation and discussion of this are future works.
The overview of FIBER Project
The FIBER project is to develop system software, which can automatically
transform from original source programs to dedicated-use programs maintaining
performance in the following machine environments (See Fig.1.)
Mobile and PDA environments
PC clusters environments
Super-computers environments
Grid environments
Middleware which has a facility maintaining its performance is called auto-tuning
middleware.
We support several pieces of midllware in many machine environments by
using the auto-tuning facilities of FIBER. The FIBER functions for "dedicated-usage"
are classified as follows:
M-FIBER (For Mobile and PDA environments)
P-FIBER (For PC clusters environments)
S-FIBER (For super-computers environments)
G-FIBER (For Grid environments)
We offer the dedicated functions for FIBER to archive high performance
in the several machine environments.
Figure 1 Overview of ABC-LIB Project
FIBER Project is focused on the several computer environments figured on
the overview of FIBER project in Figure 1.
The target processes are not limited in numerical processing.
What is auto-tuning facility?
The location of auto-tuning facility in software system layers is explained
in this section. Fig.2 shows that the auto-tuning facility is located between
library interface layer and basic software layers, such as communication
library. The auto-tuning facility, hence, can be regard as a middleware
in a sense.
Figure 2 Layer of auto-tuning facility
FIBER project is a project that develops the above middleware. The target processes in the middleware are not limited in numerical processing, but are focused on general processing.
FIBER Software Architecture
The FIBER software architecture, which is a new auto-tuning technology and it is developed by the FIBER project, is explained.
The FIBER software architecture has the following two kinds of functions
as its peculiarly feature.
(1) Code development support function;
(2) Parameter optimization function in three layers;
We do not explain the function of (1) in detail because it has many kinds
of functions. The summary of the function (1) is that the function supports
code development by users to offer a dedicated language facility. We will
explain the function of (2) as follows.
Figure 3 shows software components for FIBER.
Figure 3 Software components for FIBER
According to Fig.3, users define the parameters in their libraries, sub-programs,
or other parts of the program by using a dedicated language. The defined
parameters are sent to FIBER's Parameter Tuning Layer (PTL), and then,
they are optimized taking into account of the feature of machine environments
and problems.
In FIBER, there are three kinds of optimization layers -- installation Optimization Layer, Before Execution-invocation Optimization Layer, and Run-time Optimization Layer. For these three layers, there are two features of (1) different invocation
timing, and (2)limitation for parameter reference.
Figure 4 explains this features.
Figure 4 Process flow for FIBER
We already explained that the three optimization layers have deferent invocation
timing. The detailed order and timing is shown:
(1) Installation optimization layer : When the target library is installed.
(2) Before Execution-invocation optimization layer : After fixing special
parameters. (After fixing the parameters defined by users' knowledge.)
(3) Run-time optimization layer : when library runs.
There is a limitation for referring optimized parameters, which are stored in parameter information file:
High <- grobality for referring -> Low
Installation optimization layer > Before execution-invocation optimization layer > Run-time optimization layer
The reason of this is explained as (1)to obtain highly estimated parameters,
(2) to generalize auto-tuning facilities.
Finally, we will explain the deference between conventional library methods
and FIBER's method.
The comparison is figured in Fig. 5.
Figure 5 Comparison of conventional methods
Fig.5 shows that the methods of conventional libraries are categorizes as three methods. They are (a) Installation method, (b) Run-time Method, and (3)Installation and run-time method. From Fig.5, we can find that there is no method, except for FIBER method, to have three kinds of parameter optimization layers, and to refer optimized parameters from the higher layers in the three kinds of optimization layers.
Fig.5 also shows that many conventional methods are focused on the auto-tuning
facility for numerical libraries. The difference of the aim for FIBER project
is that FIBER project is focused on general processes (NOT limited in numerical
processing), and to establish the general purpose and usage auto-tuning
facilities.
By using the three kinds of optimization layers and parameter reference
system, FIBER can establish (1) generalization of auto-tuning process,
and (2) high accuracy parameter estimation. They are quite original concepts
and effects compared to the other auto-tuning methods.
Effort from FIBER Project
2 Patents submitted to Japan Patent Office, in January and March 2003.
Takahiro Katagiri, Kenji Kise, Hiroki Honda, and Toshitsugu Yuba, IS Technical
Reports, Graduate School of Information Systems, The University of Electro-Communications,
UEC-IS-2003-3、in 13 May 2003 : "FIBER: A Framework of Installation,
Before Execution-invocation, and Run-time Optimization Layers for Auto-tuning
Software" ( PS File , PDF File )
KATAGIRI Takahiro, KISE Kenji, HONDA Hiroki, and YUBA Toshitsugu, Springer LNCS
2858, pp.146--159, The Fifth International Symposium on High Performance
Computing (ISHPC-V), Tokyo Fashion Town Building, Tokyo International Trade Center (Odaiba,
Tokyo, JAPAN), October 20-22, 2003:"FIBER: A General Framework for Auto-Tuning Software"
Takahiro Katagiri, Kenji Kise, Hiroki Honda, Toshitsugu Yuba, UEC IS Technical
Reports, UEC-IS-2003-10 (17 November, 2003): "Effect of Auto-tuning
with User's Knowledge for Numerical Software" (PDF File)
Takahiro Katagiri, Kenji Kise, Hiroki Honda, Toshitsugu Yuba, Eleventh
SIAM Conference on Parallel Processing for Scientific Computing (PP04),Hyatt
at Fisherman's Wharf, San Francisco, CA, USA,Thursday, February 26, 2004,Organized
Session of "MS37 Portable Parallel Numerical Libraries for Various
Types of Architectures":"Towards Performance Portability
Framework for Numerical Libraries"
Takahiro Katagiri, Kenji Kise, Hiroki Honda, Toshitsugu Yuba, Eleventh
SIAM Conference on Parallel Processing for Scientific Computing (PP04),Hyatt
at Fisherman's Wharf, San Francisco, CA, USA,Thursday, February 26, 2004,Poster
Session: "FIBER: Generalized Framework for
Numerical Software"
Takahiro Katagiri, Kenji Kise, Hiroki Honda, and Toshitugu Yuba, Proceedings
of ACM Computing Frontiers (CF) 04, pp.--, Island of Ischia, Italy, 14--16
April 2004 :"Effect of Auto-tuning with User's Knowledge for Numerical
Software" (accepted)
[Last updated ]
23 April 2003 : Home Page Opened
30 March 2004 : Updated