Commit befor trying to convert particle array to linked list to improve

performance.
This commit is contained in:
Jorge Gonzalez 2020-10-10 21:25:49 +02:00
commit 60f38a2d95
8 changed files with 160 additions and 12 deletions

View file

@ -2,14 +2,15 @@
OBJS = moduleCaseParam.o moduleCompTime.o moduleList.o\
moduleMesh.o moduleMeshCyl.o moduleMeshCylBoundary.o\
moduleMeshCylRead.o moduleOutput.o moduleInput.o \
moduleSolver.o moduleCollisions.o moduleTable.o
moduleSolver.o moduleCollisions.o moduleTable.o \
moduleParallel.o
all: $(OBJS)
moduleCollisions.o: moduleTable.o moduleSpecies.o moduleRefParam.o moduleConstParam.o moduleMeshCyl.f95
$(FC) $(FCFLAGS) -c $(subst .o,.f95, $@) -o $(OBJDIR)/$@
moduleInput.o: moduleRefParam.o moduleCaseParam.o moduleSolver.o moduleInject.o moduleBoundary.o moduleMesh.o moduleMeshCylRead.o moduleErrors.o moduleSpecies.o moduleInput.f95
moduleInput.o: moduleParallel.o moduleRefParam.o moduleCaseParam.o moduleSolver.o moduleInject.o moduleBoundary.o moduleMesh.o moduleMeshCylRead.o moduleErrors.o moduleSpecies.o moduleInput.f95
$(FC) $(FCFLAGS) -c $(subst .o,.f95, $@) -o $(OBJDIR)/$@
moduleInject.o: moduleSpecies.o moduleSolver.o moduleMesh.o moduleMeshCyl.o moduleInject.f95

View file

@ -45,6 +45,9 @@ MODULE moduleInput
!Read injection of particles
CALL readInject(config)
!Read parallel parameters
CALL readParallel(config)
END SUBROUTINE readConfig
!Reads the reference parameters
@ -325,9 +328,9 @@ MODULE moduleInput
TYPE(json_file), INTENT(inout):: config
INTEGER:: i
character(2):: istring
character(:), allocatable:: object
logical:: found
CHARACTER(2):: istring
CHARACTER(:), ALLOCATABLE:: object
LOGICAL:: found
CHARACTER(:), ALLOCATABLE:: speciesName
CHARACTER(:), ALLOCATABLE:: name
REAL(8):: v
@ -366,4 +369,28 @@ MODULE moduleInput
END SUBROUTINE readInject
SUBROUTINE readParallel(config)
USE moduleParallel
USE moduleErrors
USE json_module
IMPLICIT NONE
TYPE(json_file), INTENT(inout):: config
CHARACTER(:), ALLOCATABLE:: object
LOGICAL:: found
!Reads OpenMP parameters
object = 'parallel.OpenMP'
CALL config%get(object // '.nThreads', openMP%nThreads, found)
IF (.NOT. found) THEN
openMP%nthreads = 8
CALL warningError('No OpenMP configuration detected, using 8 threads as default.')
END IF
END SUBROUTINE readParallel
END MODULE moduleInput

View file

@ -0,0 +1,10 @@
MODULE moduleParallel
TYPE openMP_type
INTEGER:: nThreads
END TYPE
TYPE(openMP_type):: openMP
END MODULE moduleParallel