Hi Brian,

Thanks for your answer. I can rule out most of the possibilities, but it's
good to know the GSL behaves under OpenMP. Maybe my code is not cooperating
somehow, so I'll try a simpler case and see what happens.

Thanks again,
Pedro


On Thu, Oct 6, 2011 at 9:46 AM, Brian Hawkins <hawkins.br...@gmail.com>wrote:

> Hi Pedro,
>
> In my experience the design of GSL is very amenable to parallelism, and I
> would be quite surprised if it was causing problems.
>
> However, it's pretty common to scale up a program to n threads and get less
> than a factor of n speed up.  It depends a lot on what the code is doing
> and
> what kind of hardware you've got.  There are also some issues related to
> OpenMP threading itself.  A quick guess is that maybe some of your
> equations
> solve much faster than others, so you might want to add "schedule(dynamic)"
> to the pragma before your loop.
>
> Regards,
> Brian
>
> On Thu, Oct 6, 2011 at 9:00 AM, <help-gsl-requ...@gnu.org> wrote:
> >
> > Date: Wed, 5 Oct 2011 18:20:38 -0700
> > From: Pedro Gardete <pedromgard...@gmail.com>
> >
> > Hi,
> >
> > I need to go through many systems of equations, which I'm using
> > the gsl_multiroot_fsolver_hybrid method to solve for. The systems solve
> > fine, but when I put them inside an OpenMP loop (each thread solves one
> > system at a time and stores the result) the performance invariably comes
> > down for each thread as I add more. Should this be expected given that
> the
> > threads are independent (ie, don't wait for each other)?
> >
> > Thanks,
> > Pedro
> >
> _______________________________________________
> Help-gsl mailing list
> Help-gsl@gnu.org
> https://lists.gnu.org/mailman/listinfo/help-gsl
>
_______________________________________________
Help-gsl mailing list
Help-gsl@gnu.org
https://lists.gnu.org/mailman/listinfo/help-gsl

Reply via email to