Ouverture d'une section "Ressources et cours sur la programmation parallle " sur le forum Programmation parallle

Ouverture d'une section "Ressources et cours sur la programmation parallle " sur le forum Programmation parallle

Bonjour tous,je cre ce topic pour vous prvenir de la mise en place d'un forum o le but est de partager ses ressources sur la programmation parallle avec la commuanut.Voir le topic sur les cours de programmation parallle, et n'hsitez pas partager . N'oubliez pas que les soumissions sur les forums, les posts, les rponses.. sont gratifies de point supplmentaires pour le concours :) .Cordialement,Anthony, Intel Software Network.

7 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.

Bonjour,

Combien de temps faut-il pour qu'un article soit valid par les modrateurs ? J'en ai post un ce week-end et il n'apparait toujours pas, je voudrais savoir si je n'ai pas fait de btise...

Merci

Bonjour,

en effet je ne le vois pas dans ma liste..
Pourriez vous me donner l'adresse temporaire de l'article ?

Anthony, Intel Software Network.

L'article est dsormais en ligne, et bientt sur la homepage.

Voici l'URL http://software.intel.com/fr-fr/articles/Thread-pool/

Anthony, Intel Software Network

Merci beaucoup !

Merci pour cet article. J'ai beaucoup apprci le contenu.

Je ne connaissai pas les instructions __attribute__ ((constructor)) et __attribute__ ((destructor)).

Si j'ai bien compris, elles permettent d'appeller des fonctions avant (constructor) et aprs (destructor) le main d'un programme. Tu t'en sers pour initialiser la variable static thread_pool ?

Je ne pense pas l'employer un jour mais c'est bon connaitre (si on a debugger le code de quelqu'un qui a utilis ces instructions). Je ne pensai pas qu'on pouvait plugger du code avant et aprs le main. Ces instructions semblent propres GCC. Y'a t'il des quivalents sur d'autres compilateurs ?

Fabien

Oui c'est exactement a, __attribute__((constructor)) permet de forcer l'appel une fonction avant le main (et inversement aprs le main pour __attribute__((destructor)) ).

C'est vrai que cela n'a que peu d'intrt dans un programme "simple" puisqu'on pourrait faire tout ces appels directement dans le main ou dans une fonction dfinie par atexit() pour la destruction. L'avantage ici serait le gain de lisibilit pour viter toute la phase d'initialisation du programme au dbut du main.

Cependant l'avantage peut devenir norme lorsque l'on conoit des programmes plus complxes chargeant dynamiquement des bibliothque. Ainsi les fonctions dfinies __attribute__((constructor)) des dites bibliothques seront appele au chargement de celles-ci (afin d'initialiser des donnes internes comme c'est le cas dans l'article et de facilit donc l'utilisation de la bibliothque).
Le chargement d'une bibliothque dynamique pouvant tre fait au runtime par le programmeur on a la fois un grand contrle sur les modules que l'on utilise et en mme temps une automatisation des initialisations/destructions des resources interne de ces derniers.

J'ai fait quelques recherche pour vrifier la compatibilit avec les autres compilateurs, le compilo d'intel (icpc) semble le supporter mais je ne l'ai pas sous la main pour faire un test (peut-tre quelqu'un de plus expriment sur son utilisation pourra le confirmer).

Laisser un commentaire

Veuillez ouvrir une session pour ajouter un commentaire. Pas encore membre ? Rejoignez-nous dès aujourd’hui