Skip to content

Commit

Permalink
sync changes:
Browse files Browse the repository at this point in the history
- M  site/index.html

- M  site/systems-research/hints-for-computer-system-design.html

- M  systems-research/hints-for-computer-system-design.md
  • Loading branch information
elimelt committed Jan 9, 2025
1 parent 9ca2114 commit 0b2949c
Show file tree
Hide file tree
Showing 3 changed files with 52 additions and 5 deletions.
8 changes: 4 additions & 4 deletions site/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -202,13 +202,13 @@ <h1>My Notes</h1>
<h2>Recent Notes</h2>
<ul class='recent-posts'>
<li>
<a href="/natural-language-processing/reading/information-retrieval.html">Information Retrieval</a>
<span class="date">2025-01-07</span>
<a href="/systems-research/hints-for-computer-system-design.html">Hints For Computer System Design</a>
<span class="date">2025-01-08</span>

</li>
<li>
<a href="/systems-research/hints-for-computer-system-design.html">Hints For Computer System Design</a>
<span class="date">2025-01-06</span>
<a href="/natural-language-processing/reading/information-retrieval.html">Information Retrieval</a>
<span class="date">2025-01-07</span>

</li>
<li>
Expand Down
26 changes: 25 additions & 1 deletion site/systems-research/hints-for-computer-system-design.html
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@
</div>
<h1>Hints For Computer System Design</h1>
<div class="meta">
<span>Last modified: 2025-01-06</span>
<span>Last modified: 2025-01-08</span>

</div>
<div class="content">
Expand All @@ -197,8 +197,32 @@ <h4 id="caching">Caching</h4>
<p>Caches should ideally have adaptive sizes.</p>
<p>A classic example is the caching in hardware that uses $[Fetch, \text{address}, \text{content of address}]$ tuples. Similarly, virtual memory uses $[Page, \text{address}, \text{content of address}]$ tuples.</p>
<p>However, more complicated applications of caching exist. In real-time systems, you're often trying to cache the state of a system given small changes corresponding to events. The key here is to try and invalidate as few entries as possible in response to events.</p>
<h3 id="lecture-review-notes">Lecture Review Notes</h3>
<h4 id="why-is-system-design-hard">Why is system design hard?</h4>
<ul>
<li>external interface isn't well defined <ul>
<li>requirements aren't clear</li>
<li>Things are often not well-designed</li>
</ul>
</li>
<li>The measure of success is not very clear<ul>
<li>Many different ways to interact with a system</li>
<li>Many systems, even in production, have bugs</li>
</ul>
</li>
</ul>
<h4 id="throw-one-away">Throw one away</h4>
<ul>
<li>Always be prepared to discard your prototype</li>
<li>Throw ideas at the wall and go with what sticks</li>
</ul>
<h3 id="open-questions">Open Questions</h3>
<h2 id="-">-</h2>
<h3 id="further-reading">Further Reading</h3>
<ul>
<li>MicroLog</li>
<li>https://github.com/DPDK/dpdk</li>
</ul>
</div>

</main>
Expand Down
23 changes: 23 additions & 0 deletions systems-research/hints-for-computer-system-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,30 @@ A classic example is the caching in hardware that uses $\[Fetch, \text{address},

However, more complicated applications of caching exist. In real-time systems, you're often trying to cache the state of a system given small changes corresponding to events. The key here is to try and invalidate as few entries as possible in response to events.


### Lecture Review Notes

#### Why is system design hard?

- external interface isn't well defined
- requirements aren't clear
- Things are often not well-designed
- The measure of success is not very clear
- Many different ways to interact with a system
- Many systems, even in production, have bugs

#### Throw one away

- Always be prepared to discard your prototype
- Throw ideas at the wall and go with what sticks


### Open Questions

-
-

### Further Reading

- MicroLog
- https://github.com/DPDK/dpdk

0 comments on commit 0b2949c

Please sign in to comment.