Skip to content

Commit

Permalink
update mac arch and refresh host backend
Browse files Browse the repository at this point in the history
  • Loading branch information
cjknight committed Nov 5, 2024
1 parent 6ef99eb commit f2e84e1
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 12 deletions.
12 changes: 4 additions & 8 deletions gpu/src/arch/mac
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,14 @@ BLAS=/Users/cjknight/Documents/soft/lib/lapack

PYTHON_INC=$(shell python3 -m pybind11 --includes)

#FC = mpif90-mpich-clang15
FC = mpif90-mpich-gcc12
FC = mpif90-mpich-gcc13
FCFLAGS = -g -O3 -ffree-form
#FCFLAGS += -fopenmp

#CXX = mpicxx-mpich-clang15
CXX = mpicxx-mpich-gcc12
CXXFLAGS = -g -O3
CXX = mpicxx-mpich-gcc13
CXXFLAGS = -g -O3 -fopenmp -D_USE_CPU
CXXFLAGS += $(PYTHON_INC)
CXXFLAGS += -fopenmp

CXXFLAGS += -D_USE_CPU
#CXXFLAGS += -D_SIMPLE_TIMER

#CXXFLAGS += -I$(BLAS)/include
Expand All @@ -24,5 +20,5 @@ LD = $(CXX)
LDFLAGS = -fopenmp
#LDFLAGS += -fPIC -undefined dynamic_lookup -shared
LIB =
#LIB += -L$(BLAS)/lib -lrefblas
LIB += -L$(BLAS)/lib -lrefblas -lgfortran
LIB += -lstdc++
16 changes: 14 additions & 2 deletions gpu/src/pm_host.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -52,25 +52,37 @@ int PM::dev_get_device() {return 0;}

void * PM::dev_malloc(size_t N) {return malloc(N);}

void * PM::dev_malloc_async(size_t N, size_t) {return dev_malloc(N);}
void * PM::dev_malloc_async(size_t N, void * q) {return dev_malloc(N);}

void * PM::dev_malloc_host(size_t N) {return malloc(N);}

void PM::dev_free(void * ptr) {free(ptr);}

void PM::dev_free_async(void * ptr, size_t) {dev_free(ptr);}
void PM::dev_free_async(void * ptr, void * q) {dev_free(ptr);}

void PM::dev_free_host(void * ptr) {free(ptr);}

void PM::dev_push(void * d_ptr, void * h_ptr, size_t N) {memcpy(d_ptr, h_ptr, N);}

int PM::dev_push_async(void * d_ptr, void * h_ptr, size_t N, void * q) {dev_push(d_ptr, h_ptr, N); return 0;}

void PM::dev_pull(void * d_ptr, void * h_ptr, size_t N) {memcpy(h_ptr, d_ptr, N);}

void PM::dev_pull_async(void * d_ptr, void * h_ptr, size_t N, void * q) {dev_pull(h_ptr, d_ptr, N);}

void PM::dev_copy(void * dest, void * src, size_t N) {memcpy(dest, src, N);}

void PM::dev_check_pointer(int rnk, const char * name, void * ptr)
{
if(ptr != nullptr) printf("(%i) ptr %s is hostPointer\n",rnk,name);
}

void PM::dev_barrier() {};

void PM::dev_stream_create(void * q) {};

void PM::dev_stream_destroy(void * q) {};

void PM::dev_stream_wait(void * q) {};

#endif
15 changes: 13 additions & 2 deletions gpu/src/pm_host.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,30 @@ namespace PM_NS {
int dev_get_device();

void* dev_malloc(size_t);
void* dev_malloc_async(size_t, size_t);
void* dev_malloc_async(size_t, void *);
void* dev_malloc_host(size_t);

void dev_free(void*);
void dev_free_async(void*, size_t);
void dev_free_async(void*, void *);
void dev_free_host(void*);

void dev_push(void*, void*, size_t);
void dev_pull(void*, void*, size_t);
void dev_copy(void*, void*, size_t);

void dev_barrier();

int dev_push_async(void *, void *, size_t, void *);
void dev_pull_async(void *, void *, size_t, void *);

void dev_check_pointer(int, const char *, void *);

void dev_stream_create(void *);
void dev_stream_destroy(void *);
void dev_stream_wait(void *);

private:
void uuid_print(size_t);
};

}
Expand Down

0 comments on commit f2e84e1

Please sign in to comment.