removed logging from SAPFOR and SERVER, updated NPB and fdvm

This commit is contained in:
ALEXks
2025-01-28 10:09:10 +03:00
parent 8879eb2fbf
commit a14bc20cf4
17 changed files with 51 additions and 40 deletions

View File

@@ -14172,7 +14172,7 @@ SgStatement *Create_C_Adapter_Function(SgSymbol *sadapter)
stmt = new SgCExpStmt(SgAssignOp(*new SgVarRefExp(*s_overallBlocks), *new SgArrayRefExp(*s_blocksS, *new SgValueExp(0))));
st_end->insertStmtBefore(*stmt, *st_hedr);
if (currentLoop && currentLoop->irregularAnalysisIsOn())
if (currentLoop && currentLoop->irregularAnalysisIsOn())
stmt = new SgCExpStmt(SgAssignOp(*new SgVarRefExp(*s_restBlocks), *new SgVarRefExp(*s_overallBlocks) * *GetWarpSize(s_loop_ref)));
else
stmt = new SgCExpStmt(SgAssignOp(*new SgVarRefExp(*s_restBlocks), *new SgVarRefExp(*s_overallBlocks)));
@@ -14617,9 +14617,10 @@ SgExpression *sizeOfPrivateArraysInBytes()
if (e_size && e_size->isInteger()) // calculating length if it is possible
{
int i_size = e_size->valueInteger();
e_size = new SgValueExp(i_size);
e_size = new SgValueExp(i_size);
//TODO: need to add option
/*if (i_size > 2048)
return e_size;
return e_size;
else */
return NULL;
}

View File

@@ -4992,7 +4992,7 @@ SgExpression* GetWarpSize(SgSymbol* s_loop_ref)
{// generating function call:
// int dvmh_get_warp_size(DvmType *InDvmhLoop)
SgFunctionCallExp* fe = new SgFunctionCallExp(*new SgSymbol(FUNCTION_NAME, "dvmh_get_warp_size", SgTypeInt(), s_loop_ref->scope()));
SgFunctionCallExp* fe = new SgFunctionCallExp(*fdvm[GET_WARP_SIZE]);
fe->addArg(*new SgVarRefExp(s_loop_ref));
return(fe);

View File

@@ -338,3 +338,4 @@ name_dvm[GET_DEVICE_PROP] = "loop_cuda_get_device_prop";
name_dvm[GET_MAX_BLOCKS] = "loop_cuda_get_max_blocks";
name_dvm[GET_PRIVATE_ARR] = "loop_cuda_get_private_array";
name_dvm[DISPOSE_PRIVATE_AR]="loop_cuda_dispose_private_array";
name_dvm[GET_WARP_SIZE] = "dvmh_get_warp_size";

View File

@@ -336,5 +336,6 @@ enum {
GET_MAX_BLOCKS,
GET_PRIVATE_ARR,
DISPOSE_PRIVATE_AR,
GET_WARP_SIZE,
MAX_LIBFUN_NUM
};

View File

@@ -784,7 +784,8 @@ int kind;
else return (var_sym_entry);
}
case FUNCTION_NAME:
var_sym_entry->variant = FUNCTION_NAME;
if (type != TYNULL)
var_sym_entry->type = type;
return (var_sym_entry);
case ROUTINE_NAME:
var_sym_entry->variant = FUNCTION_NAME;

View File

@@ -43,22 +43,22 @@ ${PROGRAM}: config
fi
MPI_VER: $(OBJS) $(OBJS_MPI)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_MPI)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_MPI)
SINGLE_VER: $(OBJS) $(OBJS_SINGLE)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_SINGLE)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_SINGLE)
BLOCK_VER: $(OBJS) $(OBJS_BLOCK)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK)
BLOCK_VER1: $(OBJS) $(OBJS_BLOCK1)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK1)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK1)
BLOCK_VER2: $(OBJS) $(OBJS_BLOCK2)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK2)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_BLOCK2)
%.o: %.fdv npbparams.h header3d.h
${F77} ${FFLAGS} -c -o $@ $<
${F77} f ${FFLAGS} -c -o $@ $<
clean:
rm -f npbparams.h

View File

@@ -10,10 +10,12 @@ SOURCES = cg.fdv
OBJS = ${SOURCES:.fdv=.o}
${PROGRAM}: config $(OBJS)
${FLINK} -o ${PROGRAM} ${OBJS}
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS}
%.o: %.fdv npbparams.h globals.h
${F77} ${FFLAGS} -dvmIrregAnalysis -c -o $@ $<
cg.o: cg.fdv npbparams.h globals.h
${F77} fdv ${FFLAGS} -dvmIrregAnalysis cg.fdv
cp cg.DVMH_cuda.cu_opt cg.DVMH_cuda.cu
${F77} fc cg.fdv -c -o cg.o
clean:
rm -f npbparams.h

View File

@@ -10,10 +10,10 @@ SOURCES = ep.fdv
OBJS = ${SOURCES:.fdv=.o}
${PROGRAM}: config $(OBJS)
${FLINK} -o ${PROGRAM} ${OBJS}
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS}
%.o: %.fdv npbparams.h
${F77} ${FFLAGS} -c -o $@ $<
${F77} f ${FFLAGS} -c -o $@ $<
clean:
rm -f npbparams.h

View File

@@ -10,10 +10,10 @@ SOURCES = ft.fdv
OBJS = ${SOURCES:.fdv=.o}
${PROGRAM}: config $(OBJS)
${FLINK} -o ${PROGRAM} ${OBJS}
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS}
%.o: %.fdv npbparams.h global.h
${F77} ${FFLAGS} -f90 -c -o $@ $<
${F77} f ${FFLAGS} -f90 -c -o $@ $<
clean:
rm -f npbparams.h

View File

@@ -1796,7 +1796,7 @@ subroutine print_results(name, class, n1, n2, n3, niter, t, mops, optype, verifi
parameter(d2m46=0.5d0**46)
save i246m1
data i246m1/X'00003FFFFFFFFFFF'/
data i246m1/Z'00003FFFFFFFFFFF'/
Lx = X
La = A
@@ -1819,7 +1819,7 @@ subroutine vranlc (N, X, A, Y)
parameter(d2m46=0.5d0**46)
save i246m1
data i246m1/X'00003FFFFFFFFFFF'/
data i246m1/Z'00003FFFFFFFFFFF'/
Lx = X
La = A

View File

@@ -16,10 +16,10 @@ ${PROGRAM}: config
${MAKE} exec
exec: $(OBJS)
${FLINK} ${FLINKFLAGS} -o ${PROGRAM} ${OBJS} ${F_LIB}
${FLINK} flink -shared-dvm ${FLINKFLAGS} -o ${PROGRAM} ${OBJS} ${F_LIB}
.f.o :
${F77} ${FFLAGS} -c -o $@ $<
${F77} f ${FFLAGS} -c -o $@ $<
lu.o: lu.f applu.incl npbparams.h
erhs.o: erhs.f applu.incl npbparams.h

View File

@@ -20,10 +20,10 @@ SOURCES = mg.fdv \
OBJS = ${SOURCES:.fdv=.o}
${PROGRAM}: config $(OBJS)
${FLINK} -o ${PROGRAM} ${OBJS}
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS}
%.o: %.fdv npbparams.h globals.h dvmvars.h
${F77} ${FFLAGS} -c -o $@ $<
${F77} f ${FFLAGS} -c -o $@ $<
clean:
rm -f npbparams.h

View File

@@ -30,13 +30,13 @@ ${PROGRAM}: config
fi
MPI_VER: $(OBJS) $(OBJS_MPI)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_MPI)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_MPI)
SINGLE_VER: $(OBJS) $(OBJS_SINGLE)
${FLINK} -o ${PROGRAM} ${OBJS} $(OBJS_SINGLE)
${FLINK} flink -shared-dvm -o ${PROGRAM} ${OBJS} $(OBJS_SINGLE)
%.o: %.for npbparams.h header.h
${F77} ${FFLAGS} -c -o $@ $<
${F77} f ${FFLAGS} -c -o $@ $<
clean:
rm -f npbparams.h

View File

@@ -1,5 +1,5 @@
F77 = dvm f -shared-dvm
FLINK = dvm flink -shared-dvm
F77 = dvm
FLINK = dvm
FFLAGS = ${FOPT}

View File

@@ -84,6 +84,10 @@ void Sleep(int millisec) { usleep(millisec * 2000); }
#endif
#define __print(prefix, format, ...) do { } while (0)
#define __print_log(file, format, ...) do { } while (0)
/*
#define __print(prefix, format, ...) do {\
printf((string("%s: ") + format + string("\n")).c_str(), prefix, ##__VA_ARGS__); \
fflush(NULL); \
@@ -98,10 +102,10 @@ void Sleep(int millisec) { usleep(millisec * 2000); }
fflush(file); \
} \
} while (0)
*/
#define SERV "[SERVER]"
static const char* VERSION = "9";
static const char* VERSION = "10";
static FILE* logFile = NULL;
extern void __bst_create(const char* name);
@@ -865,7 +869,7 @@ int main(int argc, char** argv)
}
__print(SERV, "Invalid SAPFOR socket, try to restart");
__print_log(logFile, "invalid SAPFOR socket, try to restart");
Sleep(500);
Sleep(100);
}
__bst_unlock();

View File

@@ -1,3 +1,3 @@
#pragma once
#define VERSION_SPF "2382"
#define VERSION_SPF "2383"

View File

@@ -54,7 +54,10 @@ static FILE* logFile = NULL;
#define FILE_LOG "Components/Sapfor_log.txt"
#endif
#define __print(prefix, format, ...) do {\
#define __print(prefix, format, ...) do { } while (0)
#define __print_log(file, format, ...) do { } while (0)
/*#define __print(prefix, format, ...) do {\
printf((string("%s: ") + format + string("\n")).c_str(), prefix, ##__VA_ARGS__); \
fflush(NULL); \
} while (0)
@@ -68,7 +71,7 @@ static FILE* logFile = NULL;
fflush(file); \
} \
} while (0)
*/
#define CLIENT "[SAPFOR]"
static int doRecv(SOCKET& soc, string& command)
@@ -302,7 +305,7 @@ static int send(SOCKET& client, const wstring& messageIn)
char buf;
recv(client, &buf, 1, 0);
printf("%s: send start\n", CLIENT);
__print(CLIENT, "send start\n", CLIENT);
auto timeForPass = high_resolution_clock::now();
#ifdef _WIN32
err = send(client, result.c_str(), result.size(), 0);
@@ -311,9 +314,7 @@ static int send(SOCKET& client, const wstring& messageIn)
#endif
const float elapsed = duration_cast<milliseconds>(high_resolution_clock::now() - timeForPass).count() / 1000.;
printf("%s: send end with time %f sec\n", CLIENT, elapsed);
fflush(NULL);
__print(CLIENT, "send end with time %f sec\n", elapsed);
__print(CLIENT, "Send message with size %d", (int)result.size());
if (err != result.size())