104 Commits

Author SHA1 Message Date
ea3a089ff9 Updated all dependencies due to security vulnerability on rustix.
While we didn't use `rustix` directly, it was an indirect dependency of `clap` (`clap` -> `clap_builder` -> `anstream` -> `is-terminal` -> `rustix`).
Now it is no longer an indirect dependency, as `anstream` no longer depends on `is-terminal`.
2023-10-31 17:12:29 +00:00
9bb89a9b94 Updated cargo dependencies due to https://github.com/rust-lang/rust/issues/113152. 2023-07-21 19:00:33 +01:00
9706a675e9 Merge branch 'dev' 2023-07-12 13:27:58 +01:00
9378db353f Changed default values on run.sh and run-tracer.sh for a better example. 2023-07-12 13:27:27 +01:00
aa006ca178 Added README to project. 2023-07-12 12:09:42 +01:00
684c0c9f5c Improved how random-rw handles random page generation.
Added more realistic values for `{simple, random}-rw`.
2023-07-12 11:20:14 +01:00
9bbf7dafe6 Added time remaining to simulation. 2023-07-12 09:39:47 +01:00
e51957053f Fixed PageTable::pages_by_mem cache being updated wrong. 2023-07-12 09:39:27 +01:00
19440f6b92 Improved performance for PageTable::cold_pages. 2023-07-12 08:14:46 +01:00
ce38df9215 Renamed parse-lackey to parse-valgrind.
Tracer script now builds the valgrind parser.
2023-07-06 09:52:42 +01:00
b1621041af Added script to generate traces of any program. 2023-07-06 09:48:36 +01:00
9beed7847f Added gapbs suite as a submodule. 2023-07-06 09:47:49 +01:00
393d29fa72 Replaced PageTable::coldest_pages with cold_pages.
This avoid the issue of having to sort by temperature.
2023-07-06 09:04:44 +01:00
603ab8a658 Removed {READS, WRITES}_PER_PASS since the page will be in cache either way. 2023-07-06 08:28:35 +01:00
97aa80bbef Updated examples' run.sh to use new valgrind. 2023-07-06 08:26:37 +01:00
542591ab81 Updated simple-rw example to have more control over certain variables. 2023-07-06 08:26:03 +01:00
2d8d342522 Updated random-rw example to not allocate vectors of pointers. 2023-07-06 08:25:31 +01:00
d89812e621 Removed single-page-rw example. 2023-07-06 08:23:58 +01:00
403faa5a11 Removed debugging macro from pin parsing. 2023-07-06 06:13:04 +01:00
1f453e8ac9 Added submodule for custom valgrind build. 2023-07-06 06:05:17 +01:00
e8039f0177 Removed logging from run.sh. 2023-06-15 15:42:22 +01:00
19e9d3d2ea Fixed the scale being too big for graph page-temperature-avg. 2023-06-15 15:37:24 +01:00
4c95ccc26a Introduced --line-width argument for some graphs.
Fixed missing caption and wrong color for graph `page-temperature-avg`.
2023-06-15 15:33:33 +01:00
a8a3229527 Added page-temperature-avg graph. 2023-06-15 14:58:51 +01:00
e3f78794c2 Added example single-page-rw to generate traces. 2023-06-15 14:58:38 +01:00
b821d234c0 Improved time normalization. 2023-06-15 13:29:16 +01:00
4a15c62743 migrations-hist{-multiple} are now log-log graphs. 2023-06-15 12:40:51 +01:00
982817d73a Added memory-occupancy graph. 2023-06-15 12:37:58 +01:00
39e30d0b4a Added example random-rw to generate traces. 2023-06-15 11:10:11 +01:00
2f621c7a1c Added example simple-rw to generate traces. 2023-06-14 14:52:11 +01:00
d7e521e31d Fixed ram-capacity not creating the directories it needed as well as executing an unexpected program. 2023-06-14 14:51:15 +01:00
bd68240cd2 Added parse-lackey utility crate to parse the output of valgrind --tool=lackey. 2023-06-14 14:46:03 +01:00
05de904d92 Reduced size of allocation points in page-migrations graph. 2023-06-14 14:39:36 +01:00
9cc659d7ea Replaced page-temperature-density graph with page-temperature. 2023-06-14 14:37:54 +01:00
4a60eecb5d Updated .gitignore to be more generic. 2023-06-14 13:42:33 +01:00
0db8fc959e Added ftmemsim::PinTraceWriter. 2023-06-14 13:42:02 +01:00
fda4748abf Fixed temperature-density graph missing most accesses. 2023-06-14 13:41:12 +01:00
f2ab2023d2 Fixed page-location not drawing anything when only 1 memory was used. 2023-06-14 08:03:37 +01:00
8e61c2d4df page-temperature now draws from worst to best location, to ensure colors are more visible. 2023-06-14 07:17:22 +01:00
4ae37e3066 Fixed page-temperature not having consistent coloring. 2023-06-14 07:10:22 +01:00
60d71c073b Replaced page-temperature graph with page-location. 2023-06-14 07:06:57 +01:00
39b5c9d068 Fixed record byte size being wrong. 2023-06-14 07:02:11 +01:00
877c219e6f Introduced point scaling to ensure points don't overlap as easily. 2023-06-14 06:35:49 +01:00
51a823e0cd Removed calculations on the hemem debug output.
It would slow down large programs far too much.
2023-06-14 05:51:55 +01:00
5667ae4606 Fixed cargo workspace resolver being the wrong version. 2023-06-13 23:31:26 +01:00
e6cf415505 Data now contains the time span to avoid iterating over all data. 2023-06-06 04:08:22 +01:00
d6894dc35a Refactored page pointer index calculation. 2023-06-06 03:50:45 +01:00
e79000c301 Separated other graphs into their own functions. 2023-06-06 03:37:47 +01:00
6ed293c165 Separated page_migrations graph into it's own function. 2023-06-06 03:31:22 +01:00
a27a8d394a Extracted graph arguments into their own structs. 2023-06-06 03:26:46 +01:00