Skip to content
Snippets Groups Projects
Commit 7cdcbcef authored by Ali Mohammed's avatar Ali Mohammed
Browse files

clean up example Makefile and code

parent e3f5c9d3
Branches
Tags
No related merge requests found
MAESTRO ?=../../install MAESTRO ?=/usr/local/
CC ?= gcc CC ?= gcc
MPICC ?= mpicc MPICC ?= mpicc
SRC_single_pool_op=single_pool_op.c
SRC_omp_inj=omp_injector.c
SRC_consumer=omp_consumer.c
SRC_core_bench=core_benchmark.c
INC=-I$(MAESTRO)/include/maestro INC=-I$(MAESTRO)/include/maestro
LDFLAGS=-L$(MAESTRO)/lib LDFLAGS=-L$(MAESTRO)/lib
LIBS=-pthread -lmaestro
LIBS=-lmaestro
LIBS_OMP=-fopenmp -lmaestro LIBS_OMP=-fopenmp -lmaestro
CFLAGS=-O3 CFLAGS=-O3
CFLAGS_obj=-c -O3
OBJ_single_pool_op=single_pool_op.o
OBJ_omp_inj=omp_inj.o
OBJ_omp_consumer=omp_consumer.o
OBJ_core_bench=core_bench.o
OBJ = $(OBJ_single_pool_op) $(OBJ_omp_inj) $(OBJ_core_bench) $(OBJ_omp_consumer)
OBJs = core_bench local_pool_op
all: single_pool_op core_bench
single_pool_op: all: local_pool_op core_bench
$(CC) $(CFLAGS) $(INC) $(SRC_single_pool_op) $(LDFLAGS) $(LIBS) -o $(OBJ_single_pool_op)
core_bench: omp_inj omp_consumer %: %.c
$(MPICC) $(CFLAGS) $(INC) $(SRC_core_bench) $(LDFLAGS) $(OBJ_omp_inj) $(OBJ_omp_consumer) $(LIBS_OMP) -o $(OBJ_core_bench) $(CC) $(CFLAGS) $(INC) $< $(LDFLAGS) $(LIBS) -o $@
omp_inj: %.o: %.c
$(CC) $(CFLAGS_obj) $(INC) $(SRC_omp_inj) $(LDFLAGS) -o $(OBJ_omp_inj) $(MPICC) -c $(CFLAGS) $(INC) $< -o $@
omp_consumer: core_bench: omp_injector.o omp_consumer.o core_benchmark.o
$(CC) $(CFLAGS_obj) $(INC) $(SRC_consumer) $(LDFLAGS) -o $(OBJ_omp_consumer) $(MPICC) $(LDFLAGS) $^ $(LIBS_OMP) -o $@
clean: clean:
rm $(OBJ) *CDO* rm -f $(OBJs) *.o *CDO*
...@@ -280,7 +280,7 @@ int main(int argc, char *argv[]) ...@@ -280,7 +280,7 @@ int main(int argc, char *argv[])
{ {
for (size_t i = 0; i < num_CDOs; i++) { for (size_t i = 0; i < num_CDOs; i++) {
//allocate data //allocate data
CDO_data[i] = (char *) malloc(size_CDO*sizeof(char)); posix_memalign((void**) &CDO_data[i], (size_t) sysconf(_SC_PAGESIZE), sizeof(char)*size_CDO);
//fill data //fill data
fill_char_array(CDO_data[i], size_CDO); fill_char_array(CDO_data[i], size_CDO);
} }
......
...@@ -893,7 +893,7 @@ consumer_thread_fun(void *closure) ...@@ -893,7 +893,7 @@ consumer_thread_fun(void *closure)
#define DEFAULT_CDO_SIZE 1024 #define DEFAULT_CDO_SIZE 1024
#define DEFAULT_CDO_COUNT 42 #define DEFAULT_CDO_COUNT 42
#define CONFIG_FILE_PATH "./single_node_pool_op_config.yaml" #define CONFIG_FILE_PATH "./local_pool_op_config.yaml"
/* /*
* main thread: * main thread:
......
...@@ -152,7 +152,7 @@ mstro_status require_CDOs(mstro_cdo *cdos, int num_CDOs, int *injector_ids, int ...@@ -152,7 +152,7 @@ mstro_status require_CDOs(mstro_cdo *cdos, int num_CDOs, int *injector_ids, int
// declare CDOs loop // declare CDOs loop
#pragma omp parallel for reduction(| :s) #pragma omp parallel for private(cdoidx, cdo_gid) reduction(| :s)
for(size_t i=0; i < num_injectors; i++) for(size_t i=0; i < num_injectors; i++)
{ {
......
...@@ -54,7 +54,7 @@ mstro_status inject_CDOs(int injector_id, mstro_cdo *cdos, int num_CDOs, size_t ...@@ -54,7 +54,7 @@ mstro_status inject_CDOs(int injector_id, mstro_cdo *cdos, int num_CDOs, size_t
size_t cdoidx; size_t cdoidx;
// declare CDOs loop // declare CDOs loop
#pragma omp parallel for reduction(| :s) #pragma omp parallel for private(cdoidx) reduction(| :s)
for(size_t i=0; i < num_CDOs; i++) for(size_t i=0; i < num_CDOs; i++)
{ {
mstro_status s1,s2, s3; mstro_status s1,s2, s3;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment