On Sat, 14 May 2011, SF Markus Elfring wrote:

> > Fine-grained parallelism is complicated,
> 
> I agree that it would need additional development efforts.
> 
> 
> > and just running Coccinelle separately on separate files already gives
> > a big performance improvement.
> 
> Are there any more developers or software testers who would like to improve
> the run time characteristics of your tools even further?
> 
> 
> > If someone wants to look into it, however, I would be willing to help with
> > the integration into the rest of the implementation.
> 
> Would you like to identify any processing tasks that are candidates for
> improved parallelisation?

I don't know.  The problem is that there are often dependencies between 
things.  For example, parsing is slow, so perhaps one could parallelize 
the parsing of header files.  But if the point of parsing the header file 
is to obtain typedef information, then perhaps parallisation is not 
possible.  On the other hand, if it is only to obtain type information, 
then the header files could be parsed in parallel, because the type 
checking is after the complete parsing.  If one knew in advance that only 
type information was needed, perhaps that would be an easy opportunity for 
parallelisation.

Each rule is evaluated with respect to each incoming environment of 
inherited metavariables.  These applications really are independent of 
each other and there can be many of them.  The problem is that the 
processing of a single rule might be very small, and thus not worth 
forking a process for.  But perhaps they could be grouped in some way.

Iteration could be done in parallel.  But there would need to be some 
coordination of the worklist that is accumulated, to avoid generating 
multiple copies of the same job.

If individual rules are completely independent, then their application 
could be parallelized, but probably this does not happen very often in a 
very useful way.

julia
_______________________________________________
Cocci mailing list
[email protected]
http://lists.diku.dk/mailman/listinfo/cocci
(Web access from inside DIKUs LAN only)

Reply via email to