xgcm / aerobulk-python

A python wrapper for aerobulk (https://github.com/brodeau/aerobulk)
GNU General Public License v3.0
14 stars 4 forks source link

added threadsafe to skin and noskin signature files #34

Closed jbusecke closed 2 years ago

jbusecke commented 2 years ago

I added the threadsafeuser statement to both signature files. This blocks using the callback function, but since we did not have success with the error messages until now, I hope that this will improve the performance a bit as implied by @rabernat

jbusecke commented 2 years ago

I just tested this PR locally and got some really encouraging results:

This is a soft scaling experiment on my local machine: image Up to 4 threads the relative execution time remains very close to 1! Afterwards it increases almost linearly, which makes sense since my laptop has 4 cores (there are some low energy cores, but I am unsure if these are recruited for stuff like this).

jbusecke commented 2 years ago

Ill merge this now and release, so we can hopefully use this for tomorrows session.