Closed marnovandermaas closed 5 years ago
I have made some improvements on run time. I added enclave identifier checks into TLB and also I changed the interleave interval from 1 to 5000, which allows instructions to be executed in succession instead of yielding to other processors every time. Up to kvminithart now takes 6 minutes, which I find acceptable for now. I will keep on looking for performance improvements next week.
Also, it takes about 3 minutes on my machine if I don't add the cache arguments.
Because this version of Spike forces loads and stores to always go through the slow path, memory-heavy programs are running very slowly. For example, xv6 clears memory before starting up and this takes way too long of a time.
I think changing the TLB to include enclave identifiers should help solve this issue, but it will complicate the management shim code.