Re: MPI programming in postgreSQL backend source code

From: Greg Smith <greg(at)2ndQuadrant(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: MPI programming in postgreSQL backend source code
Date: 2011-11-09 23:12:44
Message-ID: 4EBB08EC.9030302@2ndQuadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 11/09/2011 04:10 PM, Rudyar Cortés wrote:
> I'm a new programmer in postgreSQL source code..
> Is possible use MPI functions in postgreSQL source code?

To do this the proper way, you would need to modify the database's
"configure" step to:

-Check if the OpenMPI libraries are available and include the necessary
bits. For example, this is in one of the projects I work on:

#ifdef _OPENMP
extern int omp_get_num_threads();
#endif

Some form of that test and defining the functions available would be
needed for what you want.

-Link OpenMPI in. At the gcc level you'll need "-fopenmp" to start.

Then you could start using OpenMPI functions in database code. You
might hack the build steps to do this in a simpler way, too, rather than
fight with configure the proper way.

Since a lot of the MPI functions aim at specific types of thread use and
I/O, it would be a major effort to utilize the library for too many
things. The existing notion of how processes are created and managed is
scattered throughout the PostgreSQL code. And the I/O parts of the
database are buried through a few layers of indirection.

--
Greg Smith 2ndQuadrant US greg(at)2ndQuadrant(dot)com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.us

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2011-11-09 23:35:00 Re: pg_dump 9.1.1 hanging (collectSecLabels gets 0 labels)
Previous Message Simon Riggs 2011-11-09 23:10:52 Re: heap vacuum & cleanup locks