[Octopus-users] regression in octopus 3.1.0?

Giacomo Mulas gmulas at oa-cagliari.inaf.it
Tue Apr 21 11:48:16 WEST 2009


On Tue, 21 Apr 2009, Giacomo Mulas wrote:

> By the way, apparently I also found a regression in octopus 3.1.0 vs 3.0.1.
> The file inp_old runs fine with octopus 3.0.1, while the minimally
> modified inp_new file segfaults at iteration 14 with octopus 3.1.0. The
> latter happens both with my home compiled version and with the precompiled
> binary in the deb package taken from the octopus web site. It looks like
> there is some memory corruption somewhere. If you wish, I can run octopus
> under a memory checker like valgrind and let you have the output?

I did the above, and found, under the memory checker, the following errors
reported near the crash (I attach again the input file I used):

      13       6.500000     -0.194913        11.559
      14       7.000000     -0.194913        11.445
==8081== 
==8081== Invalid write of size 8
==8081==    at 0x7A1688: zunmhr_ (in /usr/bin/octopus)
==8081==    by 0x77F28C: zlaqr3_ (in /usr/bin/octopus)
==8081==    by 0x77D4A8: zlaqr0_ (in /usr/bin/octopus)
==8081==    by 0x771055: zhseqr_ (in /usr/bin/octopus)
==8081==    by 0x75B9BE: zgeev_ (in /usr/bin/octopus)
==8081==    by 0x6C9A11: __lalg_adv_m_MOD_zeigensolve_nonh
(lalg_adv_lapack.F90:300)
==8081==    by 0x6CDD60: __lalg_adv_m_MOD_zlalg_exp (lalg_adv.F90:159)
==8081==    by 0x55DD74: __exponential_m_MOD_exponential_apply
(exponential.F90:456)
==8081==    by 0x483919: exponentialonential_midpoint.2249 (td_rti.F90:761)
==8081==    by 0x48A65E: __td_rti_m_MOD_td_rti_dt (td_rti.F90:467)
==8081==    by 0x49DC1E: __td_m_MOD_td_run (td.F90:230)
==8081==    by 0x4219A1: __run_m_MOD_run (run.F90:95)
==8081==  Address 0x8c41a98 is 8 bytes before a block of size 40 alloc'd
==8081==    at 0x4C2391E: malloc (vg_replace_malloc.c:207)
==8081==    by 0x823359: putsym (symbols.c:49)
==8081==    by 0x82569C: yyparse (parse_exp.c:156)
==8081==    by 0x825719: parse_exp (parse_exp.c:54)
==8081==    by 0x823FA9: parse_input (parse.c:160)
==8081==    by 0x82292C: oct_parse_input_ (parser_f.c:105)
==8081==    by 0x70D3DE: __loct_parser_m_MOD_parser_init
(loct_parser.F90:273)
==8081==    by 0x421C55: MAIN__ (main.F90:43)
==8081==    by 0x846C1B: main (in /usr/bin/octopus)
==8081== 
==8081== Invalid write of size 8
==8081==    at 0x7A1699: zunmhr_ (in /usr/bin/octopus)
==8081==    by 0x77F28C: zlaqr3_ (in /usr/bin/octopus)
==8081==    by 0x77D4A8: zlaqr0_ (in /usr/bin/octopus)
==8081==    by 0x771055: zhseqr_ (in /usr/bin/octopus)
==8081==    by 0x75B9BE: zgeev_ (in /usr/bin/octopus)
==8081==    by 0x6C9A11: __lalg_adv_m_MOD_zeigensolve_nonh
(lalg_adv_lapack.F90:300)
==8081==    by 0x6CDD60: __lalg_adv_m_MOD_zlalg_exp (lalg_adv.F90:159)
==8081==    by 0x55DD74: __exponential_m_MOD_exponential_apply
(exponential.F90:456)
==8081==    by 0x483919: exponentialonential_midpoint.2249 (td_rti.F90:761)
==8081==    by 0x48A65E: __td_rti_m_MOD_td_rti_dt (td_rti.F90:467)
==8081==    by 0x49DC1E: __td_m_MOD_td_run (td.F90:230)
==8081==    by 0x4219A1: __run_m_MOD_run (run.F90:95)
==8081==  Address 0x8c41a90 is 16 bytes before a block of size 40 alloc'd
==8081==    at 0x4C2391E: malloc (vg_replace_malloc.c:207)
==8081==    by 0x823359: putsym (symbols.c:49)
==8081==    by 0x82569C: yyparse (parse_exp.c:156)
==8081==    by 0x825719: parse_exp (parse_exp.c:54)
==8081==    by 0x823FA9: parse_input (parse.c:160)
==8081==    by 0x82292C: oct_parse_input_ (parser_f.c:105)
==8081==    by 0x70D3DE: __loct_parser_m_MOD_parser_init
(loct_parser.F90:273)
==8081==    by 0x421C55: MAIN__ (main.F90:43)
==8081==    by 0x846C1B: main (in /usr/bin/octopus)
==8081== 
==8081== Invalid read of size 8
==8081==    at 0x77F2D4: zlaqr3_ (in /usr/bin/octopus)
==8081==    by 0x77D4A8: zlaqr0_ (in /usr/bin/octopus)
==8081==    by 0x771055: zhseqr_ (in /usr/bin/octopus)
==8081==    by 0x75B9BE: zgeev_ (in /usr/bin/octopus)
==8081==    by 0x6C9A11: __lalg_adv_m_MOD_zeigensolve_nonh
(lalg_adv_lapack.F90:300)
==8081==    by 0x6CDD60: __lalg_adv_m_MOD_zlalg_exp (lalg_adv.F90:159)
==8081==    by 0x55DD74: __exponential_m_MOD_exponential_apply
(exponential.F90:456)
==8081==    by 0x483919: exponentialonential_midpoint.2249 (td_rti.F90:761)
==8081==    by 0x48A65E: __td_rti_m_MOD_td_rti_dt (td_rti.F90:467)
==8081==    by 0x49DC1E: __td_m_MOD_td_run (td.F90:230)
==8081==    by 0x4219A1: __run_m_MOD_run (run.F90:95)
==8081==    by 0x4227AF: MAIN__ (main.F90:230)
==8081==  Address 0x8c41a90 is 16 bytes before a block of size 40 alloc'd
==8081==    at 0x4C2391E: malloc (vg_replace_malloc.c:207)
==8081==    by 0x823359: putsym (symbols.c:49)
==8081==    by 0x82569C: yyparse (parse_exp.c:156)
==8081==    by 0x825719: parse_exp (parse_exp.c:54)
==8081==    by 0x823FA9: parse_input (parse.c:160)
==8081==    by 0x82292C: oct_parse_input_ (parser_f.c:105)
==8081==    by 0x70D3DE: __loct_parser_m_MOD_parser_init
(loct_parser.F90:273)
==8081==    by 0x421C55: MAIN__ (main.F90:43)
==8081==    by 0x846C1B: main (in /usr/bin/octopus)

Maybe this makes sense for you?

Ciao
Giacomo

-- 
_________________________________________________________________

Giacomo Mulas <gmulas at oa-cagliari.inaf.it>
_________________________________________________________________

OSSERVATORIO ASTRONOMICO DI CAGLIARI
Str. 54, Loc. Poggio dei Pini * 09012 Capoterra (CA)

Tel. (OAC): +39 070 71180 248     Fax : +39 070 71180 222
Tel. (UNICA): +39 070 675 4916
_________________________________________________________________

"When the storms are raging around you, stay right where you are"
                          (Freddy Mercury)
_________________________________________________________________
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

-------------- next part --------------
# -*- coding: utf-8 mode: shell-script -*-
# $Id:  $

CalculationMode = td

FromScratch = yes

#bondlength = 1.7/0.529177

%Coordinates
"Na" |  0.0 | 0.0 | 0.0 | yes
#"Na" | -bondlength | 0.0 | 0.0 | yes
%

BoxShape = sphere
Radius  = 12.0/0.529177
Spacing = 0.3/0.529177

ExcessCharge = 0
TheoryLevel = independent_particles

T = 80000.0
dt = 0.5
TDMaximumIter = T/dt
TDEvolutionMethod = exp_mid
TDExponentialMethod = lanczos
TDExpOrder = 20
TDTimeStep = dt

#TDDeltaStrength = 0.01
#%TDPolarization
# 1/sqrt(2) | -1/sqrt(2) | 0
# 1/sqrt(2) |  1/sqrt(2) | 0
# 1/sqrt(2) |  0         | 1/sqrt(2)
#%
#TDPolarizationDirection = 1
#TDPolarizationEquivAxis = 3
#%TDPolarizationWprime
# 0 | 0 | 1
#%

omega = .20
electric_amplitude = 0.005
p_c = 137.036
vector_amplitude = -P_c*electric_amplitude/omega
%TDExternalFields
vector_potential | 0 | 0 | 1 | omega | "trapezio"
%
%TDFunctions
"trapezio" | tdf_trapezoidal | vector_amplitude | 1000.0 | 510.0 | 5.0
%

TDGauge = velocity

#CalcPES_rc = yes
#%PES_rc_points
#0.0 | 0.0 | 11.5/0.529177
#0.0 | 11.5/0.529177 | 0.0
#11.5/0.529177 | 0.0 | 0.0
#%

#CalcPES_mask = yes

AbsorbingBoundaries = yes
MoveIons = no

TDOutput = laser + energy + multipoles + td_occup + populations
OutputEvery = 10

SpecStartTime = 1200.
SpecEndTime = 12000.


More information about the Octopus-users mailing list