source: anr/task-hpc.tex @ 300

Last change on this file since 300 was 300, checked in by coach, 14 years ago

1) Ajout des parters entre () pour les sous taches.
2) Ajout des liens sur les livrables dans les taches.
3) Sorties d'un point csv
4) Regrouppement des livrables evaluation
5) Ajout du D840
6) MAJ des effort de l'UPMC

  • Property svn:eol-style set to native
  • Property svn:keywords set to Revision HeadURL Id Date
File size: 5.0 KB
Line 
1% vim:set spell:
2% vim:spell spelllang=en:
3
4\begin{taskinfo}
5\let\BULL\leader
6\let\UPMC\enable
7\let\TIMA\enable
8\let\THALES\enable
9\let\XILINX\enable
10\end{taskinfo}
11%
12\begin{objectif}
13This task deals with the COACH HPC feature that consists in accelerating an existing
14application running on a PC by migrating critical parts into a SoC implemented on an
15FPGA plugged to the PC PCI/X bus (figures~\ref{coach-flow} and \ref{archi-hpc}).
16It consists in:
17\begin{itemize}
18\item Specifying and implementing the communication schemes between the software
19  part running on the PC and the FPGA-SoC.
20\item Providing a performance analysis tool helping user in the HPC partitioning
21  (figure~\ref{archi-hpc}).
22\item Providing support for configuration of the FPGA in order to set up the HPC environment.
23\end{itemize}
24The low level hardware transmission support will be the PCI/X bus which allows high bit-rate
25transfers. The reasons of this choice are that both \altera and \xilinx provide PCI/X IP for
26their FPGA and that GPU HPC softwares use also it.
27%This will allow us at least to be inspired by GPU communication schemes and may be to reuse
28%parts of the GPU softwares.
29\end{objectif}
30%
31\begin{workpackage}
32  \subtask{Implementation of API between PC and FPGA-SoC}
33    \begin{livrable}
34      \itemL{0}{6}{d}{\Sbull}{HPC communication API}{3:0:0}
35        \OtherPartner{0}{6}{\Supmc}{.5:0:0}
36        \OtherPartner{0}{6}{\Stima}{.5:0:0}
37        \setMacroInAuxFile{hpcCommApi}
38        Specification of the API.
39      \itemL{6}{12}{x}{\Supmc}{HPC partitioning helper}{1:0:0}
40        \setMacroInAuxFile{hpcCommHelper}
41        A library implementing the communication API defined in the {\hpcCommApi} deliverable.
42        This library is dedicated to help the end-user to partition an application for HPC.
43      \itemL{12}{21}{x}{\Supmc}{HPC API for Linux PC}{0:2:0}
44        \setMacroInAuxFile{hpcCommLinux}
45        The PC part of the HPC communication API that communicates with the FPGA-SOC, a
46        library and a LINUX module.
47      \itemL{21}{24}{x}{\Stima}{HPC API for DNA OS}{0:3:0}
48        \setMacroInAuxFile{hpcDnaDriver}
49        The FPGA-SoC part of the communication API (DNA driver).
50    \end{livrable}
51%
52\subtask{SystemC model of the PCI/X}
53    This \ST deals with the implementation of SystemC modules
54    required by the neutral architectural template for using the PCI/X IP of \altera and \xilinx.
55    \begin{livrable}
56    \itemL{12}{24}{h}{\Supmc}{PCI/X traffic generator}{0:1:0}
57        The SystemC description of a component that generates PCI/X traffic. It is
58        required to prototype FPGA-SoC dedicated to HPC.
59    \end{livrable}
60%
61\subtask{HPC environment set up}
62% It also includes appropriate SoC-FPGA OS drivers and a modification of the profiling library.
63     \begin{livrable}
64     \itemL{18}{36}{x}{\Stima}{Support for HPC environment set up}{0:4:4}
65      Modification of the CSG software to set-up the HPC environment.
66      The objective is to run easily HPC application and the main features are:
67      automatic calibration of coprocessors (\freqCalibrationVhdl), automatic download of
68      SoC on FPGA (bitstream and application loader), starting the PC and FPGA
69      part of the HPC application.
70     \end{livrable}
71%     \itemL{18}{36}{x}{\Stima}{CSG module for \ganttlf dynamic reconfiguration}{0:4:12}
72%       This livrable is a CSG module allowing to partition the task graph along
73%       the dynamic partial reconfiguration regions. The resulting task-region assignement
74%       is directly used for generation of bitstreams. The module also produces reconfiguration
75%       management software to be run on the SoC-FPGA.
76%     \itemL{18}{30}{x}{\Stima}{Dynamic reconfiguration \ganttlf for DNA drivers}{0:3:3}
77%         \setMacroInAuxFile{hpcDynconfDriver}
78%       The drivers required by the DNA OS in order to manage dynamic partial
79%         reconfiguration inside the SoC-FPGA.
80%     \itemL{30}{36}{x}{\Supmc}{Dynamic reconfiguration \ganttlf for  MUTEKH drivers}{0:0:1}
81%         Port of the {\hpcDynconfDriver} drivers on the MUTEKH OS.
82%     \itemL{24}{36}{x}{\Stima}{Profiler for \ganttlf dynamic reconfiguration}{0:0:6}
83%         Extension of the HPC partionning helper in order to integrate dynamic partial
84%         reconfiguration dedicated features (reconfiguration time of regions, variable
85%         number of coprocessors).
86%     \itemL{24}{36}{d}{\Sxilinx}{Optimisation for \xilinx \ganttlf dynamic reconfiguration}{0:0:2}
87%         \xilinx will work with \tima in order to better take into account during
88%         partitioning decisions specific constraints due to partial reconfiguration process.
89%         The deliverable is a document describing the \xilinx specific constraints.
90%     \end{livrable}
91% %\item This \ST is the delivery of 2 PCI/X \mustbecompleted{FIXME: Stratix4} FPGA board
92% %   with its PCI/X IP. These boards are dedicated to the COACH HPC development.
93% %   They are based on \mustbecompleted{FIXME:stratix4} FPGA device of 400,000 LUT.
94% %   \begin{livrable}
95% %   \itemL{0}{6}{m}{\Saltera}{HPC development boards}{0:0:0} Two PCI/X FPGA boards.
96\end{workpackage}
Note: See TracBrowser for help on using the repository browser.