[petsc-users] Performance of Conda Binary vs Self Compiled Version

David Andrs andrsd at gmail.com
Sat Oct 21 07:36:06 CDT 2023


Hi Jorge.

On Oct 19, 2023, at 18:35, Jorge Nin <jorgenin at mit.edu> wrote:
> 
> Hi Mathew,
> 
> Thanks for the response. It actually seems like the matrix is very sparse (0.99% sparsity from what I’m measuring). It’s an FEA solver so it would make sense.
> My current guess is the optimization flags are making a large difference for the M1 Mac, but I am also surprised it makes such a huge difference.
> 
> It’s why I was asking if there was a resource or another to use my own version of PETSc with Conda.

If you are using PETSc from conda-forge, then you can go look at https://github.com/conda-forge/petsc-feedstock repo. That is where the conda recipe (i.e. the description of how to build the conda package) is located. Under the `recipe` directory, you will see `build.sh` script which has the configure line, etc. included. You can adapt the recipe to your needs and then deploy your own version to your own conda channel (it would be hosted on anaconda.org <http://anaconda.org/> - you will need an account there). The whole process is quite complex and beyond the scope of this email. conda has a lot of documentation for this, though. This could be a good starting point in case you want to dive into this: https://docs.conda.io/projects/conda-build/en/stable/concepts/recipe.html

--
David

> 
> I believe a 2-3 x speed up is worth the hassle. 
> 
> 
> Best,
> Jorge
> 
> 
> 
>> On Oct 19, 2023, at 4:00 PM, Matthew Knepley <knepley at gmail.com> wrote:
>> 
>> On Thu, Oct 19, 2023 at 3:54 PM Jorge Nin <jorgenin at mit.edu <mailto:jorgenin at mit.edu>> wrote:
>>> Hi,
>>> I was playing around with a self compiled version and, and a the Conda binary of Petsc on the same problem, on my M1 Mac.
>>> Interestingly I found that the Conda binary solves the problem 2-3 times slower vs the self compiled version. (For context I’m using the petsc4py python interface) 
>>> 
>>> I’ve attached two log views to show the comparison.
>>> 
>>> I was mostly curious about the possible cause for this.
>> 
>> All the time is in the LU numeric factorization. I don't know if your matrix is sparse or dense. I am guessing it is dense and different LAPACK implementations are linked. If it is sparse, then the compiler options are different between builds, but I would be surprised if it made this much difference.
>> 
>>   Thanks,
>> 
>>      Matt
>>  
>>>  I was also curious how I could use my own compiled version of PETSc in my Conda install? 
>>> 
>>> 
>>> Best,
>>> Jorge
>>> 
>> 
>> 
>> --
>> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
>> -- Norbert Wiener
>> 
>> https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20231021/e197b63c/attachment-0001.html>


More information about the petsc-users mailing list