Direction des Relations Européennes et Internationales (DREI)

Programme INRIA "Equipes Associées"

I. DEFINITION

EQUIPE ASSOCIEE

MODSIM (MODular SIMulation)
sélectionnée en
sélectionnée en
sélectionnée en
soumise en
2005

Projet INRIA : ALCHEMY Organisme étranger partenaire : Liberty Group, Computer Science Department, Princeton University
Unité de recherche INRIA : Futurs
Thème INRIA : Systèmes communicants
Pays : Etats-Unis
 
 
Coordinateur français
Coordinateur étranger
Nom, prénom Temam, Olivier August, David
Grade/statut Directeur de Recherche Assistant Professor
Organisme d'appartenance
INRIA Futurs Computer Science Department, Princeton University
Adresse postale Parc Club Orsay Université
ZAC des vignes
4, rue Jacques Monod - Bât G
91893 Orsay Cedex
France
Computer Science Building, Room 209
35 Olden Street
Princeton University
Princeton NJ, 08544
Etats-Unis
URL Alchemy group http://www.cs.princeton.edu/~august
Téléphone +33 1 72 92 59 52 +1 609 258 20 85
Télécopie +33 1 60 19 66 08 +1 609 258 17 71
Courriel olivier.temam@inria.fr august@cs.princeton.edu

Proposal Summary

Keywords :
Processor architecture simulation, micro-architecture, modular simulation, software simulator

Collaboration Summary : Processor architecture simulation is the key, if not the exclusive, method used by micro-architecture researchers for evaluating the performance and usefulness of new architecture ideas. Micro-Architecture simulation often consists of writing very large software programs describing the detailed behavior of processors, i.e., what is happening in the processor at every clock cycle, the architecture performance being often measured in numbers of cycles. While these simulators are not as detailed as circuit-level models, the software complexity is very much tied to the architecture complexity itself, and with high-performance processors quickly evolving from a few million transistors in the 1990s to a billion transistors or more in 2005, simulators are becoming excessively complex pieces of software, which are very time-consuming to develop and modify.

Consequently, a single research group can no longer afford to develop a whole new processor simulator as part of its normal research activities, i.e., to evaluate a few architecture ideas. As a result, most researchers rely on available models, and especially SimpleScalar, developed at University of Wisconsin in 1997, and the most heavily used by far (in 50% to 70% of the articles in top architecture conferences). Now, SimpleScalar and most other simulators have a serious drawback: they are monolithic, i.e., they are built as a single piece of software describing a full processor architecture; but a processor architecture is typically composed of several tens of components (cache, scheduler, branch predictions...), which have evolved differently over the years, and more importantly, researchers are usually specialized in just one or a few of these components. And because simulators such as SimpleScalar do not reflect the modularity of processor architectures, it can be exceedingly difficult to update one or a few architecture components, or to extract a component proposed and implemented by a researcher in order to compare it with other similar components.

This situation has severe consequences on micro-architecture research: (1) researchers develop their ideas on outdated architecture models because they lack alternatives, (2) simulator development time is quickly increasing and researchers have no simple means for reusing and exploiting the development effort of other researchers, (3) researchers have no reasonably rigorous way to compare their performance results, and consequently, these results are often unverifiable and unreliable, (4) the discrepancy between the software structure and the processor structure is a source of inaccuracy sometimes leading researchers to propose unrealistic architectures, (5) and as result, it hinders the take-up of architecture ideas from academia by industry.

In the past few years, the Liberty group at Princeton and the INRIA Alchemy group have both been working on an alternative approach to processor simulation called modular simulation (respectively the Liberty project and the MicroLib project), the basic principle being to reflect the processor structure in the software structure, alleviating many of the above mentioned issues. Both groups share the goal of changing the methodology in processor architecture research by encouraging architecture researchers to use modular simulation environments, and by setting up a central repository where researchers could easily exchange, reuse and compare architecture ideas through simulator components.

The rationale behind this partnership proposal is to collaborate rather than compete in this task, and to propose a common modular simulation approach, thereby increasing the rate at which the community will adopt a modular methodology. Recent successes registered by both groups suggests this goal, while ambitious, may not be unrealistic. The Liberty group is the leading group in modular simulation in the US, and the INRIA Alchemy group is similarly trying to promote this approach in Europe, especially as part of the HiPEAC Network of Excellence; thus, this partnership is a way to set up a first bridge between Europe and the US on this topic, ultimately creating a universal standard.

 

Presentation of the Partnership

1. Presentation of the foreign coordinator

Prof. David August (PDF CV) is an Assistant Professor in the Department of Computer Science at Princeton University. His research interests lie in computer architecture and back-end compilation. At Princeton, he directs the Liberty Group. The Liberty group is currently developing open-source tools necessary to perform rigorous, systematic processor design-space exploration. Liberty research has been sponsored in part by Intel, IBM, Infineon, The Gigascale Silicon Research Center, an NSF NGS, an NSF ITR, and an NSF CAREER Award. David's work has been recognized by an NSF CAREER Award, an Emerson Electric Company - E. Lawrence Keyes '51 Award, and two best paper awards. In 2001, he was invited by University of Virginia to participate to the Top Gun Lecture Series recognizing "faculty on a trajectory to be research leaders of the coming decades". And in 2005, he will be the General Chair of the next International Symposium on Code Generation and Optimization (CGO). David received the B.S. (Summa Cum Laude) in Electrical Engineering from Rensselaer Polytechnic Institute in 1993, and the M.S. and Ph.D. degrees in Electrical and Computer Engineering from the University of Illinois at Urbana-Champaign in 1995 and 2000, respectively (University of Illinois is regularly ranked as one of the top Electrical and Computer Engineering schools in the US). At Illinois, as a member of the IMPACT research compiler group, he developed a complete framework for aggressive predicate analysis and optimization currently available as part of the OpenIMPACT toolset.

The Liberty Research Group has been, along with the INRIA Alchemy group, a recognized developer, proponent, and leader of the modular and structural simulation movement. In 2002, the Liberty Group published a paper making the case for modular and structural simulation at the top conference MICRO. This early paper demonstrated that the current monolithic simulator practice is both costly and error prone. It also demonstrated that modular simulation could provide an attractive solution. For their work, the authors won a best student paper award at this top-tier computer architecture conference.

Since that time, the Liberty Research Group has developed prototype tools to demonstrate the reality of modular simulation. They released the Liberty Simulation Environment (LSE) version 1.0 to the community to facilitate early modular and structural simulation work (over 800 downloads). Tutorials at two top-tier computer architecture conferences (ASPLOS and MICRO) have been given to potential users. Other publications relating to the language of LSE and its optimizing simulator-building compiler have also been published in respected conferences (PLDI-2004, CODES+ISSS-2004, DAC-2003).

Using LSE, the Liberty Research group and others have demonstrated the effectiveness of structural simulation in a variety of computer architecture research work. Using structural modeling methods, one student was able to create a validated Itanium 2 model accurate to within 3% in only 11 weeks. This compares favorably to the person-years it generally takes to get to within 10-20% error. In a testament to the reuse and ease of modification of structural models, this validated model was used to create a multiprocessor model in only 16 days. This multiprocessor model incorporated a new interconnection mechanism presented by the Liberty group at PACT in Antibes Juan-les-Pins this past October. The validated Itanium 2 model has also been used to study fault tolerant design techniques and server workloads in heterogeneous multiprocessor systems. Other models developed include a PowerPC model, an extremely accurate validated multi-code network interface controller model (The SPINACH project led by Prof. Vijay Pai at Purdue University), and a grid processor model with an accurate power model (The ORION project led by Prof. Li-Shiuan Peh at Princeton University).

While the successes of LSE are many, this early work and experience raised more research questions and revealed inefficiencies that we hope to address in this joint collaboration.

2. History of the collaboration

3. Impact :

First, it must be noted that a characteristic of this collaboration is that its scientific goal is fairly clear, and that it may have a significant scientific impact on our research domain as explained above, as well as on the take-up of ideas from academia by industry; both the timing and the synergies are right. So this proposal should not only be evaluated based on the usual criteria of the benefits for a collaboration among two institutions (INRIA & Princeton), but also based on its scientific impact and timeliness, as explained above.

4. Miscellaneous :


II. BILAN 2005

Eventuelles remarques et/ou changements survenus (indiquez ici, le cas échéant, les éléments des années antérieures qui vous semblent importants ):


 

Bilan synthétique des 3 dernières années
(uniquement pour les équipes en fin de 3e année - environ 1 page)

 

Rapport scientifique pour l'année 2005

Description de l'activité scientifique de l'équipe associée et des résultats obtenus : publications, communications, organisation de colloques, formation, soutenance de thèse, valorisation économique, sociale, industrielle, dépôt de brevets ... (1 à 2 pages)

For the past year, we had an active collaboration on setting up a joint modular simulation platform, and we now have a first prototype implementation of this platform. Below, we provide a brief history of our interactions and the main outcomes.

In the first months, we had frequent remote or physical meetings between the two groups to analyze the differences between the two platforms, the Liberty platform at Princeton and the MicroLib platform at INRIA. In summary, the goal of the Liberty platform is to build the best possible platform assuming researchers have accepted to switch to structural simulation, while the goal of the MicroLib platform is to entice researchers to adopt structural simulation by providing them with a smooth transition.

We envisioned several convergence paths, such as porting some Liberty features to the SystemC environment or adding features to one platform and the other. In the end, we realized these convergence paths met a lot of resistance in each group because they meant giving up on one of the platforms. In a more fundamental way, we realized that, since most research groups (and even more so, companies), already have a simulation solution of their own, they would all show the same resistance when given the ability to move to a new simulation platform, whatever its assets. So, even though the two groups were in agreement on the technical foundations of simulation, we realized we were facing a non-technical issue that may jeopardize the whole initiative. This observation actually prompted us to steer research in a new direction: to build a structural but also interoperable platform. A platform that would be designed from the ground up to easily interact with existing platforms and simulators. From that point on, we made significant research progress.

During a visit in March, we developed a first proof of concept of this platform, and presented it to the steering group of the HiPEAC simulation platform (see project description above for the relationship with the HiPEAC network). The steering group endorsed this platform, and we later presented it to the whole network (about 60 researchers were present). We were also invited to present our work as part of a course on simulation during the HiPEAC summer school.

In July, we completed the development of a first prototype of this platform, then named Fraternité, during another visit. This platform retains the control abstractions common to both Liberty and MicroLib. In addition, it provides a wrapper system with every module (called the LSS layer), which enables to translate communication syntax and models of computation so as to implement interoperability. It also provides the ability to insert capabalities hooks in any module, so as to take advantage of any third-party tool, such as power consumption analysis, graphical user interface, statistical simulation or sampling, etc.

We were invited to present this new platform to the HiPEAC summer school at the end of July (the summer school gathered 180+ faculties and PhDs from 20 different countries; 50+ of whom attended our course). In August, the HiPEAC network decided to contribute to our effort by dedicating their platform engineer part-time to the development of Fraternité. At the same time, David August has been settting up an American consortium to mirror the European consortium on the platform and help further disseminate it. So, besides their technical leadership on the platform, Princeton and INRIA are now starting to act as a bridge between the American and European communities. We are also in the process of setting up a joint web site on this new platform (http://www.unisim.org; currently under construction).

The table below corresponds to all expenses until July 2005 included. More visits are planned before the end of the year.

 

Rapport financier 2005

1. Dépenses EA (effectuées sur les crédits de l'équipe associée)
 
Budget EA alloué
Montant dépensé
Accueil    16592.17
Missions    1295.53
Total
(a)20 000
(b)17887.70
Taux d'utilisation des crédits EA alloués (b/a %)
 

 

2. Dépenses externes (soutenues par des financements hors EA)
 
Budget alloué
Montant dépensé
Nom de l'organisme 1 (*):
Accueil    
Missions    
Total
 
 
Nom de l'organisme 2 (*) :
Accueil    
Missions    
Total
   

Total des financements externes

alloués : (c)

dépensés :

(*) Ajouter ou supprimer des lignes au tableau ci-dessus de façon à faire figurer tous les organismes ayant contribué au financement de l'équipe associée

Total des financements EA et externes

alloués : (d)

dépensés :


Taux de co-financement (c /d %)



Bilan des échanges effectués en 2005


1. Seniors


Nom
statut (1)
provenance
destination
objet (2)
durée (en semaines)
Coût (EA)
Coût (externe)
August  Professeur  New-York  Orsay Visite  1  2290.56  
August  Professeur  New-York  Orsay+Rome  Visite+école d'été  3 4504.40   
               
               
               
               
               
               

Total des durées en semaines
4
(1) DR / CR / professeur
(2) colloque, thèse, stage, visite....


2. Juniors


Nom
statut (1)
provenance
destination
objet (2)
durée (en mois)
Coût (EA)
Coût (externe)
 Chang Doctorant  Princeton Orsay Visite 0.3 1976.09  
 Vachharajani Doctorant Princeton Orsay+Rome Visite+école d'été 0.6 3883.58  
 Chang  Doctorant  Princeton Orsay+Rome Visite+école d'été  0.6  3827.94  
 Gracia-Perez Doctorant Orsay  Madison  Conférence  0.25  1295.53   
               
               

Total des durées en mois
 1.75
(1) post-doc / doctorant / stagiaire
(2) colloque, thèse, stage, visite....

 



III. PREVISIONS 2006

Programme de travail

Description scientifique de ce programme de travail (
détaillé pour l'année 2006 et en grandes lignes pour le plus long terme)

The three major objectives for this year are (1) to consolidate the platform prototype we built, (2) to disseminate it through the web site, a series of tutorials, and collaborations with other groups, (3) to engage into further research activities based on this platform.

For the platform prototype, besides typical development issues, we have to build up the associated library so as to offer an attractive environment for prospective users. That involves converting all the Liberty and MicroLib modules and full processor models into the Fraternité platform. We are also developing from scratch a new processor model so as to exercise the approach. We also believe it is necessary to work on the ease of implementation of module communications, which is complicated by the control abstraction compared to a standard simulator.

All these developments, together with tutorials, will be disseminated through the web site. We also plan a collaboration with a research group at UPC (Barcelona, Spain) on integrating their simulator by exploiting the interoperability properties of the platform, as well as on designing a new simulator based on Fraternité. Also, because CMP architectures are about to become so widespread, we will be proposing a set of CMP platforms on the Fraternité site, including a generic method for building CMPs (A Polytechnique student who did an internship on this topic in the spring has recently received a "grand prix d'option" award for his work).

Based on this platform, we are contemplating a number of research actions. First, we intend to demonstrate the usefulness of structural simulation for design-space exploration. For that purpose, we will be investigating an architecture browser, which will automatically scan the library and build architectures, evaluate them on a set of benchmarks, and maintain an up-to-date ranking of the best architectures. Whenever a researcher will upload a module, it will be automatically evaluated and compared against previous proposals.

Second, we intend to focus on the potential weaknesses of the structural simulation approach, especially simulation speed. We will be exploring simultaneously two possible solutions: parallelizing simulators and simulation sampling.

The simulation speed effort will most likely last beyond 2006. Similarly, building up the library will be a constant and incremental effort that will last way beyond 2006. In the future, we also plan to focus on standardizing emulators (functional simulators) which are used either as a mechanism to feed cycle-level simulators with instructions, or as a way to quickly evaluate a given architecture. We will also investigate the extension of the current processor simulators to full system simulators.

 

Budget prévisionnel 2006

1. Co-financement

- Cette coopération bénéficie-t-elle déjà d'un soutien financier de la part de l'INRIA, de l'organisme étranger partenaire ou d'un organisme tiers (projet européen, NSF, ...) ?
- Dans le cas où votre proposition serait retenue, vous parait-il probable d'obtenir de l'organisme étranger partenaire un soutien financier symétrique ?

PREVISIONAL ESTIMATE OF CO-FUNDING
Institution
Funding
In 2006, Princeton University 20% of total budget (4000 Euros)
In 2007, Princeton University Princeton University will pay for David August's sabbatical at INRIA, as well as for the visits of his PhDs to INRIA

2. Echanges

Description des échanges prévus dans les deux sens : accueil de chercheurs de votre partenaire et missions INRIA vers votre partenaire.
Motivez l'utilité et l'intérêt spécifique des échanges et la complémentarité des équipes.
Précisez s'il s'agit de chercheurs confirmés ou de juniors (stagiaires, doctorants, post-doctorants). Spécifiez si ces échanges ont lieu dans le cadre d'un travail scientifique, d'organisation d'événements conjoints, de séminaires, tutoriels ou écoles, de formation par la recherche : indiquez les étudiants impliqués dans la collaboration, donnez une estimation de leur nombre de chaque côté et précisez si des thèses -éventuellement en co-tutelle- sont prévues (pour chaque échange, précisez la durée et le calendrier prévisionnel).

ESTIMATE OF EXPENSES
Amount
 
Number
To INRIA
From INRIA
Total (in Euros)
Faculty 2 2x7-day 2x7-day 6400
Postdoc
1 1x7-day 1600
PhDs 3 1x7-day + 2x14-day 2x14-day 11600

Interns

       
Other (specify) :
       
Total
6 49 49 19600
   
Co-Funding Total
4000
   
Requested "Équipe Associée" Funding
15600

Remarques ou observations :

 

 

 

© INRIA - mise à jour le 28/07/2005