Add multilingual language and systems learning tracks
This commit is contained in:
1 parent
07338189fc
commit
d8d1c40118
844 files changed
+6061
No files matched your search
@@ -0,0 +1,9 @@
|
||||
# CPU/GPU Core & Memory Mapping · 4
|
||||
|
||||
[Agila University track](https://edu.agilaos.com/track.php?track=30&lang=en)
|
||||
|
||||
About 15 minutes per lesson. Predict, run, change, explain, then complete the check in University.
|
||||
|
||||
- [Lesson 1: Measure repeated runs with a real clock](lesson-1/lesson.html)
|
||||
- [Lesson 2: Select a backend from evidence](lesson-2/lesson.html)
|
||||
- [Lesson 3: Publish a reproducible placement study](lesson-3/lesson.html)
|
||||
@@ -0,0 +1,14 @@
|
||||
<!doctype html><html lang="en"><meta charset="utf-8"><title>Measure repeated runs with a real clock</title><h1>Measure repeated runs with a real clock</h1><p>15-minute session: read for 3 minutes, trace for 3, experiment for 7, and complete the check for 2. Spend longer whenever you need.</p><p>Use a monotonic high-resolution clock. Warm up separately, repeat a fixed workload, verify a checksum, and report median plus spread. Record units, data size, environment, and compiler/runtime version. The following measures Python sum on this CPU and includes interpreter/runtime costs; it is not a GPU or raw memory-bandwidth benchmark.</p><p><strong>Practice and evidence:</strong> Predict the example or draw its state transitions. Change one assumption, test the boundary, and record the actual result. Explain what this small model does not establish about a production system.</p><pre><code class="language-python">import time,statistics,platform
|
||||
data=list(range(100000))
|
||||
expected=4999950000
|
||||
assert sum(data)==expected
|
||||
samples=[]
|
||||
for _ in range(7):
|
||||
start=time.perf_counter_ns()
|
||||
result=sum(data)
|
||||
samples.append((time.perf_counter_ns()-start)/1e6)
|
||||
assert result==expected
|
||||
print("CPU Python",platform.python_version(),platform.machine())
|
||||
print("median_ms",round(statistics.median(samples),4))
|
||||
print("min_ms",round(min(samples),4),"max_ms",round(max(samples),4))
|
||||
</code></pre><h3>Practice and evidence</h3><p>Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.</p><p><a href="https://git.agilaos.com/matt/open_agx">Language reference: git.agilaos.com</a></p><p><a href="https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/">Language reference: docs.nvidia.com</a></p></html>
|
||||
@@ -0,0 +1,13 @@
|
||||
import time,statistics,platform
|
||||
data=list(range(100000))
|
||||
expected=4999950000
|
||||
assert sum(data)==expected
|
||||
samples=[]
|
||||
for _ in range(7):
|
||||
start=time.perf_counter_ns()
|
||||
result=sum(data)
|
||||
samples.append((time.perf_counter_ns()-start)/1e6)
|
||||
assert result==expected
|
||||
print("CPU Python",platform.python_version(),platform.machine())
|
||||
print("median_ms",round(statistics.median(samples),4))
|
||||
print("min_ms",round(min(samples),4),"max_ms",round(max(samples),4))
|
||||
@@ -0,0 +1,4 @@
|
||||
<!doctype html><html lang="en"><meta charset="utf-8"><title>Select a backend from evidence</title><h1>Select a backend from evidence</h1><p>15-minute session: read for 3 minutes, trace for 3, experiment for 7, and complete the check for 2. Spend longer whenever you need.</p><p>Filter candidates by capability, correctness, memory capacity, and constraints before comparing speed. Match representative workload sizes and include transfers. Preserve a fallback when a device is absent. The table below contains invented demonstration results, explicitly marked as such; replace them with real measurements only after validation. Do not fit a policy to one lucky run.</p><p><strong>Practice and evidence:</strong> Predict the example or draw its state transitions. Change one assumption, test the boundary, and record the actual result. Explain what this small model does not establish about a production system.</p><pre><code class="language-python">candidates=[{"name":"CPU demo","correct":True,"ms":8},{"name":"GPU demo","correct":True,"ms":11},{"name":"Broken demo","correct":False,"ms":1}]
|
||||
valid=[c for c in candidates if c["correct"]]
|
||||
print("Hypothetical winner:",min(valid,key=lambda c:c["ms"])["name"])
|
||||
</code></pre><p><strong>Expected result:</strong> <code>Hypothetical winner: CPU demo</code></p><h3>Practice and evidence</h3><p>Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.</p><p><a href="https://git.agilaos.com/matt/open_agx">Language reference: git.agilaos.com</a></p><p><a href="https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/">Language reference: docs.nvidia.com</a></p></html>
|
||||
@@ -0,0 +1,3 @@
|
||||
candidates=[{"name":"CPU demo","correct":True,"ms":8},{"name":"GPU demo","correct":True,"ms":11},{"name":"Broken demo","correct":False,"ms":1}]
|
||||
valid=[c for c in candidates if c["correct"]]
|
||||
print("Hypothetical winner:",min(valid,key=lambda c:c["ms"])["name"])
|
||||
@@ -0,0 +1 @@
|
||||
<!doctype html><html lang="en"><meta charset="utf-8"><title>Publish a reproducible placement study</title><h1>Publish a reproducible placement study</h1><p>15-minute session: read for 3 minutes, trace for 3, experiment for 7, and complete the check for 2. Spend longer whenever you need.</p><p>Build a report for at least two workload sizes. Include source revision, device topology, memory type and placement, affinity, input seed, correctness tolerance, repetitions, raw samples, and end-to-end cost. Distinguish measured results, simulations, and untested candidates. Explain why the winning policy may change on another machine. Submit code and raw evidence on Forge, never confidential machine credentials.</p><p><strong>Practice and evidence:</strong> Predict the example or draw its state transitions. Change one assumption, test the boundary, and record the actual result. Explain what this small model does not establish about a production system.</p><h3>Practice and evidence</h3><p>Keep three notes: your prediction, the actual result, and why they match or differ. The completion check grades understanding; the practice task builds skill.</p><p><a href="https://git.agilaos.com/matt/open_agx">Language reference: git.agilaos.com</a></p><p><a href="https://docs.nvidia.com/cuda/cuda-c-best-practices-guide/">Language reference: docs.nvidia.com</a></p></html>
|
||||
Reference in new issue
Block a user