6 ms·
Doing this lab was one of my more memorable experiences at CMU. It was tons of fun, but barely getting any sleep for 3 days because I put the assignment off was
by mafuyu 9y ago
Doing this lab was one of my more memorable experiences at CMU. It was tons of fun, but barely getting any sleep for 3 days because I put the assignment off was less fun.
I put in some horrible last minute hacks to optimize for the autograder and raise my grade, like doing a pseudo-bubble sort. Every time I coalesced two adjacent free blocks, I would compare the adjacent nodes in the linked list and swap them if they weren't sorted. That raised my allocation efficiency a tiny bit for certain test vectors- just high enough to bump my grade up a couple points. :)
- diiaann 9y agoI also put it off to the last minute. I had a pernicious bug in my coalescing code that was hard to debug. After one failed rewrite and only a few hours left, I resorted to taking the book's array version and optimizing it for utilization. My throughput was shit but I was able squeeze past their minimum score and squeak a C. My semester, the grading was pretty tough, only 6 or so people over 90. In other semesters, I know at least that many get 100.
- jcdavis 9y agoIIRC when I took 213 (Fall '07) a some folks somehow figured out bit of what the autograder branchmark was, and so added tricks like odd if statements to allocate extra memory for very specific sizes (which therefore, when freed and coalesced, allowed enough space for some following large allocation). Seems like their new benchmarks might limit that sort of behavior
- bearforcenine 9y agoWe did this lab at the University of Utah because the Systems class is taught out of the same textbook. I also loved this lab. If I remember correctly we had a leaderboard, and it was fun competing with everyone else. Most of the labs for this textbook were great: writing a shell, implementing common math functions by bit twiddling, buffer overflows, disassembling the bomb with the debugger, etc. It was a great class. Definitely not easy, but a lot of fun.
- flafla2 9y agoI just finished taking 213 last week. It's one of those courses that is quite difficult, but still rewarding. Even though it was quite hard to score an A on some assignments (like this one), I still felt that the grading scheme was "fair" and reflective of my actual understanding relative to other students. I ended up getting a B on malloc, and the morning after I finished I woke up with a clever idea for an optimization that would significantly decrease utilization and probably get me the A. If only I had started a day earlier!
- murph-almighty 9y agoI did utterly poorly at this lab, but I believe I made up for it by nailing proxy.