// Project: Salis // Author: Paul Oliver // Email: contact@pauloliver.dev /* * Simple benchmark test helps measure simulation speed by stepping the * simulator N times and printing results. */ #if ACTION != ACT_BENCH #error Using bench UI with unsupported action #endif int main() { printf("Salis Benchmark Test\n\n"); salis_init("", SEED); salis_step(BENCH_STEPS); printf("seed => %#lx\n", SEED); printf("g_steps => %#lx\n", g_steps); printf("g_syncs => %#lx\n", g_syncs); for (int i = 0; i < CORE_COUNT; ++i) { putchar('\n'); printf("core %d mall => %#lx\n", i, g_cores[i].mall); printf("core %d mut0 => %#lx\n", i, g_cores[i].muta[0]); printf("core %d mut1 => %#lx\n", i, g_cores[i].muta[1]); printf("core %d mut2 => %#lx\n", i, g_cores[i].muta[2]); printf("core %d mut3 => %#lx\n", i, g_cores[i].muta[3]); printf("core %d pnum => %#lx\n", i, g_cores[i].pnum); printf("core %d pcap => %#lx\n", i, g_cores[i].pcap); printf("core %d pfst => %#lx\n", i, g_cores[i].pfst); printf("core %d plst => %#lx\n", i, g_cores[i].plst); printf("core %d pcur => %#lx\n", i, g_cores[i].pcur); printf("core %d psli => %#lx\n", i, g_cores[i].psli); printf("core %d ncyc => %#lx\n", i, g_cores[i].ncyc); printf("core %d ivpt => %#lx\n", i, g_cores[i].ivpt); putchar('\n'); for (int j = 0; j < 32; ++j) { printf("%02x ", g_cores[i].mvec[j]); } putchar('\n'); } salis_free(); }