-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi Justin, On 12/11/15 09:22, Justin Chang wrote:
Hi Lawrence,
So I had a nice working code where it runs point-wise SNES in pyop2, and it ran decently fast. However, with the latest firedrake update, it forced me to make a few additional changes to the pyop2 kernel, namely adding PetcInitialize(....) and PetscFinalize(), and my code now runs really slow after I run it after several time steps on a Unit Interval of 100 elements.
So you shouldn't have to do this, something is definitely not right here .
Attached is the code as well as the supplemental 1D analytical expressions and pyop2 reactions kernel. Run the code as "python 1D_OS_analytical_ex1.py 100 0 0".
I tried this with firedrake commit 6134b86, PyOP2 commit 64db689 (i.e. current master for both). And didn't run into this problem. Could it be that the compiled code from before the update was explicitly linked (with a baked-in rpath) against a different petsc to the one you have now? To assuage my fears, can you run firedrake/scripts/firedrake-clean to clear out the compiled kernel cache? And then run again without calling PetscInitialize/Finalize inside your kernel. Cheers, Lawrence -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) iQEcBAEBAgAGBQJWRF3NAAoJECOc1kQ8PEYvOuoIAMSymNuMusrzJOmYAFTnK+gR EPpuBzj3tCt5QIBSwGFuKgW8+IuWTmT4kY8t0gBfAx6Diw8RrQ6WSot9nKB/xdI2 EUTz9RuoJQBWbzgmvP1mxvnDfT+oulzj5arNEeFdHfxDrtaoKgwWU8PrLznegEGY e7Z9MJNH3S+DaamYeOF/gXVbNilrCHaKiKaKVsIMc2HYitBdOIwaJliOBTkFGwKC dnqLn2YCsX8CpPu9939UwxcLnG9BPfyFuEguSodMXVjZKAxLQh6DgIZ25U9F4q80 etmLHaubbgVTZfahMHH/5UxdLYr+ILzXmzikzQzkP20rrvZHPdauYhz5F4pGp4M= =0WNr -----END PGP SIGNATURE-----