SlideShare une entreprise Scribd logo
1  sur  8
MEETUP R ADDICTS – PARALLELISATION ET CALCULS HAUTE
PERFORMANCE
Package Rmpi
©Keyrus-Allrightsreserved
2
CARTOGRAPHIE DU MONDE R HAUTE PERFORMANCE
Parallélisme File Systems Algorithmique
bigmemory
ff
biglmRODBC
biglars
biganalytics
multicore
snow
rmr
rhdfs
bigtabulate
bigalgebra
rhbase
RHadoop
The
Bigmemory
Project
Rmpi
Forking de sessions ; unix only
Cloning de sessions + gestion
manuelle de la communication
entre sessions
Couche d’abstraction pour MPI,
PVD et sockets
Implémentation
MapReduce
Matrices numériques
only
©Keyrus-Allrightsreserved
3
PRÉSENTATION DE RMPI
 MPI
 MPI signifie Message Passing Interface. MPI définit un environnement dans lequel des
programmes fonctionnent en paralléle et communiquent entre eux en s’envoyant des
messages.
 Chaque programme possède une file de message (FIFO) et peut placer un message dans la file
d’un autre programme
 Lorsqu’il le souhaite, un programme peut traiter un message dans sa file
 OpenMPI
 Implémentation Open Source de MPI
 Maintenue et en développment actif
 Implémentation préconisée par le développeur du package Rmpi
 Rmpi
 Requiert l’installation d’une implémentation de MPI (ex: OpenMPI)
 Package Rmpi_x.y-r.tar.gz à télécharger sur le CRAN
©Keyrus-Allrightsreserved
4
FONCTIONS PRINCIPALES
 Ouvrir/fermer les slaves
 mpi.spawn.Rslaves(nslaves)
 mpi.close.Rslaves()
 Identifier les slaves
 mpi.comm.size()
 mpi.comm.rank()
 Envoyer/recevoir des objets
 mpi.send.Robj(obj, ,destination,tag)
 mpi.recv.Robj(source,tag)
 mpi.bcast.Robj2slave(thedata)
 Faire exécuter du code aux slaves
 mpi.bcast.cmd(« Rcode »)
 mpi.remote.exec(« Rcode »)
©Keyrus-Allrightsreserved
5
COMMUNIQUER ENTRE SESSIONS PARALLELLES
 Brute force
 N tâches = n slaves
 Le master distribue les n tâches aux n slaves
 Task push
 N tâches >> n slaves
 Le master attribue N1, N2, N3… Nn tâches aux n slaves
 Chaque slave réalise une tâche puis demande la suivante au master
 Par rapport au brute force, moins coûteux en mémoire
 Task pull
 N tâches >> n slaves
 Le master donne une tâche aux slaves disponibles
 Quand une tâche est traitée, le slave informe le master de sa disponibilité
 Par rapport au task push :
 On ne sait pas par avance quel slave va réaliser quelle tâche
 Gére automatiquement des différences de perf entre slaves
©Keyrus-Allrightsreserved
6
TASK PULL
MasterSlave 1 Slave 2
Slave 1 Ready
Do Task 1
Done Task 1
Do Task 3
Done Task 3
All Tasks Sent
Slave 1 Done
Stop Slave 1 Stop Master Stop Slave 2
Slave 2 Ready
Do Task 2
Done Task 2
All Tasks Sent
Slave 2 Done
Do Task 1
Do Task 3
Do Task 2
Slave 1 Ready
©Keyrus-Allrightsreserved
7
CONCLUSION
 Permet une gestion low-level du parallélisme
 Nécessite plus de développement que des solutions « packagées » (foreach, snow…)
 Très souple
 Très performante (communications « instantanées »)
 Plus simple qu’il n’en a l’air
 Ressources
 http://math.acadiau.ca
 http://www.stats.uwo.ca/faculty/yu/Rmpi/install.htm
©Keyrus-Allrightsreserved
8
CONTACT
Pierre Petronin
Porteur de l’offre Statistiques
Keyrus France
Pierre.Petronin@keyrus.com
Mobile : +33 (0)6 99 33 19 97

Contenu connexe

En vedette

Analyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAnalyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAhmadou DICKO
 
Premier pas de web scrapping avec R
Premier pas de  web scrapping avec RPremier pas de  web scrapping avec R
Premier pas de web scrapping avec RCdiscount
 
Introduction à la cartographie avec R
Introduction à la cartographie avec RIntroduction à la cartographie avec R
Introduction à la cartographie avec RCdiscount
 
Atelier entreprises 25 juin 2014 - économie circulaire à impact positif
Atelier entreprises 25 juin 2014 - économie circulaire à impact positifAtelier entreprises 25 juin 2014 - économie circulaire à impact positif
Atelier entreprises 25 juin 2014 - économie circulaire à impact positifRebeccaBuick
 
Innovationery, investigación de tendencias
Innovationery, investigación de tendenciasInnovationery, investigación de tendencias
Innovationery, investigación de tendenciasAna Alonso
 
La pose d'une cloison en plaques de plate sur rail métallique
La pose d'une cloison en plaques de plate sur rail métalliqueLa pose d'une cloison en plaques de plate sur rail métallique
La pose d'une cloison en plaques de plate sur rail métalliqueGENICIMO
 
La Investigación en la Legislación Ecuatoriana
La Investigación en la Legislación EcuatorianaLa Investigación en la Legislación Ecuatoriana
La Investigación en la Legislación EcuatorianaCristian Caiza
 
Acuerdos fecode men 2015
Acuerdos fecode men 2015Acuerdos fecode men 2015
Acuerdos fecode men 2015Green Cronopia
 
Catalogue des séjours et stages saison été 2015
Catalogue des séjours et stages saison été 2015Catalogue des séjours et stages saison été 2015
Catalogue des séjours et stages saison été 2015VMSF
 
Poser une serrure
Poser une serrurePoser une serrure
Poser une serrureGENICIMO
 
Manual usuario
Manual usuarioManual usuario
Manual usuarioFaby Páez
 
Taller de cross docking
Taller de cross dockingTaller de cross docking
Taller de cross dockingfrancy
 

En vedette (20)

Analyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introductionAnalyse de données avec R : Une petite introduction
Analyse de données avec R : Une petite introduction
 
Premier pas de web scrapping avec R
Premier pas de  web scrapping avec RPremier pas de  web scrapping avec R
Premier pas de web scrapping avec R
 
Introduction à la cartographie avec R
Introduction à la cartographie avec RIntroduction à la cartographie avec R
Introduction à la cartographie avec R
 
HADOOP + R
HADOOP + RHADOOP + R
HADOOP + R
 
Atelier entreprises 25 juin 2014 - économie circulaire à impact positif
Atelier entreprises 25 juin 2014 - économie circulaire à impact positifAtelier entreprises 25 juin 2014 - économie circulaire à impact positif
Atelier entreprises 25 juin 2014 - économie circulaire à impact positif
 
Innovationery, investigación de tendencias
Innovationery, investigación de tendenciasInnovationery, investigación de tendencias
Innovationery, investigación de tendencias
 
La pose d'une cloison en plaques de plate sur rail métallique
La pose d'une cloison en plaques de plate sur rail métalliqueLa pose d'une cloison en plaques de plate sur rail métallique
La pose d'une cloison en plaques de plate sur rail métallique
 
La Investigación en la Legislación Ecuatoriana
La Investigación en la Legislación EcuatorianaLa Investigación en la Legislación Ecuatoriana
La Investigación en la Legislación Ecuatoriana
 
Tipo De Textos
Tipo De TextosTipo De Textos
Tipo De Textos
 
Lettre d'Arnaud Montebourg
Lettre d'Arnaud MontebourgLettre d'Arnaud Montebourg
Lettre d'Arnaud Montebourg
 
Hvac plans
Hvac plans Hvac plans
Hvac plans
 
Acuerdos fecode men 2015
Acuerdos fecode men 2015Acuerdos fecode men 2015
Acuerdos fecode men 2015
 
Catalogue des séjours et stages saison été 2015
Catalogue des séjours et stages saison été 2015Catalogue des séjours et stages saison été 2015
Catalogue des séjours et stages saison été 2015
 
Poser une serrure
Poser une serrurePoser une serrure
Poser une serrure
 
Teleporter
TeleporterTeleporter
Teleporter
 
Manual usuario
Manual usuarioManual usuario
Manual usuario
 
La magie des étoiles dévoilée
La magie des étoiles dévoiléeLa magie des étoiles dévoilée
La magie des étoiles dévoilée
 
Chat magique1
Chat magique1Chat magique1
Chat magique1
 
Taller de cross docking
Taller de cross dockingTaller de cross docking
Taller de cross docking
 
Resumen(2)
Resumen(2)Resumen(2)
Resumen(2)
 

Similaire à Introduction à Rmpi

Présentation de Apache Zookeeper
Présentation de Apache ZookeeperPrésentation de Apache Zookeeper
Présentation de Apache ZookeeperMichaël Morello
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOlivier DASINI
 
Sizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsSizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsPhilippeBrogi
 
Solutions temps réel sous linux
Solutions temps réel sous linuxSolutions temps réel sous linux
Solutions temps réel sous linuxembedded-linux-bdx
 
Hadoop Introduction in Paris
Hadoop Introduction in ParisHadoop Introduction in Paris
Hadoop Introduction in ParisTed Drake
 
Ippevent - Regarde les instances tomber - 20 mai 2014
Ippevent - Regarde les instances tomber - 20 mai 2014Ippevent - Regarde les instances tomber - 20 mai 2014
Ippevent - Regarde les instances tomber - 20 mai 2014vberetti
 
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libreEtat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel librePierre Ficheux
 
Hadoop and friends : introduction
Hadoop and friends : introductionHadoop and friends : introduction
Hadoop and friends : introductionfredcons
 
Noyau temps réel freertos cheriet mohammed el amine
Noyau temps réel freertos cheriet mohammed el amineNoyau temps réel freertos cheriet mohammed el amine
Noyau temps réel freertos cheriet mohammed el amineCHERIET Mohammed El Amine
 
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
Docker nice meetup #1   construire, déployer et exécuter vos applications, ...Docker nice meetup #1   construire, déployer et exécuter vos applications, ...
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...adri1s
 
Les paquets snaps « les paquets d’applications linux universels, nouvelle g...
Les paquets snaps   « les paquets d’applications linux universels, nouvelle g...Les paquets snaps   « les paquets d’applications linux universels, nouvelle g...
Les paquets snaps « les paquets d’applications linux universels, nouvelle g...Vincent JOBARD
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Jérôme Petazzoni
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abusThierry Gayet
 
Apache Storm - Introduction au traitement temps-réel avec Storm
Apache Storm - Introduction au traitement temps-réel avec StormApache Storm - Introduction au traitement temps-réel avec Storm
Apache Storm - Introduction au traitement temps-réel avec StormParis_Storm_UG
 
Paris stormusergroup intrudocution
Paris stormusergroup intrudocutionParis stormusergroup intrudocution
Paris stormusergroup intrudocutionParis_Storm_UG
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Aurelien Navarre
 
160813-technology-template-16x9.pptx
160813-technology-template-16x9.pptx160813-technology-template-16x9.pptx
160813-technology-template-16x9.pptxmajdoulineaitabdelal
 
Presentation du language Lua, Luajit, Openresty Luvit
Presentation du language Lua, Luajit, Openresty LuvitPresentation du language Lua, Luajit, Openresty Luvit
Presentation du language Lua, Luajit, Openresty LuvitLionel Duboeuf
 

Similaire à Introduction à Rmpi (20)

Présentation de Apache Zookeeper
Présentation de Apache ZookeeperPrésentation de Apache Zookeeper
Présentation de Apache Zookeeper
 
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier KrantzOps@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
Ops@viadeo : Puppet & Co... 6 mois après par Xavier Krantz
 
Sizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloadsSizing PoC LSF & PowerAI for Engineers schools workloads
Sizing PoC LSF & PowerAI for Engineers schools workloads
 
Solutions temps réel sous linux
Solutions temps réel sous linuxSolutions temps réel sous linux
Solutions temps réel sous linux
 
Hadoop Introduction in Paris
Hadoop Introduction in ParisHadoop Introduction in Paris
Hadoop Introduction in Paris
 
Présentation de Node.js
Présentation de Node.jsPrésentation de Node.js
Présentation de Node.js
 
Ippevent - Regarde les instances tomber - 20 mai 2014
Ippevent - Regarde les instances tomber - 20 mai 2014Ippevent - Regarde les instances tomber - 20 mai 2014
Ippevent - Regarde les instances tomber - 20 mai 2014
 
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libreEtat de l'art des systèmes embarqués, utilisation du logiciel libre
Etat de l'art des systèmes embarqués, utilisation du logiciel libre
 
Hadoop and friends : introduction
Hadoop and friends : introductionHadoop and friends : introduction
Hadoop and friends : introduction
 
Noyau temps réel freertos cheriet mohammed el amine
Noyau temps réel freertos cheriet mohammed el amineNoyau temps réel freertos cheriet mohammed el amine
Noyau temps réel freertos cheriet mohammed el amine
 
Meetup PM2 @delicious-insights
Meetup PM2 @delicious-insightsMeetup PM2 @delicious-insights
Meetup PM2 @delicious-insights
 
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
Docker nice meetup #1   construire, déployer et exécuter vos applications, ...Docker nice meetup #1   construire, déployer et exécuter vos applications, ...
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
 
Les paquets snaps « les paquets d’applications linux universels, nouvelle g...
Les paquets snaps   « les paquets d’applications linux universels, nouvelle g...Les paquets snaps   « les paquets d’applications linux universels, nouvelle g...
Les paquets snaps « les paquets d’applications linux universels, nouvelle g...
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
 
A la découverte d'abus
A la découverte d'abusA la découverte d'abus
A la découverte d'abus
 
Apache Storm - Introduction au traitement temps-réel avec Storm
Apache Storm - Introduction au traitement temps-réel avec StormApache Storm - Introduction au traitement temps-réel avec Storm
Apache Storm - Introduction au traitement temps-réel avec Storm
 
Paris stormusergroup intrudocution
Paris stormusergroup intrudocutionParis stormusergroup intrudocution
Paris stormusergroup intrudocution
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
 
160813-technology-template-16x9.pptx
160813-technology-template-16x9.pptx160813-technology-template-16x9.pptx
160813-technology-template-16x9.pptx
 
Presentation du language Lua, Luajit, Openresty Luvit
Presentation du language Lua, Luajit, Openresty LuvitPresentation du language Lua, Luajit, Openresty Luvit
Presentation du language Lua, Luajit, Openresty Luvit
 

Plus de parisraddicts

Gardez vos projets R organisés avec le package "project"
Gardez vos projets R organisés avec le package "project"Gardez vos projets R organisés avec le package "project"
Gardez vos projets R organisés avec le package "project"parisraddicts
 
Campagne presidentielle
Campagne presidentielleCampagne presidentielle
Campagne presidentielleparisraddicts
 
Introduction au package "plyr"
Introduction au package "plyr"Introduction au package "plyr"
Introduction au package "plyr"parisraddicts
 
Cartographie politique avec R
Cartographie politique avec RCartographie politique avec R
Cartographie politique avec Rparisraddicts
 
Outils cartographiques et en statistique spatiale sur R
Outils cartographiques et en statistique spatiale sur ROutils cartographiques et en statistique spatiale sur R
Outils cartographiques et en statistique spatiale sur Rparisraddicts
 
Cartographie interactive avec R
Cartographie interactive avec RCartographie interactive avec R
Cartographie interactive avec Rparisraddicts
 
Les meetups dédiés à R dans le monde
Les meetups dédiés à R dans le mondeLes meetups dédiés à R dans le monde
Les meetups dédiés à R dans le mondeparisraddicts
 
Graphiques interactifs avec R
Graphiques interactifs avec RGraphiques interactifs avec R
Graphiques interactifs avec Rparisraddicts
 
Meetup 5 - Le package manipulate
Meetup 5 - Le package manipulateMeetup 5 - Le package manipulate
Meetup 5 - Le package manipulateparisraddicts
 
Prédire la progression de patients en thérapie
Prédire la progression de patients en thérapiePrédire la progression de patients en thérapie
Prédire la progression de patients en thérapieparisraddicts
 
Extraction données web
Extraction données webExtraction données web
Extraction données webparisraddicts
 

Plus de parisraddicts (12)

Gardez vos projets R organisés avec le package "project"
Gardez vos projets R organisés avec le package "project"Gardez vos projets R organisés avec le package "project"
Gardez vos projets R organisés avec le package "project"
 
Campagne presidentielle
Campagne presidentielleCampagne presidentielle
Campagne presidentielle
 
Introduction au package "plyr"
Introduction au package "plyr"Introduction au package "plyr"
Introduction au package "plyr"
 
Cartographie politique avec R
Cartographie politique avec RCartographie politique avec R
Cartographie politique avec R
 
Outils cartographiques et en statistique spatiale sur R
Outils cartographiques et en statistique spatiale sur ROutils cartographiques et en statistique spatiale sur R
Outils cartographiques et en statistique spatiale sur R
 
CaRtogRaphie avec R
CaRtogRaphie avec RCaRtogRaphie avec R
CaRtogRaphie avec R
 
Cartographie interactive avec R
Cartographie interactive avec RCartographie interactive avec R
Cartographie interactive avec R
 
Les meetups dédiés à R dans le monde
Les meetups dédiés à R dans le mondeLes meetups dédiés à R dans le monde
Les meetups dédiés à R dans le monde
 
Graphiques interactifs avec R
Graphiques interactifs avec RGraphiques interactifs avec R
Graphiques interactifs avec R
 
Meetup 5 - Le package manipulate
Meetup 5 - Le package manipulateMeetup 5 - Le package manipulate
Meetup 5 - Le package manipulate
 
Prédire la progression de patients en thérapie
Prédire la progression de patients en thérapiePrédire la progression de patients en thérapie
Prédire la progression de patients en thérapie
 
Extraction données web
Extraction données webExtraction données web
Extraction données web
 

Introduction à Rmpi

  • 1. MEETUP R ADDICTS – PARALLELISATION ET CALCULS HAUTE PERFORMANCE Package Rmpi
  • 2. ©Keyrus-Allrightsreserved 2 CARTOGRAPHIE DU MONDE R HAUTE PERFORMANCE Parallélisme File Systems Algorithmique bigmemory ff biglmRODBC biglars biganalytics multicore snow rmr rhdfs bigtabulate bigalgebra rhbase RHadoop The Bigmemory Project Rmpi Forking de sessions ; unix only Cloning de sessions + gestion manuelle de la communication entre sessions Couche d’abstraction pour MPI, PVD et sockets Implémentation MapReduce Matrices numériques only
  • 3. ©Keyrus-Allrightsreserved 3 PRÉSENTATION DE RMPI  MPI  MPI signifie Message Passing Interface. MPI définit un environnement dans lequel des programmes fonctionnent en paralléle et communiquent entre eux en s’envoyant des messages.  Chaque programme possède une file de message (FIFO) et peut placer un message dans la file d’un autre programme  Lorsqu’il le souhaite, un programme peut traiter un message dans sa file  OpenMPI  Implémentation Open Source de MPI  Maintenue et en développment actif  Implémentation préconisée par le développeur du package Rmpi  Rmpi  Requiert l’installation d’une implémentation de MPI (ex: OpenMPI)  Package Rmpi_x.y-r.tar.gz à télécharger sur le CRAN
  • 4. ©Keyrus-Allrightsreserved 4 FONCTIONS PRINCIPALES  Ouvrir/fermer les slaves  mpi.spawn.Rslaves(nslaves)  mpi.close.Rslaves()  Identifier les slaves  mpi.comm.size()  mpi.comm.rank()  Envoyer/recevoir des objets  mpi.send.Robj(obj, ,destination,tag)  mpi.recv.Robj(source,tag)  mpi.bcast.Robj2slave(thedata)  Faire exécuter du code aux slaves  mpi.bcast.cmd(« Rcode »)  mpi.remote.exec(« Rcode »)
  • 5. ©Keyrus-Allrightsreserved 5 COMMUNIQUER ENTRE SESSIONS PARALLELLES  Brute force  N tâches = n slaves  Le master distribue les n tâches aux n slaves  Task push  N tâches >> n slaves  Le master attribue N1, N2, N3… Nn tâches aux n slaves  Chaque slave réalise une tâche puis demande la suivante au master  Par rapport au brute force, moins coûteux en mémoire  Task pull  N tâches >> n slaves  Le master donne une tâche aux slaves disponibles  Quand une tâche est traitée, le slave informe le master de sa disponibilité  Par rapport au task push :  On ne sait pas par avance quel slave va réaliser quelle tâche  Gére automatiquement des différences de perf entre slaves
  • 6. ©Keyrus-Allrightsreserved 6 TASK PULL MasterSlave 1 Slave 2 Slave 1 Ready Do Task 1 Done Task 1 Do Task 3 Done Task 3 All Tasks Sent Slave 1 Done Stop Slave 1 Stop Master Stop Slave 2 Slave 2 Ready Do Task 2 Done Task 2 All Tasks Sent Slave 2 Done Do Task 1 Do Task 3 Do Task 2 Slave 1 Ready
  • 7. ©Keyrus-Allrightsreserved 7 CONCLUSION  Permet une gestion low-level du parallélisme  Nécessite plus de développement que des solutions « packagées » (foreach, snow…)  Très souple  Très performante (communications « instantanées »)  Plus simple qu’il n’en a l’air  Ressources  http://math.acadiau.ca  http://www.stats.uwo.ca/faculty/yu/Rmpi/install.htm
  • 8. ©Keyrus-Allrightsreserved 8 CONTACT Pierre Petronin Porteur de l’offre Statistiques Keyrus France Pierre.Petronin@keyrus.com Mobile : +33 (0)6 99 33 19 97