C CDEB      SOURCE    PV        17/12/05    21:15:07     9646           
      subroutine CDEB
C L'operateur CDEB initialise les communications MPI
C Une fois cela fait, il allloue les piles d'objets échangés avec les
C autres processus
      integer nproc,iproc
      integer nitlac
      character*(8) typNom
      integer typNum

-INC PPARAM
-INC CCOPTIO
-INC COCOLL
-INC TMCOLAC
      pointeur piles.LISPIL
      pointeur jcolac.ICOLAC
      nproc=0
C Initialisation de la communication MPI
      call mpiini()
C Allocation des piles d'echange
c recuperer le nb max et le num de rang
      call mpinbc(nproc)
c allouer le segment piComm contenant les piles d'objet par
c     Recuperation de la taille des piles
      segini piles
      typNom='        '
      typNum=-1
      call typfil(typNom,typNum)
      nitlac=-typNum
c allocation des piles et ajout au noyau
C pour plus d'info sur les segments de type ICOLAC, voir sauv.eso
      do iproc=1,nproc
Cdb         write(ioimp,*)colRan,'Piles de communication avec le processeur',
Cdb     &             iproc
         call crepil(jcolac,nitlac)
         piles.proc(iproc) = jcolac
Cdb         write(ioimp,*) colRan,'Piles allouees',piles.proc(iproc+1)
         call cblopi(jcolac,1)
Cdb         write(ioimp,*) colRan,'Piles ajoutees au noyau'
      enddo
      piComm = piles
Cdb      write(ioimp,*) "piComm dans cdeb",piComm
      call savseg(piles)
      segdes piles
C Allocation de la liste des intercommunicateurs
C Blocage du segment


Cdb      write(ioimp,*) colRan,'piComm',piComm
      end


 
 
 
