A cache simulator in Elm
Go to file
2019-06-01 14:30:15 -07:00
src Add some other minor visual fixes 2019-05-31 23:58:27 -07:00
static/scss Add some visual changes to improve usability 2019-05-31 23:54:11 -07:00
elm.json Allow accessing several numbers. 2019-05-29 23:48:02 -07:00
index.html Use relative links. 2019-05-29 19:11:04 -07:00
README.md Add README 2019-06-01 14:30:15 -07:00

CacheSim

CacheSim is an Elm-based website to simulate various cache hierarchy configurations. It supports fully associative, direct mapped, and n-way set associative caches.

Building and Hosting

CacheSim is entirely a front-end project. As long as the HTML, CSS, and generated JavaScript are hosted somewhere, it will work.

CacheSim is built using Elm and Sass. As such, you will need the compilers for the two languages. On Arch Linux, this means sassc for Sass, and elm-platform-bin (from AUR). On other platforms, you can use npm:

npm install -g elm sass

Now, to build the project, you can use the following commands:

mkdir -p static/js
mkdir -p static/css
sassc static/scss/style.scss static/css/style.css
elm make src/Main.elm --output=static/js/elm.js --optimize

Replace sassc with sass in the third command if you installed Sass from npm.

Now, the index.html file and everything in the static folder can be safely copied into any directory exposed by a web server. I use my university public_html folder. Below are the SFTP commands I use to upload a fresh copy of the project:

put index.html public_html/ECE472/index.html
put -r static public_html/ECE472/static