Forrtl: severe (157) Program exception – access violation

Jag blir alltid lika glad när beräkningsprogram ger felmeddelande som forrtl: severe (157) Program exception – access violation och Memory allocation failed for…the routine INIT. Då vet jag nämligen att jag måste ägna de kommande fyra timmarna åt att överhuvudtaget förstå vad jag ska göra åt saken och komma vidare.

FDS kan ge en del lustiga felmeddelanden. T.ex forrtl: severe: Program Exception – stack overflow. Detta vet vi sedan länge har att göra med att hur mycket stackminne som FDS snor åt sig. En fix finns på Nist:s hemsida. Men, andra fel än så är inte lika lätta att komma vidare med. I mitt arbete med MVG i Umeå jobbar jag med en grid på knappt 2 miljoner celler. Inte speciellt mycket, men då mängden block (byggnadsdelar) är stor blir det jobbigt för Win XP. Antingen vill inte simuleringen starta överhuvudtaget eller så kommer kära forrtl: severe: och meddelar sin närvaro efter några hundra iterationer.

Lösningen då? Jo, tack vare Google lärde jag mig att XP hanterar minne som fragment och kan inte ha mer än 2 GB i en klump (tråd). Lösningen på detta blir att dela upp simuleringen i fler trådar med fds4_mpi och MPICH. Jag har lyckats med att köra fds med parellella processorer förut och det gick även denna gång. I stället för att dra igång indatafilen med fds4 < job_name.data använder jag mpirun -np X c:nistfdsfds_mpi.exe (X = antal grids) och lyckas starta X trådar som räknar galant.

2 reaktion på “Forrtl: severe (157) Program exception – access violation

  1. Jonatan

    Hej!

    Jag har fått samma meddelande när jag försökt lägga in kontrollfunktioner i fds. (T.ex. i ett fall när jag vill ta bort fönster ur en fasad vid en viss temperatur, eller när man vill stänga dörr på detektor). Antalet celler/mesh är få och jag har provkört utan kontroller vilket visar att det går utan..

    Är detta något du har erfarenhet av?

  2. Fredrik

    Jonatan, jag har inte fått detta felmeddelande annat än när det gäller den XP-releterade minnesbegränsningen….

Kommentarer inaktiverade.