← Back to team overview

dolfin team mailing list archive

Re: jit and ffc form modules

 

Anders Logg wrote:
On Fri, Mar 14, 2008 at 09:28:20AM +0100, Kristen Kaasbjerg wrote:
Hi folks,

can anyone tell how exactly the jit compiler checks if a given form has already been compiled ?

The compiler computes the signature (a unique string) for the given
form. (You can print this out if you want by editing jit.py.)

It then computes the md5 checksum of the signature and looks for a
directory with the name

  ~/.ffc/cache/form_<checksum>

If found, the compiler looks in that directory for a previously
compiled form and uses that.

The cache can be cleaned by running ffc-clean.

I'm am solving poissons equation in each iteration of another problem.
Despite the forms being the same, the forms are compiled over and over again in each iteration.

Do you have the latest version of everything? (FFC, DOLFIN, Instant)

Also, only the source term changes in each iteration, so optimally I would assemble/compile the bilinear form once and then only the linear form in each iteration. That, however, also compiles the linear form in every iteration.
Is it not possible to tell assemble/jit to use an already compiled form ?
I'm using the python interface and version 0.7.1.

I guess, you'll need to upgrade to 0.7.2. At least you need the latest
version of FFC.

so if I upgrade to 0.7.2, that will sort out the repeated compiles ?

Kristen


Follow ups

References