summaryrefslogtreecommitdiff
path: root/VA
diff options
context:
space:
mode:
authorDaniel Friesel <daniel.friesel@uos.de>2023-05-25 12:47:50 +0200
committerDaniel Friesel <daniel.friesel@uos.de>2023-05-25 12:47:50 +0200
commitd41ec55b9847d16f32ca47155f2cd7e4ea72386a (patch)
treef0c6517edddfcf1934d5a3b6ebbe19e35a8ed09b /VA
parent8577db6f087458809822591e5c1ce246770243a9 (diff)
re-add (and, in some cases, fix) -x support
Diffstat (limited to 'VA')
-rw-r--r--VA/host/app.c2
-rw-r--r--VA/support/params.h6
2 files changed, 6 insertions, 2 deletions
diff --git a/VA/host/app.c b/VA/host/app.c
index 8fe9e1c..bfa6806 100644
--- a/VA/host/app.c
+++ b/VA/host/app.c
@@ -71,7 +71,7 @@ int main(int argc, char **argv) {
printf("Allocated %d DPU(s)\n", nr_of_dpus);
unsigned int i = 0;
- const unsigned int input_size = p.input_size;
+ const unsigned int input_size = p.exp == 0 ? p.input_size * nr_of_dpus : p.input_size;
const unsigned int input_size_8bytes =
((input_size * sizeof(T)) % 8) != 0 ? roundup(input_size, 8) : input_size; // Input size per DPU (max.), 8-byte aligned
const unsigned int input_size_dpu = divceil(input_size, nr_of_dpus); // Input size per DPU (max.)
diff --git a/VA/support/params.h b/VA/support/params.h
index e797393..8bd71a6 100644
--- a/VA/support/params.h
+++ b/VA/support/params.h
@@ -7,6 +7,7 @@ typedef struct Params {
unsigned int input_size;
int n_warmup;
int n_reps;
+ int exp;
}Params;
static void usage() {
@@ -17,6 +18,7 @@ static void usage() {
"\n -h help"
"\n -w <W> # of untimed warmup iterations (default=1)"
"\n -e <E> # of timed repetition iterations (default=3)"
+ "\n -x <X> Weak (0) or strong (1) scaling (default=0)"
"\n"
"\nBenchmark-specific options:"
"\n -i <I> input size (default=2621440 elements)"
@@ -28,9 +30,10 @@ struct Params input_params(int argc, char **argv) {
p.input_size = 2621440;
p.n_warmup = 1;
p.n_reps = 3;
+ p.exp = 0;
int opt;
- while((opt = getopt(argc, argv, "hi:w:e:")) >= 0) {
+ while((opt = getopt(argc, argv, "hi:w:e:x:")) >= 0) {
switch(opt) {
case 'h':
usage();
@@ -39,6 +42,7 @@ struct Params input_params(int argc, char **argv) {
case 'i': p.input_size = atoi(optarg); break;
case 'w': p.n_warmup = atoi(optarg); break;
case 'e': p.n_reps = atoi(optarg); break;
+ case 'x': p.exp = atoi(optarg); break;
default:
fprintf(stderr, "\nUnrecognized option!\n");
usage();