coredump

Coredump

Exemple en fortran avec SGE

  • compiler un exemple
[henry@octopus fortran]$ f95 -g prog_malloc_infini.f90 -o prog_malloc_infini
  • écrire script SGE
#!/bin/sh
#
#$ -S /bin/bash
#$ -cwd
#$ -N "prog fortran depassement tableau"
#$ -M gerard.henry@univ-amu.fr
#$ -m be

ulimit -S -c unlimited
cd /home/henry/projects/fortran
./prog_malloc_infini < prog_malloc_infini.dat
  • soumettre le script
[henry@octopus fortran]$ qsub -q latp ./fortran_prog_malloc_infini.sh
  • quand le job est terminé, repérer les fichiers de sortie de SGE et le core généré:
 512 -rw-r--r--  1 henry admin1    0 Nov  2 14:43 prog fortran depassement tableau.o18978
229K -rw-------  1 henry admin1 3.9G Nov  2 14:43 core.15890
4.5K -rw-r--r--  1 henry admin1  161 Nov  2 14:43 prog fortran depassement tableau.e18978
  • utiliser le debugger pour voir la dernière instruction exécutée avant le plantage

[henry@octopus fortran]$ gdb prog_malloc_infini core.15890
...
Core was generated by `./prog_malloc_infini'.
Program terminated with signal 11, Segmentation fault.
#0  0x0000000000400fcf in MAIN () at prog_malloc_infini.f90:16
16        print *, 'ra(nsize1+1, nsize2+1)', ra(nsize1+1, nsize2+1)
(gdb)
  • coredump.txt
  • Dernière modification : 2017/08/25 09:56
  • de 127.0.0.1