phi-h-nguyen / 14513-malloc-lab Goto Github PK
View Code? Open in Web Editor NEWThis project forked from yahuiliang/14513-malloc-lab
This project forked from yahuiliang/14513-malloc-lab
############################# # CS:APP Malloc Lab # Handout files for students ############################# *********** Main Files: *********** mdriver, mdriver-emulate Once you've run make, run ./mdriver to test your solution. Run ./mdriver-emulate to make sure your solution can handle 64-bit allocations traces/ Directory that contains the trace files that the driver uses to test your solution. Files with names of the form XXX-short.rep contain very short traces that you can use for debugging. ********************************** Other support files for the driver ********************************** config.h Configures the malloc lab driver clock.{c,h} Low-level timing functions fcyc.{c,h} Function-level timing functions memlib.{c,h} Models the heap and sbrk function stree.{c,h} Data structure used by the driver to check for overlapping allocations MLabInst.so Code that combines with LLVM compiler infrastructure to enable sparse memory emulation macro-check.pl Code to check for disallowed macro definitions driver.pl Runs both mdriver and mdriver-emulate and generates the autolab result. (Not included with checkpoint) calibrate.pl Code to generate benchmark throughput throughputs.txt Benchmark throughputs, indexed by CPU type *********************** Malloc packages *********************** mm.c The core implementation of memory management mm-naive.c Fast but extremely memory-inefficient package ******************************* Building and running the driver ******************************* To build the driver, type "make" to the shell. To run the driver on a tiny test trace: unix> ./mdriver -V -f traces/malloc.rep To get a list of the driver flags: unix> ./mdriver -h The -V option prints out helpful tracing information You can use mdriver-dbg to test your code with the DEBUG preprocessor flag set to 1. This enables the dbg_* macros such as dbg_printf, which you can use to print debugging output. It also uses the optimization level -Og, which helps GDB display more meaningful debug information. unix> ./mdriver-dbg You can use mdriver-emulate to test the correctness of your code in handling 64-bit addresses: unix> ./mdriver-emulate You should see the exact same utilization numbers as you did with the regular driver. No timing is done, and so the time and throughput numbers show up as zeros.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.