Difference between revisions of "AWP-ODC-FDQ"

From SCECpedia
Jump to navigationJump to search
(Created page with 'AWP-ODC-FDQ is a version of the wave propagation code AWP-ODC that contains frequency dependent-Q physics modules. Currently we have a GPU version of this code. == PBS Scrip…')
 
Line 12: Line 12:
  
 
== Makefile ==
 
== Makefile ==
 +
 
   CC = cc
 
   CC = cc
 
   CFLAGS = -O3 -Wall
 
   CFLAGS = -O3 -Wall
Line 18: Line 19:
 
   OBJECTS = command.o pmcl3d.o grid.o source.o mesh.o cerjan.o swap.o kernel.o io.o
 
   OBJECTS = command.o pmcl3d.o grid.o source.o mesh.o cerjan.o swap.o kernel.o io.o
 
   LIB = -lm -ldl -L/opt/nvidia/cudatoolkit/5.5.20-1.0402.7700.8.1/lib64 -lcudart -lmpich
 
   LIB = -lm -ldl -L/opt/nvidia/cudatoolkit/5.5.20-1.0402.7700.8.1/lib64 -lcudart -lmpich
 
+
 
 
   pmcl3d: $(OBJECTS)
 
   pmcl3d: $(OBJECTS)
$(CC) $(CFLAGS) $(INCDIR) -o pmcl3d $(OBJECTS) $(LIB)
+
    $(CC) $(CFLAGS) $(INCDIR) -o pmcl3d $(OBJECTS) $(LIB)
 
+
 
 
   pmcl3d.o: pmcl3d.c
 
   pmcl3d.o: pmcl3d.c
$(CC) $(CFLAGS) $(INCDIR) -c -o pmcl3d.o pmcl3d.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o pmcl3d.o pmcl3d.c
 
+
 
 
   command.o: command.c
 
   command.o: command.c
$(CC) $(CFLAGS) $(INCDIR) -c -o command.o command.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o command.o command.c
 
+
 
 
   io.o:   io.c
 
   io.o:   io.c
$(CC) $(CFLAGS) $(INCDIR) -c -o io.o   io.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o io.o   io.c
 
+
 
 
   grid.o: grid.c
 
   grid.o: grid.c
$(CC) $(CFLAGS) $(INCDIR) -c -o grid.o grid.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o grid.o grid.c
 
+
 
 
   source.o: source.c
 
   source.o: source.c
 
$(CC) $(CFLAGS) $(INCDIR) -c -o source.o source.c
 
$(CC) $(CFLAGS) $(INCDIR) -c -o source.o source.c
 
+
 
 
   mesh.o: mesh.c
 
   mesh.o: mesh.c
$(CC) $(CFLAGS) $(INCDIR) -c -o mesh.o mesh.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o mesh.o mesh.c
 
+
 
 
   cerjan.o: cerjan.c
 
   cerjan.o: cerjan.c
$(CC) $(CFLAGS) $(INCDIR) -c -o cerjan.o cerjan.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o cerjan.o cerjan.c
 
+
 
 
   swap.o: swap.c
 
   swap.o: swap.c
$(CC) $(CFLAGS) $(INCDIR) -c -o swap.o swap.c
+
    $(CC) $(CFLAGS) $(INCDIR) -c -o swap.o swap.c
 
+
 
 
   kernel.o: kernel.cu
 
   kernel.o: kernel.cu
$(GFLAGS) $(INCDIR) -c -o kernel.o kernel.cu
+
    $(GFLAGS) $(INCDIR) -c -o kernel.o kernel.cu
 
+
 
 
   clean:
 
   clean:
rm *.o
+
    rm *.o
  
 
== Location of Code ==
 
== Location of Code ==

Revision as of 23:39, 1 July 2015

AWP-ODC-FDQ is a version of the wave propagation code AWP-ODC that contains frequency dependent-Q physics modules. Currently we have a GPU version of this code.

PBS Script

Changing Default Blue Waters Environment

Default software modules are Cray. Change these to GNU

 module unload PrgEnv-cray   
 module load PrgEnv-gnu 
 module load cudatoolkit 
 module unload darshan 

Makefile

 CC 	= cc
 CFLAGS	= -O3 -Wall
 GFLAGS	= nvcc -O4 -Xptxas -dlcm=ca -maxrregcount=255 -use_fast_math --ptxas-options=-v -arch=sm_35
 INCDIR  = -I/opt/nvidia/cudatoolkit/5.5.20-1.0402.7700.8.1/include
 OBJECTS	= command.o pmcl3d.o grid.o source.o mesh.o cerjan.o swap.o kernel.o io.o
 LIB	= -lm -ldl -L/opt/nvidia/cudatoolkit/5.5.20-1.0402.7700.8.1/lib64 -lcudart -lmpich
 
 pmcl3d:	$(OBJECTS)
    $(CC) $(CFLAGS) $(INCDIR) -o	pmcl3d	$(OBJECTS)	$(LIB)
 
 pmcl3d.o:	pmcl3d.c
    $(CC) $(CFLAGS) $(INCDIR) -c -o pmcl3d.o	pmcl3d.c		
 
 command.o:	command.c
    $(CC) $(CFLAGS) $(INCDIR) -c -o	command.o	command.c	
 
 io.o:	  io.c
    $(CC) $(CFLAGS) $(INCDIR) -c -o	io.o	  io.c	
 
 grid.o:		grid.c
    $(CC) $(CFLAGS) $(INCDIR) -c -o grid.o		grid.c		
 
 source.o:	source.c

$(CC) $(CFLAGS) $(INCDIR) -c -o source.o source.c

 mesh.o:		mesh.c
   $(CC) $(CFLAGS) $(INCDIR) -c -o mesh.o		mesh.c		
 
 cerjan.o:	cerjan.c
   $(CC) $(CFLAGS) $(INCDIR) -c -o cerjan.o	cerjan.c
 
 swap.o:		swap.c
   	$(CC) $(CFLAGS) $(INCDIR) -c -o swap.o		swap.c
 
 kernel.o:	kernel.cu
   	$(GFLAGS) $(INCDIR) -c -o	kernel.o	kernel.cu	
 
 clean:	
   	rm *.o

Location of Code

See Also