The ADFG tool (Affine Data-Flow Graphs), initialy developped by Adnan Bouakaz in the ESPRESSO project-team, provides a development environment as Eclipse plugins for designing, analyzing ultimately cyclo-static dataflow graphs [RTNS’17, SISP’14, SCOPES’13, LCTES’13, ACSD’12]. ADFG supports both the quasi-static scheduling of programs threads expressed with such graphs, or fixed-priority scheduling.
The major drawback of using static schedules to execute dataflow applications is their inflexibility and difficult maintainability. ADFG presents an approach to generate fixed-priority scheduling from a dataflow specification. Precedence dependencies between actors in the dataflow graphs can be abstracted, as well as the task periods by the mean of affine relations.
This abstraction allows us to solve the problem efficiently and possibly under holistic objectives, such as the maximization of the application throughput, or the minimization of the sum of all buffer sizes [ICESS’19]. Given one of the two aforementioned objectives, we compute the task priorities, the mapping, the number of delays in the buffers, and the buffer sizes. Synthesis results are verified and evaluated by the means of scheduling simulation and real-time implementation.
Eclipse project POP
Project-team TEA distributes and maintains an open-source, Eclipse-based, synchronous modeling environment: the Eclipse project POP (Polychrony on Polarsys) of the Polarsys Industry Working Group. POP comprises the Polychrony toolset, the synchronous language Signal and the Eclipse environment SME. It was designed at IRISA as a technology demonstrator by the ESPRESSO project-team (2000-2013) and for its academic or industrial partners. It is distributed and maintained by INRIA. Prior to project ESPRESSO, the Signal environment was developed by the EPATR project-team and commercialized by the company TNI, as Syldex and RT-Builer.