Utilité des CPU multi-core

Lists: pgsql-fr-generale
From: alain vanranst <alainvanranst(at)gmail(dot)com>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Utilité des CPU multi-core
Date: 2010-01-21 07:50:51
Message-ID: d6bae7a91001202350q2f1f8576r86b0601214b53099@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

Bonjour,
j'ai un programme externe à pg qui insert des data dans un tres grand nombre
de tables.
Chaque INSERT déclenche un trigger qui effectue des stats sur les data
insérées.
J'aimerais comprendre si chacun de ces triggers utilise un thread different,
et, par là, si augmenter le nombre de core de mon server va ameliorer
significativement ses performances.
Merci d'éclairer ma lanterne :-)


From: François Figarola <francois(dot)figarola(at)i-consult(dot)fr>
To: alain vanranst <alainvanranst(at)gmail(dot)com>
Cc: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: Utilité des CPU multi-core
Date: 2010-01-21 16:35:41
Message-ID: 4B58825D.7090609@i-consult.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

alain vanranst a écrit :
> Bonjour,
> j'ai un programme externe à pg qui insert des data dans un tres grand
> nombre de tables.
> Chaque INSERT déclenche un trigger qui effectue des stats sur les data
> insérées.
> J'aimerais comprendre si chacun de ces triggers utilise un thread
> different, et, par là, si augmenter le nombre de core de mon server va
> ameliorer significativement ses performances.
> Merci d'éclairer ma lanterne :-)
>
Bonjour,

Pour autant que je sache, PostgreSQL n'est pas multi-thread mais
lance un nouveau processus en réponse à chaque connexion entrante.

Si cet état de fait n'a pas évolué (mais, si la liste me contredit, je n'en
serai absolument pas peiné !!!), les INSERT et les déclencheurs
associés sont traités, côté serveur, par le même processus (mono-thread),
et ajouter des cores ne changera rien.

Par contre, sur une machine multi-core, augmenter le nombre de clients
(connexions) chargés d'insérer les données (donc paralléliser les
fournisseurs données, si c'est toutefois possible) pourrait alors améliorer
les performances, dans la limite des capacités d'E/S disques.

PostgreSQL-ment.

--
François Figarola
-- développeur --
=================
INTERNET CONSULT
Mas Guerido
6 rue Aristide Bergès
66330 CABESTANY

Tel 04.68.66.09.29
fax 04.68.66.99.50
* francois(dot)figarola(at)i-consult(dot)fr


From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: François Figarola <francois(dot)figarola(at)i-consult(dot)fr>
Cc: alain vanranst <alainvanranst(at)gmail(dot)com>, pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: Utilité des CPU multi-core
Date: 2010-01-21 18:59:57
Message-ID: 4B58A42D.4090206@lelarge.info
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-fr-generale

Le 21/01/2010 17:35, François Figarola a écrit :
> alain vanranst a écrit :
>> Bonjour,
>> j'ai un programme externe à pg qui insert des data dans un tres grand
>> nombre de tables.
>> Chaque INSERT déclenche un trigger qui effectue des stats sur les data
>> insérées.
>> J'aimerais comprendre si chacun de ces triggers utilise un thread
>> different, et, par là, si augmenter le nombre de core de mon server va
>> ameliorer significativement ses performances.
>> Merci d'éclairer ma lanterne :-)
>>
> Bonjour,
>
> Pour autant que je sache, PostgreSQL n'est pas multi-thread mais
> lance un nouveau processus en réponse à chaque connexion entrante.
>

Exact.

> Si cet état de fait n'a pas évolué (mais, si la liste me contredit, je n'en
> serai absolument pas peiné !!!), les INSERT et les déclencheurs
> associés sont traités, côté serveur, par le même processus (mono-thread),
> et ajouter des cores ne changera rien.
>

Exact.

> Par contre, sur une machine multi-core, augmenter le nombre de clients
> (connexions) chargés d'insérer les données (donc paralléliser les
> fournisseurs données, si c'est toutefois possible) pourrait alors améliorer
> les performances, dans la limite des capacités d'E/S disques.
>

Tout aussi exact :)

--
Guillaume.
http://www.postgresqlfr.org
http://dalibo.com